Anahtar / Değer Çifti kavramına aşina mısın? Java veya C # ile aşina olduğunuzu varsayalım, bu bir harita / karma / datatable / KeyValuePair (bu C # durumunda)
Çalışma şekli bu küçük örnek şemada gösterilmiştir:
Color Red
Age 18
Size Large
Name Smith
Title The Brown Dog
Bir anahtarın (solda) ve bir değerin (sağda) olduğu yerde ... bunun bir dize, int veya benzeri olabileceğine dikkat edin. Çoğu KVP nesnesi sağdaki herhangi bir nesneyi saklamanıza izin verir, çünkü bu yalnızca bir değerdir.
Döndürmek istediğiniz belirli bir nesne için her zaman benzersiz bir anahtara sahip olacağınız için, o benzersiz anahtara ilişkin veritabanını sorgulayabilir ve hangi düğümün nesnesine sahip olduğu sonuçlarını geri alabilirsiniz (bu nedenle dağıtılmış sistemler için iyidir, diğer düğümlerin geri dönüşleri ile eşleşen bir değer döndüren ilk düğümlerin yoklanması gibi başka şeyler olduğu için).
Şimdi yukarıdaki örneğim çok basit, işte KVP'nin biraz daha iyi bir sürümü.
user1923_color Red
user1923_age 18
user3371_color Blue
user4344_color Brackish
user1923_height 6' 0"
user3371_age 34
Basit anahtar üretimini görebileceğiniz gibi, "kullanıcı" ifadesini userunique, bir alt çizgi ve nesneyi koymaktır. Yine, bu basit bir varyasyondur, ancak soldaki kısmı tanımlayabildiğimiz ve tutarlı biçimde biçimlendirdiğimiz, değeri çıkarabildiğimiz sürece anlamaya başladığımızı düşünüyorum.
Anahtar değeri (tamam, yalnızca metin gibi bazı sınırlamalar olabilir) veya value özelliği (boyut sınırlaması olabilir) konusunda herhangi bir kısıtlama bulunmadığına dikkat edin, ancak şu ana kadar gerçekten karmaşık sistemlere sahip değildim. Hadi biraz daha ileri gidelim:
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
Fikri elde edersiniz ... tüm bunlar dağıtılmış düğümler üzerinde büyük bir "tabloda" saklanır (her şeyin arkasında matematik vardır) ve dağıtılmış sisteme sadece isminizle ihtiyacınız olan değeri sorarsınız.
En azından, hepsinin nasıl çalıştığını anladım. Yanlış bir şeyler yapabilirim, ama temel olan bu.
zorunlu wikipedia bağlantı http://en.wikipedia.org/wiki/Associative_array