索引
Live Search索引过程读取目录中的产品属性并建立索引,以便快速搜索、过滤和展示产品。
产品属性属性(元数据)确定:
- 如何在目录中使用属性
- 它在商店中的外观和行为
- 数据传输操作中包含的数据
属性元数据的范围是website/store/store view
。
Live Search API允许客户端按Adobe Commerce管理员中将storefront属性 Use in Search
设置为Yes
的任何产品属性进行排序。 启用后,可以为属性设置Search Weight
。
Live Search不为已删除的产品或设置为Not Visible Individually
的产品编制索引。
索引管道
客户端从店面调用搜索服务以检索(可筛选、可排序)索引元数据。 搜索服务只能调用可搜索的产品属性,该属性的 用于分层导航 属性设置为Filterable (with results)
,用于产品列表排序 设置为Yes
。
要构造动态查询,搜索服务需要知道哪些属性是可搜索的,以及它们的权重。 Live Search遵循Adobe Commerce搜索权重(1-10,其中10是最高优先级)。 可以在架构中找到同步并与目录服务共享的数据列表,架构定义于:
vendor/magento/module-catalog-data-exporter/etc/et_schema.xml
- 检查Live Search权利的商人。
- 获取对属性元数据进行了更改的存储视图。
- 存储索引属性。
- 重新索引搜索索引。
完整索引
如果配置了Live Search并在载入期间同步,则生成初始索引最多可能需要60分钟。 大型目录可能需要更长的时间来编制索引。 该进程在cron
提交信息源并结束运行后开始。
以下事件会触发完全同步和索引生成:
- 正在载入目录数据同步
- 属性元数据的更改
例如,将color
属性的Use in Search
属性从No
更改为Yes
将属性元数据更改为searchable=true
,并触发完全同步和重新索引。 更改时,以下属性元数据会触发完全同步和重新索引:
filterableInSearch
searchable
sortable
visibleInSearch
流式产品更新
在上线期间生成初始索引后,将持续同步并重新编制以下增量产品更新的索引:
- 添加到目录的新产品
- 产品属性值的更改
例如,将新样本值添加到color
属性会作为流式产品更新处理。
流式更新工作流:
- 更新的产品已从Adobe Commerce实例同步到目录服务。
- 索引服务不断从目录服务中查找产品更新。 更新的产品在到达目录服务时会编制索引。
- 产品更新可能最多需要15分钟才能在Live Search中可用。
客户端搜索
Live Search API允许客户端通过将storefront属性、产品列表 中用于排序的Yes
来按任何可排序的产品属性进行排序。 根据主题,此设置会导致属性作为选项包含在目录页面上的排序方式分页控件中。 Live Search最多可以为200个产品属性编制索引,其中storefront属性可搜索和过滤。
索引元数据存储在索引管道中,可供搜索服务访问。
可排序的属性工作流
- 客户端调用搜索服务。
- 搜索服务调用搜索管理员服务。
- 搜索服务调用索引管道。
已为所有产品编制索引
此列表中字段的顺序反映了导出产品数据中的典型列顺序。
environment_id
website_code
store_code
store_view_code
product_id
sku
name
type
displayable
deleted
url
currency
meta_description
meta_keyword
meta_title
description
short_description
weight
image
small_image
thumbnail_image
prices
in_stock
low_stock
以下字段已针对所有可配置产品编制索引:
childrenSkus