Opensearch架構及引擎原理

00潤物無聲00發表於2018-03-22

開放搜尋(OpenSearch)是一款結構化資料搜尋託管服務。

特點:單應用億級別文件搜尋 ,毫秒級別查詢延遲 ,萬級別QPS

資料的匯入與查詢

匯入:實時資料進入import子系統的資料匯入模組,之後經過格式轉換和資料解析進入到結構化儲存系統,然後被import子系統的匯出模組,經過處理後放入到實時訊息系統Swift中,HA3訂閱Swift中的資料,拿到資料後在記憶體構建索引並提供服務。

查詢:通過查詢聚合服務,查詢HA3中的資訊並返回。


HA3引擎原理

    分散式實時搜尋系統


Admin是整個系統的大腦,負責節點角色分配、排程決策、FailOver處理、狀態監測、動態擴容等

Amonitor是系統的效能狀態監控模組,收集和展示整個系統所有節點的效能引數

QRS是查詢解析和改寫服務,是系統對外的搜尋介面。Proxy是搜尋代理模組,負責接收QRS的查詢請求,並轉發給下轄的所有Searcher節點

Searcher節點執行實際的查詢匹配計算,將搜尋結果彙總後回傳給QRS

DeployExpress是分散式鏈式資料實時分發系統,負責將離線叢集構建好的索引資料分發到各個Searcher節點.

DeployExpress的最大亮點是將1份資料分發多份拷貝到Searcher節點,其分發時間接近單份拷貝的資料分發時間,而且單節點故障能自動恢復,不影響資料拷貝

部署架構

HA3的多叢集異構部署,一般用來實現冷熱資料分層查詢、異構資料查詢等功能。OpenSearch利用異構邏輯叢集優化資源配置,提升系統服務能力和降低機器成本。不同特性的應用例項被分配在不同的邏輯Cluster中



相關文章