Cara Menyediakan Struktur Indeks ElasticSearch dengan Pengikatan Entiti Berbilang
Pengenalan
Mewujudkan struktur indeks ElasticSearch (ES) yang berkesan adalah penting untuk mengurus dan membuat pertanyaan dengan cekap data. Apabila bekerja dengan pengikatan berbilang entiti, adalah penting untuk mengoptimumkan indeks untuk prestasi carian dan perolehan yang optimum.
Meratakan Struktur Data
Dalam struktur pangkalan data yang disediakan, berbilang jadual digunakan untuk mewakili produk dan bendera yang berkaitan dengannya. Untuk memudahkan indeks ES, adalah disyorkan untuk meratakan struktur data dan menyahnormalkannya. Dengan mencipta dokumen produk yang merangkumi semua maklumat yang berkaitan, termasuk bendera, kami menghapuskan hubungan N:M antara produk dan bendera. Pendekatan ini membolehkan pertanyaan lebih mudah tentang atribut bendera.
Contoh Dokumen Produk
{ "id": "00c8234d71c4e94f725cd432ebc04", "title": "Alpha", "price": 589.0, "flags": ["Sellout", "Top Product"] } { "id": "018357657529fef056cf396626812", "title": "Beta", "price": 355.0, "flags": ["Discount"] } { "id": "01a2c32ceeff0fc6b7dd4fc4302ab", "title": "Gamma", "price": 0.0, "flags": ["Discount"] }
Jenis Pemetaan Produk
Jenis pemetaan ES untuk dokumen produk akan be:
PUT products { "mappings": { "product": { "properties": { "id": { "type": "string", "index": "not_analyzed" }, "title": { "type": "string" }, "price": { "type": "double", "null_value": 0.0 }, "flags": { "type": "string", "index": "not_analyzed" } } } } }
Pertanyaan SQL untuk Mengambil Data
Untuk mengekstrak data yang diperlukan daripada pangkalan data, pertanyaan SQL yang diubah suai diperlukan:
Atas ialah kandungan terperinci Bagaimana untuk Mengoptimumkan Struktur Indeks ElasticSearch untuk Pengikatan Entiti Berbilang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!