ElasticSearch 中多个实体绑定的索引结构
从对 ElasticSearch (ES) 的基本了解开始,您会遇到设置的挑战为您的遗留电子商务应用程序提供高效的索引结构,该应用程序具有包含多个实体的复杂数据库结构绑定。
为了应对这一挑战,请考虑扁平化数据库结构。这涉及为产品创建一个包含所有必要信息的索引,消除产品和标志之间的 N:M 关系。
产品索引映射:
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" } } } } }
此映射创建一个产品索引,其中包含 id、标题、价格和标志字段。 flags 字段是表示关联标志的字符串数组。
用于数据检索的 SQL 查询:
要检索产品数据及其关联标志,请使用以下命令SQL查询:
以上是如何优化电子商务中多个实体绑定的 Elasticsearch 索引?的详细内容。更多信息请关注PHP中文网其他相关文章!