Pasti! Berikut ialah terjemahan penjelasan dan contoh untuk Index dan Mapping dalam Elasticsearch:
Index dalam Elasticsearch
In adalah serupa dengan pangkalan data dalam sistem pengurusan pangkalan data tradisional(DBMS) Index. Elasticsearch Ia menyimpan koleksi dokumen berkaitan. Setiap satu Index lazimnya sepadan dengan jenis data tertentu dalam aplikasi anda. Contohnya, dalam aplikasi e-dagang, anda boleh membuat Index untuk menyimpan maklumat tentang produk, satu lagi Index untuk menyimpan maklumat tentang pengguna dan pesanan.
Setiap Index dalam Elasticsearch dibahagikan kepada serpihan yang lebih kecil untuk pengedaran data. Shard ialah sebahagian kecil daripada Index, dan setiap Shard boleh disimpan pada nod berasingan dalam Elasticsearch kelompok. Membahagikan data kepada serpihan mengoptimumkan prestasi carian dan pertanyaan serta meningkatkan kebolehskalaan sistem.
Sebagai contoh, untuk mencipta Index nama baharu products
dalam Elasticsearch, anda boleh menggunakan API atau alatan pengurusan seperti Kibana untuk melaksanakan arahan berikut:
PUT /products
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 2
}
}
Dalam contoh di atas, kami telah mencipta satu Index products
dengan 3 shard
dan 2 replica
setiap satu shard
untuk memastikan ketersediaan dan sandaran data.
Mapping dalam Elasticsearch
Mapping ialah proses menentukan cara Elasticsearch menyimpan dan memproses data dalam Index. Apabila anda menambah dokumen baharu pada Index, Elasticsearch gunakan Mapping untuk menentukan jenis data setiap medan dalam dokumen. Ini membantu Elasticsearch memahami cara memproses dan mencari data dalam medan yang berbeza.
Sebagai contoh, jika kita mempunyai Index products
dan ingin menentukan Mapping untuk medan name
(nama produk) dan price
(harga produk) sebagai jenis teks dan apungan, kita boleh melaksanakan arahan berikut:
PUT /products/_mapping
{
"properties": {
"name": {
"type": "text"
},
"price": {
"type": "float"
}
}
}
Dalam contoh di atas, kami telah menentukan Mapping untuk products
Indeks, dengan name
medan mempunyai jenis data text
dan medan harga mempunyai jenis data float
. Ini memastikan bahawa apabila Elasticsearch menerima dokumen baharu untuk products
Indeks, ia akan menyimpan dan memproses name
medan dan "harga" mengikut jenis data yang ditentukan.
Index dan Mapping memainkan peranan penting dalam mengatur dan mengurus data dalam Elasticsearch. Mereka membantu Elasticsearch memahami dan memproses data dengan cekap, mengoptimumkan operasi carian dan pertanyaan, serta menyediakan keupayaan kebolehskalaan yang fleksibel untuk sistem.