Phorge 現代化改造實戰:相容 Elasticsearch 5、6、7 與版本索引結構決定策略

分享對接真實 Elasticsearch 與 Meilisearch 時遭遇的索引解析與映射故障排查心得。

• 本文為 Phorge 現代化改造實戰系列的第十二篇,深入探討在對接真實 Elasticsearch 與 Meilisearch 搜尋後端時所暴露的嚴重相容性故障。 • 隨著 Elasticsearch 版本演進,舊版允許的 mapping type 機制已被移除,導致 Phorge 將業務類型從索引結構轉移至明確維護的 docType 普通欄位。 • 搜尋服務的改造不僅需調整 mapping,還必須同步修正寫入路徑、文檔主體及查詢過濾條件,確保多版本間的行為一致性。 • ES_VERSION 設定扮演著關鍵的相容開關,填錯方向將直接導致索引建立失敗或靜默的分歧錯誤。 • 針對 Meilisearch 的修復則凸顯了主鍵與過濾屬性宣告的差異,主鍵若需參與 id != 邏輯,必須預先宣告於 filterableAttributes 中。

測試證明程式發出了自認為正確的請求,真實後端仍可能拒絕;寫進索引不等於搜得到,必須透過真實環境聯調來打破「同一份誤解的兩側」。


來源:蘇洋博客

閱讀原文 ↗
← 回首頁