首頁 >資料庫 >mysql教程 >如何在電子商務應用程式中為多個實體綁定建立 ElasticSearch 索引?

如何在電子商務應用程式中為多個實體綁定建立 ElasticSearch 索引?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-06 07:15:12175瀏覽

How to Structure an ElasticSearch Index for Multiple Entity Bindings in an E-commerce Application?

設定具有多個實體綁定的ElasticSearch 索引結構

問題:

將現有 (e 實作Elastic ES) - 使用MySQL資料庫的商業應用程序,應該如何設定索引結構來表示涉及多個的複雜資料庫模式實體綁定?

答案:

非規範化方法:

要處理多個實體綁定,建議使用非規範化方法。透過在文件和實體之間建立一對一映射來扁平化資料結構。在本例中,建立一個名為「product」的文件類型,其中包含「Products」、「Flags」和「flagsProducts」表中的所有必要欄位。

產品文件結構:

{
   "id": "00c8234d71c4e94f725cd432ebc04",
   "title": "Alpha",
   "price": 589.0,
   "flags": ["Sellout", "Top Product"]
}

ElasticSearch映射:

「產品」索引的對應類型類似於:

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"
                }
            }
        }
    }
}

用於資料擷取的SQL查詢:

要從資料庫中提取必要的數據,請使用以下 SQL 查詢:

以上是如何在電子商務應用程式中為多個實體綁定建立 ElasticSearch 索引?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn