本文介紹如何快速搭建支援線上多表join功能的執行個體。
前提條件
操作步驟
建立併購買應用。
配置應用:定義應用結構->定義索引結構->配置資料來源->建立成功。
搜尋測試。
建立應用
在OpenSearch-高效能檢索版執行個體管理頁,單擊建立執行個體:

選擇執行個體類型,包括商品版本、商品類型、地區和可用性區域、應用程式名稱、叢集偏好、儲存容量、計算資源,單擊立即購買:

商品版本選擇高效能檢索版。

商品類型可選:包月包年或隨用隨付。
地區和可用性區域:使用者按需選擇。
應用程式名稱:可自訂。
叢集偏好:獨享儲存型 (固定)。
儲存容量和計算資源保持預設,或按需購買。
確認訂單,勾選服務合約後,單擊立即開通:

開通完成後,可以在控制台列表頁,查看待配置狀態的執行個體:

配置應用
在控制台列表頁,找到新購的執行個體,在右側操作欄中單擊配置:

定義應用結構:目前提供了 4 種方式的應用結構建立方式。
通過模板建立應用結構,使用者可以將自己定義的應用結構建立成模板,可以通過已有模板快速建立出一個新的應用。
通過上傳文檔建立應用結構,使用者可以上傳已有的資料檔案(僅支援JSON格式),系統會自動解析並建立出初始的應用結構(注意欄位類型等需要重新定義)。
通過資料來源建立應用結構,適用於RDS、MaxCompute等資料來源同步情境。此功能可快速從源表結構產生初始應用結構,減少手動構造工作量並降低出錯機率。具體詳見資料來源配置。
通過手動建立應用結構,快速測試接入時使用,這裡以該方式為例,建立2張表:

欄位類型的選擇可以參考OpenSearch-高效能檢索版表結構。
注意:
說明表總數不能超過系統最大限制8個。
索引結構配置,不同的表需要單獨配置:(每張表都需要單獨配置)
說明FLOAT,FLOAT_ARRAY,DOUBLE,DOUBLE_ARRAY 不支援設定索引欄位。
TEXT,SHORT_TEXT 不支援設定屬性欄位。
分列鍵配置:

OpenSearch執行個體,後端是分布式的部署,在多表情境下,需要多個表join的資料在同一台機器上,如下圖:
引擎在build索引時根據使用者配置的分列進行hash,將hash結果相同的記錄存放在同一列。查詢時,查詢節點向各列發起請求,各列根據使用者的SQL進行內部join操作,不進行跨列join。最終,每列將join結果返回給查詢節點,查詢節點匯總後將結果返回給使用者。
說明系統預設已採用主鍵分列;
只能選擇一個欄位為分欄欄位;
分欄欄位需要保證全域值唯一;
分欄欄位支援的類型有:INT、LITERAL;
如需非主鍵join,必須在分列鍵中配置需要join的欄位;
資料來源配置,可根據高效能檢索版支援的資料來源類型進行配置:

單擊添加資料來源,配置對應的資料來源:

配置完成後,單擊完成:

在執行個體詳情頁中,等待線下應用狀態為正常後,即可進行查詢:
搜尋測試
線下應用狀態正常,並切換上線後,可在搜尋測試頁進行搜尋測試:

目前多表線上join方式,僅支援SQL查詢:
詳細的SQL文法可參考SQL支援。