Rumah Keuangan Pribadi Beralih dari model RDBMS ke HBase - dummies

Beralih dari model RDBMS ke HBase - dummies

Video: Sqoop Import and Export data from RDMBS and HDFS 2024

Video: Sqoop Import and Export data from RDMBS and HDFS 2024
Anonim

Jika Anda menghadapi fase desain untuk aplikasi Anda dan Anda yakin HBase akan sesuai, maka merancang kunci dan skema baris Anda agar sesuai dengan model dan arsitektur data HBase adalah pendekatan yang tepat Namun, terkadang masuk akal untuk memindahkan database yang awalnya dirancang untuk RDBMS ke HBase.

Skenario umum dimana pendekatan ini masuk akal adalah contoh database MySQL yang telah mencapai batas skalabilitasnya. Teknik ada untuk skala horizontal contoh MySQL ( sharding, dengan kata lain) namun proses ini biasanya tidak praktis dan bermasalah karena MySQL pada awalnya tidak dirancang untuk sharding.

denormalization, duplikasi, dan kunci cerdas (DDI) . Denormalisasi:

  • Model basis data relasional bergantung pada a) skema database yang dinormalisasi dan b) bergabung antar tabel untuk merespons operasi SQL. Normalisasi database adalah teknik yang menjaga terhadap kehilangan data, redundansi, dan anomali lainnya karena data diperbarui dan diambil.

    Ada sejumlah peraturan yang diikuti para ahli untuk sampai pada skema database yang dinormalisasi (dan normalisasi database adalah keseluruhan studi itu sendiri), namun prosesnya biasanya melibatkan pembagian tabel yang lebih besar ke dalam tabel yang lebih kecil dan hubungan yang menentukan. diantara mereka. Denormalization database adalah kebalikan dari normalisasi, dimana tabel yang lebih kecil dan lebih spesifik digabungkan ke dalam tabel yang lebih besar dan lebih umum.

    Ini adalah pola umum saat beralih ke HBase karena bergabung tidak disediakan di seluruh tabel, dan bergabung dapat menjadi lambat karena melibatkan operasi disk yang mahal. Melindungi terhadap anomali update dan retrieval sekarang menjadi tugas aplikasi klien HBase Anda, karena perlindungan yang diberikan Anda oleh normalisasi tidak berlaku dan tidak berlaku lagi.

    Duplikasi:

  • Saat Anda melakukan denormalize skema database Anda, Anda mungkin akan akhirnya menduplikat data karena dapat membantu Anda menghindari operasi baca yang mahal di beberapa tabel. Jangan khawatir tentang penyimpanan ekstra (tentu saja); Anda bisa menggunakan skalabilitas otomatis HBase untuk keuntungan Anda. Sadarilah bahwa pekerjaan ekstra itu akan diminta oleh aplikasi klien Anda untuk menduplikat data dan ingat bahwa HBase secara native hanya menyediakan operasi atomik tingkat baris bukan baris silang (dengan pengecualian yang dijelaskan dalam JASA HBASE-5229) atau lintas meja.

    Tombol Cerdas:

  • Karena data yang tersimpan dalam HBase diperintahkan oleh tombol baris, dan tombol baris adalah satu-satunya indeks asli yang disediakan oleh sistem, desain cerdas cerdas dari tombol baris dapat membuat perbedaan besar. Misalnya, kunci baris Anda bisa menjadi kombinasi dari nomor pesanan layanan dan nomor ID pelanggan yang menempatkan pesanan layanan. Desain kunci baris ini akan memungkinkan Anda mencari data yang terkait dengan pesanan layanan atau mencari data yang terkait dengan pelanggan menggunakan tombol baris yang sama di tabel yang sama. Teknik ini akan lebih cepat untuk beberapa query dan menghindari tabel mahal bergabung.

    Untuk memperjelas pola pemikiran tertentu ini, ambil tabel Informasi Kontak Pelanggan dan letakkan dalam konteks database pesanan layanan khas. Angka tersebut menunjukkan kepada Anda apa skema database pesanan layanan yang dinormalisasi.

Mengikuti aturan normalisasi RDBMS, siapkan contoh tabel Informasi Kontak Pelanggan sehingga terpisah dari tabel pesanan layanan agar tidak kehilangan data pelanggan saat pesanan layanan ditutup dan mungkin terhapus. Ambil pendekatan yang sama untuk tabel Produk, yang berarti bahwa produk baru dapat ditambahkan ke database perusahaan fiktif secara independen dari pesanan layanan.

Dengan mengandalkan operasi gabungan RDBMS, skema ini mendukung kueri yang mengungkapkan jumlah pesanan layanan yang dibuka terhadap produk tertentu dan juga lokasi pelanggan tempat produk tersebut digunakan.

Itu bagus dan keren, tapi ini adalah skema yang akan Anda gunakan dengan RDBM. Bagaimana Anda mentransisikan skema ini ke skema HBase? Angka berikutnya menggambarkan skema HBase yang mungkin - yang mengikuti pola desain DDI.

Tabel Informasi Kontak Pelanggan telah dinormalkan dengan memasukkan nama pelanggan dan info kontak sebagai pengganti kunci asing yang digunakan sebelumnya. Selain itu, datanya digandakan dengan menjaga tabel Informasi Kontak Pelanggan sebagaimana adanya. Sekarang bergabung di seluruh tabel Order Layanan dan tabel Informasi Kontak Pelanggan tidak diperlukan.

Selain itu, desain kunci baris cerdas telah digunakan yang menggabungkan nomor produk dengan nomor pelanggan untuk membentuk nomor pesanan layanan (A100 | 00001, misalnya). Dengan menggunakan kunci cerdas ini, tabel pesanan layanan dapat memberikan laporan penting tentang kekurangan produk dan pelanggan yang saat ini mengalami masalah produk.

Semua pertanyaan ini semuanya dapat didukung oleh HBase dalam mode atomik tingkat baris untuk aplikasi. Karena Anda tahu bahwa perintah baris perintah HBase dan mengurutkannya dengan cara leksikografis, aplikasi Anda dapat membuat dugaan terdidik tertentu tentang lokalitas data saat mengeluarkan pindaian untuk pelaporan. (Semua seri produk A * akan disimpan bersama-sama, misalnya.)

Database pesanan layanan yang ditunjukkan oleh skema HBase adalah contoh yang relatif sederhana, namun ini menggambarkan bagaimana HBase dapat, dalam kasus tertentu, berpotongan dengan dunia RDBMS dan memberikan nilai yang signifikan. Jika perusahaan fiktif memiliki data panggilan layanan terabyte atau bahkan petabyte untuk disimpan, HBase akan menghasilkan perbedaan besar dalam hal biaya, keandalan, kinerja, dan skala.

Anda bisa, tentu saja, merancang skema layanan pesanan Anda dalam beberapa cara yang berbeda. Diakui, desain semuanya bergantung pada kueri yang harus didukung, namun Anda memiliki kemampuan untuk mentransisikan beberapa basis data relasional ke aplikasi HBase yang sangat kuat untuk penggunaan produksi selama Anda bekerja dari pemahaman yang solid tentang arsitektur HBase dan pola desain DDI.

Contoh ini mengasumsikan bahwa kueri dilakukan oleh aplikasi Java yang memanfaatkan API klien HBase, atau mungkin melalui bahasa lain menggunakan Apache Thrift. Model aplikasi ini mungkin sesuai dengan persyaratannya saja dan memberikan pilihan kinerja dan penyesuaian yang berguna untuk perusahaan layanan fiktif.

Beralih dari model RDBMS ke HBase - dummies

Pilihan Editor

Perancang Minigame Minigame - dummies

Perancang Minigame Minigame - dummies

Sebelum menulis semua kode untuk membuat Minecraft Minigame, Anda perlu merancang permainan Anda. The Gameplay Loop adalah proses sederhana yang bisa Anda ikuti untuk memastikan permainan Anda menyenangkan, menantang, dan lengkap. The Gameplay Loop memiliki empat bagian: Start: Buat adegan dasar. Tujuan: Menambahkan cara untuk menang dan ...

Menciptakan Efek Air dan Es di Minecraft - dummies

Menciptakan Efek Air dan Es di Minecraft - dummies

Satu hal yang rapi tentang Minecraft adalah bahwa beberapa fisika realistis sedang dimainkan dalam permainan. Misalnya, jika Anda memiliki air dan Anda memasukkan es ke dalamnya, itu akan membeku! Oke, mungkin di dunia nyata, menambahkan es tidak membuat air membeku, tapi memang membuatnya lebih dingin. Anda dapat melihat ini ...

Mendapatkan Minecraft Experience Points - dummies

Mendapatkan Minecraft Experience Points - dummies

Di Minecraft, experience points, XP untuk jangka pendek, dikumpulkan dari bola pengalaman bercahaya. Sebagai pemain mengumpulkan cukup bola dan meningkatkan tingkat pengalaman mereka, mereka akan dapat menggunakan tabel dan landasan yang mempesona untuk meningkatkan kemampuan banyak item seperti senjata, baju besi, dan peralatan. Jadi, bagaimana Anda bisa cepat mendapatkan ini ...

Pilihan Editor

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Infomasi editorial sama dengan artikel berita karena tujuan utamanya adalah untuk mengirimkan informasi. Di bawah payung grafis editorial, ada beberapa tipe yang berbeda, dengan keseimbangan bias dan objektivitas yang berbeda. Berikut adalah beberapa melihat: Badai salju menghantam kota Anda. Koran lokal menciptakan grafik yang menunjukkan hujan salju ...

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bahkan di dunia kabel ini, seniman masih suka sketsa Kabar baik! Sketsa kasar Anda dapat dengan mudah digunakan dalam draf infografis Anda. Anda dapat memindai sketsa atau mengambil gambar sketsa Anda dengan telepon Anda dan mengirim e-mail ke komputer Anda sendiri. Mereka tidak perlu diwarnai, cukup jelas bagi Anda untuk ...

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Infografis yang baik (jelas) harus mencakup seni yang bagus. Ilustrasi mempromosikan alur cerita, menentukan elemen secara visual, dan mencerahkan halaman yang mungkin diisi dengan tipe abu-abu. Ilustrasi bisa berupa gambar fisik, semacam bagan atau grafik, atau bahkan garis waktu. Kehidupan sehari-hari Anda dipenuhi dengan contoh bagaimana ilustrasi ...

Pilihan Editor

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

Tentang Penalaran Melalui bagian Seni Bahasa GED, Anda mungkin diminta untuk menjawab pertanyaan tentang bagian teknis. Ini bisa termasuk petunjuk cara melengkapi, seperti berikut. Pertanyaan dalam artikel ini mengacu pada kutipan berikut dari Russell Hart's Photography For Dummies, 2nd Edition (Wiley). Apa Rahasia Untuk ...

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

Di beberapa titik selama bagian Ilmu Pengetahuan dari Tes GEE, Anda akan diminta untuk membuat jawaban singkat. Anda akan diberi sebuah bagian dan mengajukan pertanyaan yang perlu Anda tanggapi. Buat respons Anda jelas dan ringkas. Bagian Jawaban Jawaban Semua orang mengenal keju cheddar. Orang-orang meletakkan ...

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

Di bagian Ilmu Sosial GED, Anda mungkin diminta untuk menjawab pertanyaan tentang berbagai bentuk media, termasuk siaran berita. Lihatlah contoh berikut di bawah ini. Pertanyaan dalam artikel ini mengacu pada siaran berita berikut. Berita Lingkungan Dunia Selamat malam dan selamat datang di World Environmental News. Cerita kami ini ...