Video: Excel Tutorial - Beginner 2024
Sejauh ini, database NoSQL (bukan hanya-SQL) yang paling sederhana Dalam lingkungan data yang besar adalah mereka yang menggunakan model nilai kunci (KVP). Database KVP tidak memerlukan skema (seperti RDBMS) dan menawarkan fleksibilitas dan skalabilitas yang besar.
Database KVP tidak menawarkan kemampuan ACID (Atomicity, Consistency, Isolation, Durability), dan meminta pelaksana untuk memikirkan penempatan data, replikasi, dan toleransi kesalahan karena mereka tidak secara tegas dikendalikan oleh teknologi itu sendiri. Database KVP tidak diketik. Akibatnya, sebagian besar data disimpan sebagai string.
Kunci | Nilai |
---|---|
Warna | Biru |
Libasi | Bir |
Pahlawan | Prajurit |
Ini adalah kumpulan kunci yang sangat sederhana dan nilai. Dalam implementasi data yang besar, banyak individu akan memiliki gagasan yang berbeda tentang warna, persembahan, dan pahlawan.
Kunci | Nilai |
---|---|
FacebookUser12345_Color | Merah |
TwitterUser67890_Color | Brownish |
FoursquareUser45678_Libation | "Anggur putih" |
Google + User24356_Libation | "Martini kering dengan twist " |
LinkedInUser87654_Hero | " Pelaku penjualan teratas " |
Seiring bertambahnya jumlah pengguna, mencatat kunci yang tepat dan nilai yang terkait dapat menjadi tantangan. Jika Anda perlu melacak pendapat jutaan pengguna, jumlah pasangan kunci-nilai yang terkait dengannya dapat meningkat secara eksponensial. Jika Anda tidak ingin membatasi pilihan untuk nilai, representasi string generik KVP memberikan fleksibilitas dan keterbacaan.
Anda mungkin memerlukan bantuan tambahan untuk mengatur data dalam basis data dengan nilai kunci. Sebagian besar menawarkan kemampuan untuk mengumpulkan kunci (dan nilai terkaitnya) ke dalam koleksi. Koleksi dapat terdiri dari sejumlah pasangan kunci-nilai dan tidak memerlukan kontrol eksklusif terhadap elemen KVP individual.
Salah satu database pasangan nilai kunci open source yang paling banyak digunakan disebut Riak. Ini dikembangkan dan didukung oleh sebuah perusahaan bernama Basho Technologies dan tersedia di bawah Apache Software License v2. 0.
Riak adalah implementasi database kunci-nilai yang sangat cepat dan terukur. Ini mendukung lingkungan bervolume tinggi dengan data yang cepat berubah karena ringan. Riak sangat efektif dalam analisis real-time perdagangan jasa keuangan. Ini menggunakan "ember" sebagai mekanisme pengorganisasian untuk koleksi kunci dan nilai.
Implementasi Riak adalah kumpulan simpul fisik atau virtual yang disusun secara peer-to-peer. Tidak ada node utama yang ada, jadi cluster ini tangguh dan sangat terukur.Semua data dan operasi didistribusikan ke seluruh cluster. Cluster yang lebih besar berkinerja lebih baik dan lebih cepat daripada cluster dengan simpul lebih sedikit. Komunikasi dalam cluster diimplementasikan melalui sebuah protokol khusus yang disebut Gossip. Gosip menyimpan informasi status tentang cluster dan berbagi informasi tentang ember.
Riak memiliki banyak fitur dan merupakan bagian dari ekosistem yang terdiri dari:
-
Pengolahan paralel: Menggunakan MapReduce, Riak mendukung kemampuan untuk menguraikan dan menyusun ulang kueri di seluruh cluster untuk analisis real-time dan perhitungan.
-
Tautan dan tautan berjalan: Riak dapat dibangun untuk meniru database grafik menggunakan tautan. Tautan dapat dianggap sebagai koneksi satu arah antara pasangan kunci-nilai. Berjalan (mengikuti) link akan menyediakan peta hubungan antara pasangan kunci-nilai.
-
Pencarian: Riak Search memiliki kemampuan pencarian teks yang patuh, terdistribusi penuh. Ember dapat diindeks untuk resolusi nilai yang cepat terhadap kunci.
-
Indeks sekunder: Pengembang dapat memberi tag nilai dengan satu atau beberapa nilai bidang kunci. Aplikasi kemudian dapat query indeks dan mengembalikan daftar tombol yang cocok. Ini bisa sangat berguna dalam implementasi data yang besar karena operasinya bersifat atom dan akan mendukung perilaku real-time.
Implementasi Riak paling cocok untuk
-
Data pengguna untuk jaringan sosial, komunitas, atau game
-
Penyimpanan data dan penyimpanan dengan volume tinggi, kaya data
-
Lapisan caching untuk menghubungkan database RDBMS dan NoSQL
-
Aplikasi mobile yang membutuhkan fleksibilitas dan ketergantungan