Apakah Anda terbiasa dengan konsep Pasangan Kunci / Nilai? Anggap Anda terbiasa dengan Java atau C # ini dalam bahasa sebagai peta / hash / datatable / KeyValuePair (yang terakhir adalah dalam kasus C #)
Cara kerjanya ditunjukkan dalam bagan sampel kecil ini:
Color Red
Age 18
Size Large
Name Smith
Title The Brown Dog
Di mana Anda memiliki kunci (kiri) dan nilai (kanan) ... perhatikan itu bisa berupa string, int, atau sejenisnya. Sebagian besar objek KVP memungkinkan Anda untuk menyimpan objek di sebelah kanan, karena itu hanya sebuah nilai.
Karena Anda akan selalu memiliki kunci unik untuk objek tertentu yang ingin Anda kembalikan, Anda bisa saja meminta basis data untuk kunci unik itu dan mendapatkan hasilnya kembali dari simpul mana pun yang memiliki objek (inilah mengapa bagus untuk sistem terdistribusi, karena ada hal-hal lain yang terlibat seperti polling untuk n node pertama untuk mengembalikan nilai yang cocok dengan node lain kembali).
Sekarang contoh saya di atas sangat sederhana, jadi inilah versi KVP yang sedikit lebih baik
user1923_color Red
user1923_age 18
user3371_color Blue
user4344_color Brackish
user1923_height 6' 0"
user3371_age 34
Jadi seperti yang Anda lihat, pembuatan kunci sederhana adalah dengan menempatkan "pengguna" nomor pengguna unik, garis bawah dan objek. Sekali lagi, ini adalah variasi sederhana, tetapi saya pikir kita mulai memahami bahwa selama kita dapat mendefinisikan bagian di sebelah kiri dan memformatnya secara konsisten, kita dapat menarik nilainya.
Perhatikan bahwa tidak ada batasan pada nilai kunci (ok, bisa ada beberapa batasan, seperti hanya teks) atau pada properti nilai (mungkin ada batasan ukuran) tetapi sejauh ini saya belum memiliki sistem yang benar-benar kompleks. Mari kita coba dan melangkah lebih jauh:
app_setting_width 450
user1923_color Red
user1923_age 18
user3371_color Blue
user4344_color Brackish
user1923_height 6' 0"
user3371_age 34
error_msg_457 There is no file %1 here
error_message_1 There is no user with %1 name
1923_name Jim
user1923_name Jim Smith
user1923_lname Smith
Application_Installed true
log_errors 1
install_path C:\Windows\System32\Restricted
ServerName localhost
test test
test1 test
test123 Brackish
devonly
wonderwoman
value key
Anda mendapatkan idenya ... semua itu akan disimpan dalam satu "tabel" besar pada node terdistribusi (ada matematika di balik itu semua) dan Anda hanya akan meminta sistem terdistribusi untuk nilai yang Anda butuhkan dengan nama.
Paling tidak, itulah pemahaman saya tentang cara kerjanya. Saya mungkin memiliki beberapa hal yang salah, tetapi itulah dasar-dasarnya.
tautan wikipedia wajib http://en.wikipedia.org/wiki/Associative_array