Anda di halaman 1dari 8

CLUSTER DATABASE

Clustering
Clustering adalah proses mengelompokkan atau penggolongan objek berdasarkan
informasi yang diperoleh dari data yang menjelaskan hubungan antar objek dengan prinsip
untuk memaksimalkan kesamaan antar anggota satu kelas dan meminimumkan kesamaan
antar kelas/cluster. Clustering dalam data mining berguna untuk menemukan pola distribusi di
dalam sebuah data set yang berguna untuk proses analisa data. Kesamaan objek biasanya
diperoleh dari kedekatan nilai-nilai atribut yang menjelaskan objek-objek data, sedangkan
objek-objek data biasanya direpresentasikan sebagai sebuah titik dalam ruang multidimensi.
Clustering digunakan untuk mendapatkan high availability dan scalability. Pada high
available cluster, dapat digunakan failover database cluster, dimana hanya ada satu node yang
aktif melayani user, sedangkan node lainnya standby. Storage yang digunakan mempunyai
koneksi ke setiap node pada cluster, sehingga jika primary node mati, database engine,
listener process, dan logical host ip address akan dijalankan pada secondary node tanpa perlu
menunggu operating system boot, sehingga downtime dapat diminimalisasi. High availability
mempunyai standard uptime 99.999 persen, atau hanya boleh mati selama 5 menit dalam
setahun. Beberapa contoh software yang dapat digunakan untuk membuat HA cluster adalah
Sun Cluster dan Veritas Cluster. Pada scalable cluster, digunakan produk Oracle RAC,
dimana setiap node aktif melayani user, sehingga diperoleh performa yang semakin baik
dengan menggunakan lebih banyak node. Sun cluster dapat digunakan sampai 16 node,
sedangkan Veritas Storage Foundation for Oracle RAC bisa sampai 32 node. Jika ada node
yang mati, tentu akan menurunkan performa, namun tidak terjadi down time. Pada scalable
cluster, seluruh node dapat terhubung secara langsung ke shared storage, namun dapat juga
tidak mempunyai koneksi fisik ke storage, melainkan melalui private cluster transport.

Subspace Clustering
Subspace clustering adalah suatu teknik clustering yang mencoba menemukan cluster
pada dataset multidimensi dengan pemilihan dimensi yang paling relevan untuk setiap cluster,
karena pada data multidimensi kemungkinan terdapat dimensi-dimensi yang tidak relevan
yang dapat membingungkan algoritma clustering sehingga bisa mengaburkan cluster
sebenarnya yang seharusnya dapat ditemukan. Masalah lainnya, cluster dapat saja berada

dalam subspace yang berbeda, dimana setiap subspace dibentuk dari kombinasi dimensi yang
berbeda-beda. Akibatnya, semakin banyak dimensi yang digunakan, cluster akan sulit
ditemukan. Subspace clustering secara otomatis akan menemukan unit-unit yang padat pada
tiap subspace. Pada Gambar diatas, mengilustrasikan bagaimana peningkatan jumlah dimensi
mengakibatkan terpecahnya titik pada dataset. Cara yang sudah dikenal untuk mengatasi
peningkatan jumlah dimensi adalah menggunakan teknik reduksi dimensi atau feature
selection. Dengan cara ini, dimensionalitas dataset dikurangi dengan menghilangkan beberapa
dimensi, pendekatan ini berakibat pada hilangnya beberapa informasi dan sekaligus
mengurangi efektifitas penemuan cluster yang mungkin melibatkan dimensi yang dihilangkan
tersebut.
Berbeda dengan association rule mining dan classification dimana kelas data telah
ditentukan sebelumnya, clustering melakukan penge-lompokan data tanpa berdasarkan kelas
data tertentu. Bahkan clustering dapat dipakai untuk memberikan label pada kelas data yang
belum diketahui itu. Karena itu clustering sering digolongkan sebagai metode unsupervised
learning. Prinsip dari clustering adalah memaksimalkan kesamaan antar anggota satu kelas
dan meminimumkan kesamaan antar kelas/cluster.
Clustering dapat dilakukan pada data yang memiliki beberapa atribut yang dipetakan
sebagai ruang multidimensi. Banyak algoritma clustering memerlukan fungsi jarak untuk
mengukur kemiripan antar data, diperlukan juga metode untuk normalisasi bermacam atribut
yang dimiliki data. Beberapa kategori algoritma clustering yang banyak dikenal adalah
metode partisi dimana pemakai harus menentukan jumlah k partisi yang diinginkan lalu setiap
data dites untuk dimasukkan pada salah satu partisi, metode lain yang telah lama dikenal
adalah metode hierarki yang terbagi dua lagi : bottom-up yang menggabungkan cluster kecil
menjadi cluster lebih besar dan top-down yang memecah cluster besar menjadi cluster yang
lebih kecil.
Kelemahan 3 metode ini adalah bila bila salah satu penggabungan/pemecahan
dilakukan pada tempat yang salah, tidak dapat didapatkan cluster yang optimal. Pendekatan
yang banyak diambil adalah menggabungkan metode hierarki dengan metode clustering
lainnya seperti yang dilakukan oleh Chameleon. Akhir-akhir ini dikembangkan juga metode
berdasar kepadatan data, yaitu jumlah data yang ada di sekitar suatu data yang sudah
teridentifikasi dalam suatu cluster. Bila jumlah data dalam jangkauan tertentu lebih besar dari
nilai ambang batas, data-data tsb dimasukkan dalam cluster. Kelebihan metode ini adalah
bentuk cluster yang lebih fleksibel. Algoritma yang terkenal adalah DBSCAN.

Teknologi Cluster
Kebutuhan akan komunikasi data dewasa ini sangat penting seiring dengan kemajuan
dan perkembangan teknologi komunikasi data yang semakin canggih. Hal yang sangat
penting bagi Teknologi komunikasi data adalah database sebagai penyedia data.
Aplikasi-aplikasi database dituntut untuk mampu melayani banyak akses data. Hal ini
dapat dimaklumi karena database server telah di rancang untuk dapat melayani beragam jenis
akses data. Saat ini aplikasi databse semakin berkembang, baik dalam hal kegunaan, ukuran,
maupun kompleksitas. Hal ini secara langsung akan berdampak pada server database sebagai
penyedia layanan terhadap akses databse, konsekuensi dari semua itu adalah beban databse
server akan semakin bertambah berat dan mengakibatkan kurang optimalnya kinerja dari
server tersebut. Oleh sebab itu, diperlukan perancangan yang tepat dan handal dalam
membangun databse server. Solusi praktis dan tepat yang dapat diterapkan untuk mengatasi
permasalahan diatas antara lain dengan penerapan Teknologi Cluster. Banyak sekali manfaat
yang diperoleh dari teknologi cluster diantaranya meningkatkan ketersediaan dan performansi
system.
Banyak sekali manfaat yang diperoleh dari teknologi cluster

diantaranya

meningkatkan ketersediaan dan performansi system. Pada server database yang besar dalam
pelayanannya tidak menggunakan server databse tunggal, tetapi dilayani oleh sekelompok
server database, beberapa buah server databse dihubungkan menjadi satu pada lingkungan
yang sangat kompleks. Arsitektur yang digunakan harus menjamin bahwa sistem bekerja
dengan baik, setiap server mengerjakan beban semestinya, dan tidak ada bottleneck. Berbagai
jenis server diikat menjadi satu untuk menjadikan suatu pelayanan tunggal (one stop
shopping). Database tercluster tersebut dapat dianggap personal desktop atau database tunggal
bagi penggunanya.
Database pada masa sekarang ini dituntut agar dapat berjalan dengan cepat dan
mempunyai kehandalan yang tinggi, Dengan clustering ini database yang disimpan dapat
terbagi ke beberapa mesin dan pada saat aplikasi berjalan, semua mesin yang menyimpan data
tersebut dianggap sebagai satu kesatuan. Metode clustering seperti ini sangat baik untuk load
balancing dan penanganan system failure karena kemampuan tiap mesin akan digunakan dan
jika ada salah satu mesin yang mengalami failure maka sistem tidak akan langsung terganggu
karena mesin lain akan tetap berfungsi. Kemampuan clustering memungkinkan sebuah
database tetap hidup dalam waktu yang lama. MySQL berani menjanjikan angka 99.999

persen ketersediaan databasenya. Sederhananya, dalam satu tahun kira-kira hanya lima menit
waktu database itu tidak hidup.

MySQL Cluster
MySQL Cluster menggunakan mesin penyimpanan cluster NDB baru yang mampu
menjalankan beberapa MySQL Server di dalam sebuah cluster. Mesin penyimpanan cluster
NDB tersedia di dalam BitKepper dari MySQL release 4.1.2 dan di dalam binary releases dari
MySQL-Max 4.1.3 System operasi yang didukung adalah Linux, Mac OS X, dan Solaris,
pihak MySQL sedang membuat/mengembangkan agar cluster NDBdapat berjalan pada semua
system operasi yang didukung oleh MySQL termasuk Windows.

Overview
MySQL Cluster adalah sebuah teknologi baru untuk memungkinkan clustering di
dalam memory database dalam sebuah sistem share-nothing. Arsitektur share-nothing
mengijinkan sistem dapat bekerja dengan hardware/perangkat keras yang sangat murah, dan
tidak membutuhkan perangkat keras dan lunak dengan spesifikasi khusus. Arsitektur tersebut
juga handal karena masing-masing komponen mempunyai memory dan disk tersendiri.
MySQL Cluster menggabungkan MySQL Server biasa dengan sebuah mesin
penyimpanan in-memory tercluster yang dinamakan NDB. NDB berarti bagian dari suatu
rangkaian yang dikhususkan sebagai mesin penyimpanan, sedangkan MySQL Cluster
diartikan sebagai kombinasi atau gabungan dari MySQL dan mesin penyimpanan yang baru
tersebut. Sebuah MySQL Cluster terdiri dari sekumpulan komputer, masing-masing
menjalankan sejumlah proses mencakup beberapa MySQL server, node-node penyimpanan
untuk cluster NDB, server-server manajemen dan program-program pengakses data yang
khusus. Semua program-program tersebut bekerja bersama-sama untuk membentuk MySQL
Cluster. Ketika data disimpan di dalam mesin penyimpan media NDB cluster, tabel-tabel
disimpan didalam node-node penyimpanan pada NDB Cluster. Tabel-tabel seperti itu dapat
diakses secara langsung dari semua MySQL server yang lain di dalam cluster tersebut.
Dengan cara demikian, sebuah aplikasi daftargaji menyimpan data di dalam sebuah
cluster, jika sebuah aplikasi mengupdate/memperbaharui gaji seorang karyawan, semua
MySQL server yang lain yang meminta data ini dapat melihat perubahannya dengan seketika.
Data yang disimpan di dalam node-node penyimpanan pada MySQL Cluster dapat di mirror
(dicerminkan), cluster tersebut dapat menangani kegagalan dari node-node penyimpanan
individual dengan tidak ada dampak lain dari sejumlah transaksi dihentikan karena kegagalan

proses transaksi. Sejak aplikasi untuk proses-proses transaksi diharapkan mampu menangani
kegagalan transaksi, ini semua tidak seharusnya menjadi sumber permasalahan. Dengan
memperkenalkan MySQL Cluster pada dunia open source, MySQL membuat manajemen data
cluster dengan ketersediaan yang tinggi, perfomance yang tinggi dan skalabilitas ketersediaan
untuk siapa saja yang memerlukannya.

Dasar konsep-konsep MySQL Cluster


NDB adalah sebuah mesin penyimpanan memory yang menawarkan ketersediaan
yang tinngi dan fitur-fitur persistensi data. Mesin penyimpanan NDB dapat diatur dengan
sebuah bidang failover dan pilihan-pilhan load-balancing, tetapi untuk memulai paling mudah
dengan mesin penyimpanan pada level cluster. Mesin penyimpanan NDB pada MySQL
Cluster berisi sebuah kumpulan lengkap dari data, bergantung hanya pada data lainnya di
dalam cluster itu sendiri. Sekarang akan diuraikan bagaimana mengatur sebuah MySQL
Cluster yang terdiri dari sebuah mesin penyimpanan NDB dan beberapa MySQL server.
Sebagian dari MySQL Cluster dikonfigurasi tidak tergantung/bebas dari server-server
MySQL yang lain. Di dalam MySQL Cluster, masing-masing bagian dari cluster dianggap
sebagai sebuah node.

Analisis Cluster
Clustering dan segmentasi sebenarnya mempartisi database, karena itu setiap partisi
atau group adalah sama menurut kriteria atau metrik tertentu. Jika pengukuran kesamaan
tersedia, maka terdapat sejumlah teknik untuk membentuk cluster. Kebanyakan aplikasi2 data
mining menggunakan clusteing menurut similarity (kesamaan), contohnya segmentasi basis
klien. Clustering menurut optimasi dari sekumpulan fungsi-fungsi digunakan pada analisis
data, misalnya ketika mensetting tarif asuransi klien dapat disegmentasi menurut sejumlah
parameter.
Contoh aplikasi :
Perangkat stand-alone : explore data distribution
Langkah preprocessing untuk algoritma lain
Pengenalan pola, analisis data spasial, pengenalan citra, market research, WWW,
clustering dokumen2
clustering data log web untuk mendapatkan group dengan pola akses yang sama.

Penggelompokkan data ke cluster2


Data yang sama satu sama lain berada pada cluster yang sama
Yang tidak sama berada pada cluster lain
Unsupervised learning: klas2 yang belum ditentukan

Clustering Yang Baik


Intraclass similarity (Kesamaan di dalam klas) yang tinggi dan interclass similarity
(kesamaan antar klas) yang rendah bergantung pada pengukuran kesamaan
Kemampuan untuk mendapatkan beberapa atau semua pola yang tersembunyi.

Kebutuhan Clustering
Scalability : Kemampuan mengerjakan atribut2 dari berbagai tipe
Penemuan clusters dengan bentuk yang tidak tentu
Kebutuhan minimal untuk pengetahuan domain untuk menentukan parameter input
Dapat menerima noise dan outlier
Tidak mengindahkan susunan record dari input
Dimensi yang tinggi
Menyatu dengan batasan yang dispesifikasikan oleh user
Interpretability and usability

Tipe-tipe Data pada Clustering


Variabel2 berskala interval
Variabel biner
Variabel nominal, ordinal dan rasio
Variable2 dari berbagai tipe variable

Kategori Pendekatan Clustering


Algoritma Partisi
Mempartisi objek2 ke dalam k cluster
Realokasi objek2 secara iteratif untuk memperbaiki clustering

Algoritma Hirarkis
Agglomerative: setiap objek merupakan cluster, gabungan dari cluster-cluster
membentuk cluster yang besar
Divisive: semua objek berada dalam suatu cluster, pembagian cluster tersebut
membentuk cluster2 yang kecil

Metode berbasis densitas


Berbasis koneksitas dan fungsi densitas
Noise disaring, kemudian temukan cluster2 dalam bentuk sembarang
Metode berbasis grid
Kuantisasi ruang objek ke dalam struktur grid

Berbasis Model
Gunakan model untuk menemukan keadaan data yang baik

Contoh Clustering

Terdapat Database Foodmart2000 dengan OLAP Cube Sales. Kita tertarik untuk
menemukan 3 segmen pelanggan dari toko Foodmart dalam rangka menciptakan suatu
program untuk menawarkan manfaat yang berbeda untuk pelanggan yang tergantung pada
karakteristik pribadi mereka. Tujuannya adalah untuk meningkatkan kesetiaan mereka
terhadap toko tsb. Kita akan menggunakan algoritma clustering di database Foodmart2000
dimana segmen pelanggan ada di OLAP cube sales dalam tiga kategori yang berdasarkan
pada informasi berikut: Jenis kelamin, status perkawinan, Pendapatan tahunan,
Pendidikan, Kartu Anggota, dan Penjual toko.

Langkah 1 Ketika kita akan menggolongkan pelanggan, kita harus memilih Customer
sebagai kasus pada halaman yang pertama dari OLAP Data Mining Wizard.

Langkah 2 pada langkah ini kita memilih karakteristik yang akan diproses oleh algoritma
tsb. Pada basis cluster mereka yang akan dibuat. Pada tugas saat ini kita tertarik akan Jenis
kelamin

pelanggan/Customers

Gender,

Status

Perkawinan/marital

status,

pendidikan/education, Kartu anggota/Member Card, Pendapatan tahunan/yearly income


dan penjual toko, itu sebabnya mengapa kita memilihnya.

Hasil

Penerapan sistem cluster database saat ini lebih berhasil, jangkauan lebih luas dari
aplikasi adalah: Oracle Corporation Oracle9 dengan IBM, DB2. Oracle9 menggunakan
teknologi bersama-penyimpanan, pilih DB2 teknologi Bersama-apa-apa, kedua campuran.
Teori database cluster terbaru didasarkan pada komputasi terdistribusi, distribusi data ke
setiap node, semua node dalam komputasi paralel untuk memproses data, ringkasan hasil. Ini
tidak diragukan lagi cara yang paling sempurna. Tapi masih belum mencapai semua fitur.

Anda mungkin juga menyukai