Memahami Index dan Mapping dalam Elasticsearch

Tentu! Berikut terjemahan dari penjelasan dan contoh untuk Index dan Mapping di Elasticsearch:

Index di dalam Elasticsearch

In mirip dengan database dalam sistem manajemen basis data tradisional(DBMS) Index. Elasticsearch Ini menyimpan koleksi dokumen terkait. Masing-masing Index biasanya terkait dengan jenis data tertentu dalam aplikasi Anda. Misalnya, dalam aplikasi e-niaga, Anda dapat membuat satu Index untuk menyimpan informasi tentang produk, satu lagi Index untuk menyimpan informasi tentang pengguna dan pesanan.

Setiap Index in Elasticsearch dibagi menjadi pecahan yang lebih kecil untuk distribusi data. Shard adalah bagian kecil dari sebuah Index, dan setiap Shard dapat disimpan di node terpisah dalam sebuah Elasticsearch cluster. Memisahkan data menjadi pecahan mengoptimalkan kinerja pencarian dan kueri serta meningkatkan skalabilitas sistem.

Misalnya, untuk membuat Index nama baru products  di Elasticsearch, Anda dapat menggunakan API atau alat manajemen seperti Kibana untuk menjalankan perintah berikut:

PUT /products  
{  
  "settings": {  
    "number_of_shards": 3,  
    "number_of_replicas": 2  
  }  
}  

Pada contoh di atas, kami telah membuat masing-masing Index products dengan 3 shard dan 2 untuk memastikan ketersediaan dan pencadangan data. replica shard

 

Mapping di dalam Elasticsearch

Mapping adalah proses mendefinisikan bagaimana Elasticsearch menyimpan dan memproses data dalam file Index. Saat Anda menambahkan dokumen baru ke Index, Elasticsearch gunakan Mapping untuk menentukan tipe data setiap bidang dalam dokumen. Ini membantu Elasticsearch memahami cara memproses dan mencari data di berbagai bidang.

Misalnya, jika kita memiliki Index products dan ingin mendefinisikan Mapping bidang name(nama produk) dan price  (harga produk) masing-masing sebagai tipe teks dan float, kita dapat menjalankan perintah berikut:

PUT /products/_mapping  
{  
  "properties": {  
    "name": {  
      "type": "text"  
    },  
    "price": {  
      "type": "float"  
    }  
  }  
}  

Dalam contoh di atas, kami telah menentukan Mapping untuk products  Indeks, dengan name  bidang memiliki tipe data text dan bidang harga memiliki tipe data float. Ini memastikan bahwa ketika Elasticsearch menerima dokumen baru untuk products  Indeks, itu akan menyimpan dan memproses name  bidang dan "harga" sesuai dengan tipe data yang ditentukan.

Index dan Mapping memainkan peran penting dalam mengatur dan mengelola data di Elasticsearch. Mereka membantu Elasticsearch memahami dan memproses data secara efisien, mengoptimalkan operasi penelusuran dan kueri, serta menyediakan kemampuan skalabilitas yang fleksibel untuk sistem.