HBase Architekstur: Kasus Penggunaan, Komponen & Model Data

HBase Architekstur dan Komponen Pentingnya

Arsitektur HBase terutama terdiri dari empat komponen

  • Guru
  • Server Wilayah HR
  • HRegion
  • Zookeeper
  • HDFS

Berikut ini adalah arsitektur HBase secara rinci beserta komponennya:

HBase Architekstur
HBase Archidiagram tekstur

Guru

Guru dalam HBase adalah implementasi server Master dalam arsitektur HBase. Server ini bertindak sebagai agen pemantauan untuk memantau semua instans Region Server yang ada dalam kluster dan bertindak sebagai antarmuka untuk semua perubahan metadata. Dalam lingkungan kluster terdistribusi, Master berjalan pada NameNode. Master menjalankan beberapa thread latar belakang.

Berikut ini adalah peran penting yang dilakukan oleh HMaster dalam HBase.

  • Memainkan peran penting dalam hal kinerja dan pemeliharaan node di cluster.
  • HMaster memberikan kinerja admin dan mendistribusikan layanan ke server wilayah berbeda.
  • HMaster menetapkan wilayah ke server wilayah.
  • HMaster memiliki fitur seperti mengontrol penyeimbangan beban dan failover untuk menangani beban pada node yang ada di cluster.
  • Ketika klien ingin mengubah skema apa pun dan mengubah operasi Metadata apa pun, HMaster bertanggung jawab atas operasi ini.

Beberapa metode yang diekspos oleh HMaster Interface pada dasarnya adalah metode berorientasi Metadata.

  • Tabel (buat Tabel, hapus Tabel, aktifkan, nonaktifkan)
  • ColumnFamily (tambahkan Kolom, ubah Kolom)
  • Wilayah (pindah, tetapkan)

Klien berkomunikasi dua arah dengan HMaster dan ZooKeeper. Untuk operasi baca dan tulis, langsung berhubungan dengan server HRegion. HMaster menugaskan wilayah ke server wilayah dan selanjutnya memeriksa status kesehatan server wilayah.

Di seluruh arsitektur, kami memiliki beberapa server regional. Hlog hadir di server regional yang akan menyimpan semua berkas log.

Server Wilayah HBase

Saat Server Wilayah HBase menerima permintaan tulis dan baca dari klien, server tersebut akan menetapkan permintaan tersebut ke wilayah tertentu, tempat kelompok kolom sebenarnya berada. Namun klien dapat langsung menghubungi server HRegion, tidak diperlukan izin wajib HMaster kepada klien terkait komunikasi dengan server HRegion. Klien memerlukan bantuan HMaster ketika operasi terkait metadata dan perubahan skema diperlukan.

HRegionServer adalah implementasi Server Wilayah. Ia bertanggung jawab untuk melayani dan mengelola wilayah atau data yang ada dalam cluster terdistribusi. Server wilayah berjalan pada Node Data yang ada di cluster Hadoop.

HMaster dapat menghubungi beberapa server HRegion dan melakukan fungsi berikut.

  • Menjadi tuan rumah dan mengelola wilayah
  • Memisahkan wilayah secara otomatis
  • Menangani permintaan baca dan tulis
  • Berkomunikasi dengan klien secara langsung

Daerah HBase

Wilayah adalah elemen bangunan dasar cluster HBase yang terdiri dari distribusi tabel dan terdiri dari keluarga Kolom. Ini berisi beberapa toko, satu untuk setiap kelompok kolom. Ini terutama terdiri dari dua komponen, yaitu Memstore dan Hfile.

Penjaga kebun binatang

HBase Zookeeper adalah server pemantauan terpusat yang menyimpan informasi konfigurasi dan menyediakan sinkronisasi terdistribusi. Sinkronisasi terdistribusi adalah untuk mengakses aplikasi terdistribusi yang berjalan di seluruh kluster dengan tanggung jawab menyediakan layanan koordinasi antar node. Jika klien ingin berkomunikasi dengan wilayah, klien server harus menghubungi ZooKeeper terlebih dahulu.

Ini adalah proyek sumber terbuka, dan menyediakan banyak layanan penting.

Layanan yang disediakan oleh Penjaga kebun binatang

  • Mempertahankan informasi Konfigurasi
  • Menyediakan sinkronisasi terdistribusi
  • Pembentukan Komunikasi Klien dengan server wilayah
  • Menyediakan node sementara yang mewakili server wilayah berbeda
  • Kegunaan server utama dari node sementara untuk menemukan server yang tersedia di cluster
  • Untuk melacak kegagalan server dan partisi jaringan

Node master dan budak HBase (server wilayah) mendaftarkan diri ke ZooKeeper. Klien memerlukan akses ke konfigurasi kuorum ZK (zookeeper) untuk terhubung dengan server master dan wilayah.

Selama kegagalan node yang ada di cluster HBase, ZKquoram akan memicu pesan kesalahan, dan mulai memperbaiki node yang gagal.

HDFS

HDFS adalah Hadoop yang didistribusikan File System, sesuai dengan namanya, ini menyediakan lingkungan terdistribusi untuk penyimpanan dan merupakan sistem file yang dirancang sedemikian rupa untuk dijalankan pada perangkat keras komoditas. Ia menyimpan setiap file dalam beberapa blok dan untuk menjaga toleransi kesalahan, blok tersebut direplikasi di seluruh cluster Hadoop.

HDFS memberikan tingkat toleransi kesalahan yang tinggi dan berjalan pada perangkat keras komoditas yang murah. Dengan menambahkan node ke cluster dan melakukan pemrosesan & penyimpanan dengan menggunakan perangkat keras komoditas murah, klien akan memberikan hasil yang lebih baik dibandingkan dengan yang sudah ada.

Di sini, data yang disimpan di setiap blok direplikasi menjadi 3 node. Jika node mana pun down, tidak akan ada data yang hilang, maka node tersebut akan memiliki mekanisme pemulihan cadangan yang tepat.

HDFS menghubungi komponen HBase dan menyimpan sejumlah besar data secara terdistribusi.

Model Data HBase

Model Data HBase adalah sekumpulan komponen yang terdiri dari Tabel, Baris, Keluarga Kolom, Sel, Kolom, dan Versi. Tabel HBase berisi kelompok kolom dan baris dengan elemen yang didefinisikan sebagai Kunci utama. Kolom dalam tabel model data HBase mewakili atribut objek.

Model Data HBase terdiri dari elemen-elemen berikut,

  • Seperangkat tabel
  • Setiap tabel dengan kelompok kolom dan baris
  • Setiap tabel harus memiliki elemen yang didefinisikan sebagai Kunci Utama.
  • Kunci baris bertindak sebagai kunci utama di HBase.
  • Akses apa pun ke tabel HBase menggunakan Kunci Utama ini
  • Setiap kolom yang ada di HBase menunjukkan atribut yang sesuai dengan objek

Kasus Penggunaan HBase

Berikut ini adalah contoh kasus penggunaan HBase dengan penjelasan rinci tentang solusi yang diberikannya untuk berbagai masalah teknis

Pernyataan Masalah Solusi
Industri Telekomunikasi menghadapi tantangan teknis berikut

  • Menyimpan miliaran rekaman log CDR (Call detailed recording) yang dihasilkan oleh domain telekomunikasi
  • Menyediakan akses real-time ke log CDR dan informasi penagihan pelanggan
  • Memberikan solusi hemat biaya dibandingkan dengan sistem database tradisional
HBase digunakan untuk menyimpan miliaran baris rekaman panggilan terperinci. Jika 20 TB data ditambahkan per bulan ke basis data RDBMS yang ada, kinerjanya akan menurun. Untuk menangani sejumlah besar data dalam kasus penggunaan ini, HBase adalah solusi terbaik. HBase melakukan kueri cepat dan menampilkan rekaman.
Industri perbankan menghasilkan jutaan catatan setiap hari. Selain itu, industri perbankan juga membutuhkan solusi analitik yang dapat mendeteksi Fraud dalam transaksi uang Untuk menyimpan, memproses, dan memperbarui data dalam jumlah besar serta melakukan analisis, solusi idealnya adalah – HBase yang terintegrasi dengan beberapa komponen ekosistem Hadoop.

Selain itu, HBase dapat digunakan

  • Kapan pun ada kebutuhan untuk menulis aplikasi berat.
  • Melakukan analisis log online dan menghasilkan laporan kepatuhan.

Mekanisme Penyimpanan di HBase

HBase adalah database berorientasi kolom dan data disimpan dalam tabel. Tabel diurutkan berdasarkan RowId. Seperti yang ditunjukkan di bawah ini, HBase memiliki RowId, yang merupakan kumpulan beberapa kelompok kolom yang ada dalam tabel.

Kelompok kolom yang ada dalam skema adalah pasangan nilai kunci. Jika kita amati secara detail setiap keluarga kolom memiliki beberapa jumlah kolom. Nilai kolom disimpan ke dalam memori disk. Setiap sel tabel memiliki Metadata sendiri seperti stempel waktu dan informasi lainnya.

Mekanisme Penyimpanan di HBase
Mekanisme Penyimpanan di HBase

Datang ke HBase berikut adalah istilah kunci yang mewakili skema tabel

  • tabel: Kumpulan baris yang ada.
  • Baris: Koleksi keluarga kolom.
  • Keluarga Kolom: Kumpulan kolom.
  • Kolom: Kumpulan pasangan nilai kunci.
  • Namespace: Pengelompokan tabel secara logis.
  • Sel: Tupel {baris, kolom, versi} secara tepat menentukan definisi sel di HBase.

Penyimpanan berorientasi kolom vs berorientasi baris

Penyimpanan berorientasi Kolom dan Baris berbeda dalam mekanisme penyimpanannya. Seperti kita ketahui, model relasional tradisional menyimpan data dalam format berbasis baris seperti dalam baris data. Penyimpanan berorientasi kolom menyimpan tabel data dalam bentuk kolom dan kelompok kolom.

Tabel berikut memberikan beberapa perbedaan utama antara kedua penyimpanan ini

Database berorientasi kolom Database berorientasi baris
Ketika situasinya menyangkut proses dan analisis, kami menggunakan pendekatan ini. Seperti Pemrosesan Analitis Online dan itu aplikasi. Proses Transaksi Online seperti domain perbankan dan keuangan menggunakan pendekatan ini.
Jumlah data yang dapat disimpan dalam model ini sangat besar, misalnya dalam petabyte Ini dirancang untuk sejumlah kecil baris dan kolom.

Penjelasan Data Baca dan Tulis HBase

Operasi Baca dan Tulis dari Klien ke Hfile dapat ditunjukkan pada diagram di bawah ini.

HBase Membaca dan Menulis Data

Langkah 1) Klien ingin menulis data dan kemudian berkomunikasi terlebih dahulu dengan server Wilayah, lalu wilayah

Langkah 2) Wilayah yang menghubungi memstore untuk penyimpanan terkait dengan keluarga kolom

Langkah 3) Data pertama disimpan ke Memstore, tempat data diurutkan dan setelah itu, dimasukkan ke HFile. Alasan utama menggunakan Memstore adalah untuk menyimpan data dalam sistem file Terdistribusi berdasarkan Row Key. Memstore akan ditempatkan di memori utama server Wilayah sementara HFiles ditulis ke dalam HDFS.

Langkah 4) Klien ingin membaca data dari Wilayah

Langkah 5) Pada gilirannya, Klien dapat memiliki akses langsung ke penyimpanan Mem, dan dapat meminta data.

Langkah 6) Klien mendekati HFiles untuk mendapatkan data. Data diambil dan diambil oleh Klien.

Memstore menyimpan modifikasi dalam memori pada toko. Hirarki objek di Wilayah HBase seperti yang ditunjukkan dari atas ke bawah pada tabel di bawah.

tabel Tabel HBase ada di cluster HBase
Daerah Wilayah untuk tabel yang disajikan
Toko Ini menyimpan per ColumnFamily untuk setiap wilayah untuk tabel
toko memori
  • Memstore untuk setiap toko untuk setiap wilayah untuk tabel
  • Ini mengurutkan data sebelum dimasukkan ke HFiles
  • Kinerja menulis dan membaca akan meningkat karena penyortiran
File Penyimpanan StoreFiles untuk setiap toko untuk setiap wilayah untuk tabel
Memblokir Blok ada di dalam StoreFiles

HBase vs.HDFS

HBase berjalan di atas HDFS dan Hadoop. Beberapa perbedaan utama antara HDFS dan HBase adalah dalam hal operasi dan pemrosesan data.

HBASE HDFS
Operasi latensi rendah Operasi latensi tinggi
Membaca dan menulis secara acak Tulis sekali Baca berkali-kali
Diakses melalui perintah shell, API klien di Java, REST, Avro atau Hemat Terutama diakses melalui pekerjaan MR (Map Reduce).
Penyimpanan dan proses keduanya dapat dilakukan Ini hanya untuk tempat penyimpanan

Beberapa aplikasi industri TI pada umumnya menggunakan operasi HBase bersama dengan Hadoop. Aplikasi termasuk data bursa, operasi data perbankan online, dan pemrosesan Hbase adalah metode solusi yang paling sesuai.

Kesimpulan

  • Komponen arsitektur HBase: HMaster, HRegion Server, HRegions, ZooKeeper, HDFS
  • HMaster dalam HBase adalah implementasi server Master dalam arsitektur HBase.
  • Ketika Server Wilayah HBase menerima permintaan tulis dan baca dari klien, server tersebut menetapkan permintaan tersebut ke wilayah tertentu, tempat kelompok kolom sebenarnya berada
  • Wilayah adalah elemen bangunan dasar cluster HBase yang terdiri dari distribusi tabel dan terdiri dari keluarga Kolom.
  • HBase Zookeeper adalah server pemantauan terpusat yang memelihara informasi konfigurasi dan menyediakan sinkronisasi terdistribusi.
  • HDFS memberikan tingkat toleransi kesalahan yang tinggi dan berjalan pada perangkat keras komoditas yang murah.
  • Model Data HBase adalah sekumpulan komponen yang terdiri dari Tabel, Baris, Kelompok Kolom, Sel, Kolom, dan Versi.
  • Penyimpanan berorientasi Kolom dan Baris berbeda dalam mekanisme penyimpanannya.