Isi kandungan:
Video: Sqoop Import and Export data from RDMBS and HDFS 2024
Anda dapati dua jenis pangkalan data dokumen untuk projek data besar. Seseorang sering digambarkan sebagai repositori untuk kandungan gaya dokumen penuh. Yang lain adalah pangkalan data untuk menyimpan komponen dokumen untuk simpanan kekal sebagai entiti statik atau untuk pemasangan dinamik bahagian-bahagian dokumen. Struktur dokumen dan bahagiannya disediakan oleh JavaScript Object Notation (JSON) dan / atau JSON Binary (BSON).
Pangkalan data dokumen yang paling berguna apabila anda perlu menghasilkan banyak laporan dan mereka perlu dipasang secara dinamik daripada elemen yang sering berubah.
Pada terasnya, JSON adalah format pertukaran data, berdasarkan subset dari bahasa pengaturcaraan JavaScript. Walaupun sebahagian daripada bahasa pengaturcaraan, ia bersifat tekstual dan sangat mudah dibaca dan ditulis. Ia juga mempunyai kelebihan mudah untuk mengendalikan komputer. Dua struktur asas wujud di JSON, dan mereka disokong oleh banyak, jika tidak semua, bahasa pengaturcaraan moden.
Struktur asas pertama ialah koleksi nama / pasangan nilai, dan mereka diwakili secara pemrograman sebagai objek, rekod, senarai yang disenarai, dan sebagainya. Struktur asas kedua adalah senarai nilai yang diperintahkan, dan mereka diwakili secara pemrograman sebagai tatasusunan, senarai, atau urutan. BSON adalah siri biner struktur JSON yang direka untuk meningkatkan prestasi dan skala.
MongoDB untuk data besar
MongoDB adalah nama projek untuk sistem "hu (mongo) kami". Ia dikekalkan oleh sebuah syarikat yang dipanggil 10gen sebagai sumber terbuka dan tersedia secara bebas di bawah GNU AGPL v3. 0 lesen. Lesen komersil dengan sokongan penuh boleh didapati dari 10gen.
MongoDB terdiri daripada pangkalan data yang mengandungi "koleksi. "Koleksi terdiri daripada" dokumen, "dan setiap dokumen terdiri daripada bidang. Sama seperti dalam pangkalan data hubungan, anda boleh indeks koleksi.
Melakukannya meningkatkan prestasi carian data. Tidak seperti pangkalan data lain, bagaimanapun, MongoDB mengembalikan sesuatu yang disebut "kursor," yang berfungsi sebagai penunjuk kepada data. Ini adalah keupayaan yang sangat berguna kerana ia menawarkan pilihan mengira atau mengklasifikasikan data tanpa mengeluarkannya. Sebagai alternatif, MongoDB menyokong BSON, pelaksanaan biner dokumen JSON.
MongoDB juga merupakan ekosistem yang terdiri daripada unsur-unsur berikut:
-
Perkhidmatan ketersediaan dan replikasi tinggi untuk penskalaan di seluruh rangkaian kawasan tempatan dan luas.
-
Sistem fail berasaskan grid, membolehkan penyimpanan objek besar dengan membahagikannya di antara beberapa dokumen.
-
MapReduce untuk menyokong analisis dan pengumpulan koleksi / dokumen yang berbeza.
-
Perkhidmatan sharding yang mengedarkan pangkalan data tunggal di sekelompok pelayan dalam satu atau beberapa pusat data. Perkhidmatan ini didorong oleh kunci shard. Kunci shard digunakan untuk mengagihkan dokumen dengan bijak dalam pelbagai keadaan.
-
Perkhidmatan pertanyaan yang menyokong pertanyaan ad hoc, pertanyaan diedarkan, dan carian teks penuh.
Pelaksanaan MongoDB yang berkesan termasuk
-
Pengurusan kandungan kelantangan tinggi
-
Rangkaian sosial
-
Pengarkiban
-
Analisa masa nyata
CouchDB untuk data besar
Satu lagi pangkalan data yang tidak popular lagi adalah CouchDB. Seperti MongoDB, CouchDB adalah sumber terbuka. Ia dikekalkan oleh Yayasan Perisian Apache dan disediakan di bawah Lesen Apache v2. 0. Tidak seperti MongoDB, CouchDB direka bentuk untuk meniru web dalam semua aspek.
Sebagai contoh, CouchDB adalah berdaya tahan kepada gangguan rangkaian dan akan terus berjalan dengan baik di kawasan di mana sambungan rangkaian adalah jerawatan. Ia juga di rumah pada telefon pintar atau di pusat data. Ini semua datang dengan beberapa trade-offs. Oleh kerana meniru web yang mendasarinya, CouchDB adalah latensi tinggi yang menyebabkan keutamaan untuk penyimpanan data tempatan.
CouchDB tidak sesuai untuk pelaksanaan yang lebih kecil. Anda mesti menentukan sama ada pertukaran ini boleh diabaikan semasa anda memulakan pelaksanaan data besar anda.
Pangkalan data CouchDB terdiri daripada dokumen yang mengandungi medan dan lampiran serta "penerangan" dokumen dalam bentuk metadata yang secara automatik diselenggarakan oleh sistem. Teknologi yang mendasari memaparkan semua keupayaan ACID. Kelebihan dalam CouchDB melalui relasi adalah bahawa data itu dibungkus dan siap untuk manipulasi atau penyimpanan daripada tersebar merentasi baris dan jadual.
CouchDB juga merupakan ekosistem dengan keupayaan berikut:
-
Compaction: Pangkalan data dimampatkan untuk menghapuskan ruang yang terbuang apabila tahap kekosongan dicapai. Ini membantu prestasi dan kecekapan untuk kegigihan.
-
Lihat model: Mekanisme penapisan, penganjuran, dan pelaporan data menggunakan satu set definisi yang disimpan sebagai dokumen dalam pangkalan data. Anda dapat melihat hubungan antara satu sama lain kepada pangkalan data untuk dilihat, jadi anda boleh membuat pelbagai cara untuk mewakili data yang anda telah "dihiris dan diced. "
-
Perkhidmatan replika dan diedarkan: Penyimpanan dokumen direka untuk menyediakan replikasi bidirectional. Replika separa boleh dikekalkan untuk menyokong pengedaran berasaskan kriteria atau penghijrahan ke peranti dengan sambungan terhad. Replikasi asli adalah rakan sebaya, tetapi anda boleh melaksanakan Master / Hamba, Sarjana / Sarjana, dan lain-lain modaliti replikasi.
Pelaksanaan CouchDB yang berkesan termasuk
-
Pengurusan kandungan kelantangan tinggi
-
Penggredan dari telefon pintar ke pusat data
-
Aplikasi dengan sambungan rangkaian terhad atau perlahan