Jumat, 18 November 2011

Teknik Cluster

Kegiatan kelompok dan urutannya menentukan kegiatan individu yang diperlukan untuk clustering. Kita sekarang dapat mempelajari bagaimana membangun entitas cluster dari entitas dasar dan hubungannya didefinisikan dalam proses pemodelan ER.Teknik ini mengasumsikan bahwa analisis top-down telah dilaksanakan sebagai persyaratan dari analisis database dan analisis didokumentasikan sehingga area fungsional utama dan subareanya teridentifikasi. Bidang fungsional sering didefinisikan oleh unit organisasi utama dari suatu perusahaan, aktivitas bisnis, atau mungkin oleh aplikasi yang dominan untuk pengolahan informasi. Sebagai contoh ingat Gambar 4.3, yang dapat dianggap memiliki tiga bidang fungsional utama: organisasi perusahaan (dilihat dari sisi manajemen), proyek (dilihat dari sisi kontrak karyawan), dan data karyawan (dilihat dari sisi karyawan). Perhatikan bahwa bidang fungsional bisa tumpang tindih. Gambar 4.3 menggunakan diagram ER yang dihasilkan dari analisa kebutuhan database untuk menunjukkan bagaimana clustering melibatkan serangkaian langkah-langkah bottom-up dengan menggunakan operasi pengelompokan dasar. Daftar berikut menunjukkan langkah-langkah berikut.


1. Tentukan poin pengelompokan dalam wilayah fungsional. Cari entitas dominan dalam wilayah fungsional melalui hubungan alami, hubungan lokal n-er, batasan integritas, abstraksiatau hanya fokus sentral dari hubungan yang sederhana yang banyak. Jika poin pengelompokantersebut tidak ada dalam satu area, pertimbangkan pengelompokan fungsional dari seluruh area.


2. Bentuklah entitas cluster. Gunakan operasi dasar pengelompokan pada entitas dasar dan hubungan mereka ke tingkat yang lebih tinggi untuk membentuk objek, atau badan cluster. Karena entitas bisa jadi berasal dari beberapa cluster berpotensi, kita harus memiliki set prioritas untuk membentuk kelompok kesatuan. Set aturan berikutnya, dalam urutan prioritas, mendefinisikan set yang paling mungkin untuk mempertahankan kejelasan dari model konseptual.
a. Entitas-entitas yang dikelompokkan ke sebuah cluster entitas harus ada dalam area fungsional yang sama, yaitu seluruh cluster entitas harus terjadi dalam batas area fungsional.Sebagai contoh, pada Gambar 4.3, hubungan antara departemen dan karyawan tidak boleh dikelompokkan kedalam cluster, kecuali karyawan tersebut termasuk dalam wilayah fungsional bisnis organisasi Departemen dan Divisi. Dalam contoh lain, hubungan antara karyawan tipe super dan subtipenya yang dikelompokkan dalam cluster dalam data fungsional karyawan daerah.
b. Jika konflik dalam memilih antara dua atau lebih entitas cluster berpotensi tidak dapat diselesaikan (misalnya antara dua pengelompokan batas pada tingkat yang berprioritas sama), biarkan cluster entitas ini tanpa dikelompokkan dalam area fungsional merekaJika wilayah fungsional masih dipenuhi oleh pilihan yang belim terselesaikandefinisikan area fungsional untuk mengelompokkan entitas, clusterentitas, kelompok dan hubungan mereka yang belum terselesaikan.


3. Bentuk cluster entitas yang tingkatnya lebih tinggi. Gunakan operasi pengelompokkan secara rekursif pada gabungan entitas dasar dan cluster entitas untuk membentuk tingkatan baru kluster entitas (obyek dengan tingkat yang lebih tinggi). Selesaikan konflik dengan aturan prioritas yang sama dari Langkah 2. Lanjutkan operasi pengelompokkan hingga semua wakil entitas muat dalam satu halaman tanpa kerumitan. Setelah itu cluster entitas akar terdefinisikan.


4. Validasikan diagram cluster. Periksa konsistensi dari interface (hubungan) antara setiap objek-objek dalam setiap tingkat di diagramnya. Pastikan makna dari setiap tingkad dengan pihak penerima. Hasil dari satu tahap clustering diperlihatkan dalam gambar 4.10, dimana setiap cluster ada di tingkat 2.


RINGKASAN



Modeling data konseptual, menggunakan pendekatan ER atau UML, sangat berguna dalam langkah-langkah awal dari siklus kehidupan database, yang melibatkan analisa kebutuhan dan desain logis. Doa langkah tersebut sering dilaksanakan sekaligus, khususnya saat kebutuhan ditentukan dari wawancara dengan pihak penerima dan dimodelkan dalam bentuk hubungan data ke data dan hubungan proses ke data. langkah pemodelan data konseptual (pendekatan ER) melibatkan pengklasifikasian entitas dan atributnya terlebih dahulu, lalu identifikasi dari hirarki penyamarataan dan abstraksi lainnya, dan akhirnya definisi dari semua hubungan antara entitas. Hubungan bisa berbentuk biner (yang paling umum), terner dan bentuk yang lebih tinggi dari n-er. Modeling data dari kebutuhan individual biasanya melibatkan pembuatan sudut papndang baru untuk setiap kebutuhan pihak penerima. Lalu desainer tersebut harus mengintegrasikan pandangan tersebut menjadi skema global supaya seluruh database tergambarkan menjadi gabungan dari seluruhnya. Ini dapat mambantu untuk menghapus pengulangan yang tidak dibutuhkan, penghapusan tersebut sangat penting khususnya dalam desain logis. Pengulangan yang terkendali dapat dibuat lagi nantinya, dalam tingkat desain fisik, untuk meningkatkan performa database. Pada akhirnya, kluster entitas adalah pengelompokkan entitas dan hubungannya masing-masing menuju obyek abstrak dalam tingkat yang lebih tinggi. Clustering mempromosikan kesederhanaan yand penting untuk komprehensi pengguna yang cepat. Dalam Bab 5, kami membawa skema global yang dihasilkan dari modeling data konseptual dan melihat tahap-tahap integrasi dan merubahnya manjadi Tabel SQL. Format SQL adalah produk akhir dari desain logis yang tidak bergantung pada sistem manajemen database tertentu.

Operasi Pengelompokan


Gambar 4.9 Operasi pengelompokan: (a) dominan, (b) abstrak, (c) pembatas, dan (d) hubungan


Operasi pengelompokan adalah komponen fundamental dari teknik cluster entitas. Mereka menetapkan entitas mana yang meliputi objek level lebih tinggi, cluster entitas. operasi ini heuristis di alam dan terkait (Gambar 4.9):
• Pengelompokan dominan.
• Pengelompokan abstrak.
• Pengelompokan pembatas.
• Pengelompokan hubungan.
Operasi pengelompokan ini dapat diterapkan rekursif atau digunakan di berbagai kombinasi untuk menghasilkan level tertinggi cluster entitas—yaitu, cluster dari smua level abstrak. entitas atau cluster entitas dapat menjadi objek yang menjadi subjek untuk kombinasi di objek lain ke bentuk level yang lebih tinggi. Yaitu, cluster entitas memiliki alat dari entitas dan dapat memiliki hubungan dengan segala objek di level yang sama atau level lebih rendah. Hubungan asli antara entitas adalah pengawetan setelah semua operasi pengelompokan seperti diilustrasikan di Gambar 4.8.

Objek dominan atau entitas biasanya menjadi jelas dari diagram ER atau definisi hubungan. Masing-masing objek dominan dikelompokan dengan semua objek yang tidak dominan dari cluster.Entitas rapuh dapat melampirkan entitas untuk membuat cluster. Objek data multilevel menggunakan berbagai abstrak sebagai generalisasi dan pengumpulan dapan dikelompokan ke cluster entitas. Nama supertype atau pengumpulan entitas.Kendala terkait objek yang memperpanjang model ER ke penggabungan integritas membatasi seperti exclusive-OR dapat dikelompokan pada cluster entitas. Juga, ternary atau gelar tertinggi hubungan dapat berpotensi dikelompokan ke cluster entitas. Cluster mewakili seluruh hubungan.


Konsep Clustering

Orang pasti berfikir pengelompokan sebagai operasi yang menggabungkan entitas dan hubungan mereka ke tingkat konstruksi yang lebih tinggi. Hasil dari poperasi pengelompokan dari entitas sederhana yang disebut cluster entitas. Operasi pengelompokan pada cluster entitas atam kombinasi dari dasar entitas dan cluster entitas menghasilkan clus entitas dengan level yang lebih tinggi. Level tertinggi cluster entitas, mewakili seluruh konsep skema database, itu disebut akar cluster entitas.

Gambar 4.8 konsep cluster entitas: (a) ER model sebelum clustering dan (b) ERmodel setelah clustering


Gambar 4.8(a) mengilustrasikan konsep dari cluster entitas dengan sederhana dimana (dasar) entitas R-sec (Report Section), R-abbr (Report abbreviation), dan penulis dengan sendirinya terikat untuk (didominasi leh) entity report, dan perusahaan entitas, kontraktor, dan proyek yang tidak dominan. (Catatan untuk menghidari detail yang tidak perlu, kami tidak memasukannya di diagram.)
Di gambar 4.8(b) ada kotak hitam di sekitar entity report dan entitas yang mendominasi definisi  entity cluster report. Kotak hitam itu disebut EC box untuk mewakili maksud cluster entitas. Secara umum, nama dari cluster entitas harur tidak sama dengan nama dari intern manapun; namun, saat ada satu entitas yang dominan, nama mereka sama. Nomer EC box di sudut kanan bawah adalah nomer level clustering yang digunakan untuk menjaga jalur dari urutan clustering tersebut. Nomer 2.1 menandakan bahwa entity cluster Report adalah cluster entitas pertama di level 2. Catatan yang di atas adalah untuk level 1.

Level abstrak yang lebih tinggi, cluster entitas, harus mempertahanan hubungan yang sama antara entitas dalam dan entitas luar sebagai kejadian antara entitas yang sama di diagram level rendah. Dengan demikian, entitas yang di dalam cluster entitas harus muncul di luar EC box bersama jalan hubungan langsung mereka
ke yang tepat terkait dengan entitas di luar box, mempertahankan konsistensi antarmuka (hubungan) seperti yang terlihat di Gambar 4.8(b). Secara sederhana, kami sedikit memodifikasi peraturan ini: Bila hubungan tersebut adalah antara entitas external dan entitas internal dominan (sebagaimana entitas cluster dinamakan), nama cluster entitas harus diulang di luar EC box. Seperti gambar 4.8(b), kita dapat memasang kedua nama Report dan ditempatkan di luar Report box, tapi kita harus menahan nama penulis, karena bukan nama entitas cluster.



.

Badan Clustering untuk Model ER



Bagian ini menyajikan konsep pengelompokan entitas, yang mengabstrak skema ER sedemikian rupa sehingga seluruh skema dapat muncul pada selembar kertas atau layar komputer. Ini memiliki konsekuensi yang menyenangkan untuk pengguna akhir dan desainer database dalam hal mengembangkan pengertian dari isi database dan secara resmi mendokumentasikan model konseptual.Sebuah cluster entitas adalah hasil dari sebuah operasi pengelompokan pada koleksi entitas dan hubungan. Pengelompokan ini berguna untuk mendisain database besar. Saat skala dari struktur database atau informasi itu besar dan termasuk didalamnya nomor besar dari interkoneksi antar komponen yang berbeda, kemungkinan sangat sulit untuk mengerti skema dari struktur tersebut dan untuk mengaturnya, khususnya untuk pengguna terakhir dan pengelola. Dalam diagram ER dengan 1000 entitas, struktur keseluruhan mungkin tidak akan sangat jelas, bahan untuk seorang analis database yang terlatih.Clustering sangat penting karenanya, sebab menyediakan metode untuk mengatur konsep skema database menjadi bagian abstrak, dan itu mendukung dalam berbagai pandangan.