Opensearch架構及引擎原理

2021-08-21 17:24:20 字數 957 閱讀 2708

原文出自:   感謝!

開放搜尋(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中

MySQL架構,表儲存引擎及配置

mysql架構,儲存引擎及配置 配置檔案預設位置 linux etc my.cnf 後續都是基於linux來講解 windows my.ini 在mysql安裝的home目錄 資料檔案位置 命令 show variables like datadir 資料檔案格式 常用表儲存引擎 innodb fr...

mysql架構引擎 MySQL引擎

一般來說,mysql有以下幾種引擎 isam myisam heap innodb和berkley 資料庫 一般來說,mysql有以下幾種引擎 isam myisam heap innodb和berkley bdb 注意 不同的版本支援的引擎是有差異的。當然啦,如果你感覺自己的確技術高超,你還能夠使...

遊戲引擎架構

大綱 什麼是架構?軟體架構是乙個系統的草圖,軟體架構描述的物件是直接構成系統的抽象元件。各個元件之間的連線則明確和相對細緻地描述元件之間的通訊。在實現階段,這些抽象元件被細化為實際的元件,比如具體某個類或物件。在物件導向領域中,元件之間的連線通常用介面來實現。什麼是遊戲引擎?引擎 定義元件最重要的是...