SAP Commerce Cloud 里的 Solr 架构简介
大多數(shù)電子商務(wù)網(wǎng)站都在其網(wǎng)站上提供搜索功能,尤其是用于搜索產(chǎn)品詳細(xì)信息。
產(chǎn)品是任何電子商務(wù)網(wǎng)站中的主要搜索數(shù)據(jù)。
由于 Hybris 用于開(kāi)發(fā)電子商務(wù)網(wǎng)站,因此 Hybris 中的 Solr 用于更快地搜索網(wǎng)站中的產(chǎn)品。
請(qǐng)看下圖,了解如何在 Hybris 中使用 Solr:
Hybris 中的 Solr 概述
每當(dāng)用戶訪問(wèn)店面中的任何數(shù)據(jù)時(shí),它可以來(lái)自hybris DB或Solr,具體取決于該數(shù)據(jù)是否已編入索引。
如果數(shù)據(jù)被索引,它將單獨(dú)存儲(chǔ)在 Solr 中,并且可以從那里訪問(wèn)。
如果數(shù)據(jù)未編入索引,則無(wú)論如何它都可以在Hybris DB 中使用并且可以從那里訪問(wèn)。
Solr和Hybris DB之間的通信是一種方式,因?yàn)镾olr只從Hybris DB獲取數(shù)據(jù),但不會(huì)將任何內(nèi)容寫(xiě)回Hybris DB。
Hybris 調(diào)用Cron 作業(yè)進(jìn)行索引,然后 Solr 從 Hybris DB 獲取源數(shù)據(jù),然后進(jìn)行索引并將索引數(shù)據(jù)保存在其中。
請(qǐng)記住:由于Solr 中的索引數(shù)據(jù),
從Hybris DB訪問(wèn)數(shù)據(jù)將比從Solr訪問(wèn)數(shù)據(jù)花費(fèi)更多的時(shí)間,因此Solr在搜索中比 Hybris DB 更受歡迎。
hybris 中的 Solr 支持 3 種索引策略
2)更新索引
刪除索引
全索引:
在此策略中,將首先刪除所有現(xiàn)有索引文檔,然后從頭開(kāi)始創(chuàng)建新索引。
這需要相當(dāng)長(zhǎng)的時(shí)間,所以不建議經(jīng)常這樣做。
完整索引支持 2 種提交模式
a) 直接模式
在此模式下,如果索引失敗,則先前提交的文檔將可用。
b) 兩階段模式
在這種模式下,如果索引失敗,一切都會(huì)回滾到初始狀態(tài)。
在這種模式下,Solr 創(chuàng)建一個(gè)額外的核心作為臨時(shí)核心,僅用于索引,一旦索引成功,它將與原始核心交換。
因此,如果索引失敗,原始核心將是安全的。
之所以稱(chēng)為兩階段模式,主要是因?yàn)樗谒饕龝r(shí)涉及2 個(gè) Solr 內(nèi)核。
初始核心作為備份保留,另一個(gè)核心作為副本創(chuàng)建,
將在此副本上執(zhí)行索引,如果索引成功,稍后將與原始核心交換。
2)更新索引:
在這個(gè)策略中,只有那些在給定時(shí)間內(nèi)被修改的文檔才會(huì)被索引,其他被索引的文檔保持原樣。如果需要, 可以經(jīng)常執(zhí)行此操作,因?yàn)榕c完整索引策略相比,它消耗的時(shí)間更少
3)刪除索引:
此策略用于完全刪除索引文檔。
應(yīng)該定期執(zhí)行此操作以保持索引數(shù)據(jù)的一致性,因?yàn)槲覀兛赡茉?Solr 中長(zhǎng)期存在不需要的索引數(shù)據(jù)。
眾所周知,通過(guò)impex 執(zhí)行是最好的方法,因?yàn)樗梢栽谒协h(huán)境(DEV、TEST、PROD)中持續(xù)很長(zhǎng)時(shí)間并且可重用,
我們只需要相應(yīng)地在impex文件中定義Solr 配置即可。
產(chǎn)品項(xiàng)目類(lèi)型的索引已由 Hybris 開(kāi)箱即用。
因此,如果我們向Product項(xiàng)目類(lèi)型添加任何新屬性,并且我們希望對(duì)這些新屬性進(jìn)行索引,那么我們需要在solr impex文件中添加這些新屬性。
我們可以在solr impex文件中定義查詢以從hybris DB獲取數(shù)據(jù)以進(jìn)行索引,我們還需要在Solr impex文件中定義字段描述。
Hybris 的優(yōu)點(diǎn)在于,它已經(jīng)提供了用于執(zhí)行完整索引、更新索引和刪除索引的cron 作業(yè)。
我們?cè)?SAP Hybris Backoffice 里查看每個(gè) site 對(duì)應(yīng)的 index:
每種索引可以分配 catalog,貨幣和語(yǔ)言:
索引類(lèi)型:
其中 update cronjob 被調(diào)度成每隔 1 分鐘執(zhí)行一次,以確保 index 和 DB 數(shù)據(jù)始終保持一致。
更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:
總結(jié)
以上是生活随笔為你收集整理的SAP Commerce Cloud 里的 Solr 架构简介的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 鸿蒙 3.0 正式版,华为 nova 4
- 下一篇: 使用 Recipe 安装 SAP Com