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.
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 sistem 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.
Tidak ada komentar:
Posting Komentar