एलेस्टिक्स खोज - मानचित्रण
मैपिंग एक सूचकांक में संग्रहीत दस्तावेजों की रूपरेखा है। यह डेटा प्रकार को परिभाषित करता है जैसे कि geo_point या स्ट्रिंग और दस्तावेज़ों और नियमों में मौजूद फ़ील्ड का प्रारूप गतिशील रूप से जोड़े गए फ़ील्ड की मैपिंग को नियंत्रित करने के लिए।
PUT bankaccountdetails
{
"mappings":{
"properties":{
"name": { "type":"text"}, "date":{ "type":"date"},
"balance":{ "type":"double"}, "liability":{ "type":"double"}
}
}
}
जब हम उपरोक्त कोड चलाते हैं, तो हमें नीचे दी गई प्रतिक्रिया मिलती है -
{
"acknowledged" : true,
"shards_acknowledged" : true,
"index" : "bankaccountdetails"
}
फ़ील्ड डेटा प्रकार
Elasticsearch एक दस्तावेज़ में फ़ील्ड के लिए कई विभिन्न डेटाटिप्स का समर्थन करता है। इलास्टिक्स खोज में खेतों को संग्रहीत करने के लिए उपयोग किए जाने वाले डेटा प्रकारों पर यहां विस्तार से चर्चा की गई है।
कोर डेटा प्रकार
ये मूल डेटा प्रकार हैं जैसे कि पाठ, कीवर्ड, दिनांक, लंबी, डबल, बूलियन या आईपी, जो लगभग सभी प्रणालियों द्वारा समर्थित हैं।
जटिल डेटा प्रकार
ये डेटा प्रकार कोर डेटा प्रकारों का एक संयोजन हैं। इनमें सरणी, JSON ऑब्जेक्ट और नेस्टेड डेटा प्रकार शामिल हैं। नेस्टेड डेटा प्रकार का एक उदाहरण नीचे & minus दिखाया गया है
POST /tabletennis/_doc/1
{
"group" : "players",
"user" : [
{
"first" : "dave", "last" : "jones"
},
{
"first" : "kevin", "last" : "morris"
}
]
}
जब हम उपरोक्त कोड चलाते हैं, तो हमें नीचे दी गई प्रतिक्रिया मिलती है -
{
"_index" : "tabletennis",
"_type" : "_doc",
"_id" : "1",
_version" : 2,
"result" : "updated",
"_shards" : {
"total" : 2,
"successful" : 1,
"failed" : 0
},
"_seq_no" : 1,
"_primary_term" : 1
}
एक अन्य नमूना कोड नीचे दिखाया गया है -
POST /accountdetails/_doc/1
{
"from_acc":"7056443341", "to_acc":"7032460534",
"date":"11/1/2016", "amount":10000
}
जब हम उपरोक्त कोड चलाते हैं, तो हमें नीचे दी गई प्रतिक्रिया मिलती है -
{ "_index" : "accountdetails",
"_type" : "_doc",
"_id" : "1",
"_version" : 1,
"result" : "created",
"_shards" : {
"total" : 2,
"successful" : 1,
"failed" : 0
},
"_seq_no" : 1,
"_primary_term" : 1
}
हम निम्नलिखित कमांड का उपयोग करके उपरोक्त दस्तावेज़ की जांच कर सकते हैं -
GET /accountdetails/_mappings?include_type_name=false
मानचित्रण प्रकारों को हटाना
Elasticsearch 7.0.0 या बाद में बनाए गए सूचकांक अब _default_ मैपिंग को स्वीकार नहीं करते हैं। 6.x में बनाए गए सूचकांक एलिटासाइट 6.x में पहले की तरह काम करते रहेंगे। प्रकार 7.0 में एपीआई में पदावनत किए जाते हैं।