如果您需要將云上Elasticsearch(簡稱ES)中的數據遷移至阿里云ES Serverless中,可通過DataWorks實現。本文介紹通過DataWorks的數據集成服務快速將ES實例中的數據同步到阿里云ES Serverless應用中。
準備工作
創建阿里云ES實例。具體操作,請參見創建阿里云Elasticsearch實例和配置YML參數。
創建阿里云ES Serverless應用。具體操作,請參見創建應用。
創建DataWorks工作空間。具體操作,請參見創建工作空間。
工作空間所在地域與阿里云ES實例一致。
操作步驟
本文以離線同步為例。如果需要在線同步數據,請參見一鍵實時同步至Elasticsearch。
步驟一:購買并創建獨享資源組
購買并創建一個數據集成獨享資源組,并為該資源組綁定專有網絡和工作空間。獨享資源組可以保障數據快速、穩定地傳輸。
登錄DataWorks控制臺。
在左側導航欄,單擊資源組列表。
在獨享資源組頁簽下單擊創建集成資源組,在購買頁面根據業務需要配置相應的參數。
購買地域需要與ES實例所在地域保持一致,獨享資源類型選擇獨享數據集成資源。更多參數說明,請參見購買資源組。
在已創建的獨享資源組的操作列,單擊網絡設置,為該獨享資源組綁定專有網絡。
獨享資源部署在DataWorks托管的專有網絡中,DataWorks需要與ES實例的專有網絡連通才能同步數據。新增專有網絡綁定時選擇ES實例所在的專有網絡、可用區和交換機。更多信息,請參見綁定專有網絡。
在已創建的獨享資源組的操作列,單擊修改歸屬工作空間,為該獨享資源組綁定目標工作空間。
具體操作,請參見綁定歸屬工作空間。
步驟二:添加數據源
將ES實例和ES Serverless應用數據源接入DataWorks的數據集成服務中。
進入DataWorks的數據集成頁面。
登錄DataWorks控制臺。
在左側導航欄,單擊工作空間列表。
在目標工作空間的操作列,選擇
。
在左側導航欄,單擊數據源。
新增ES實例數據源。
在數據源列表頁面,單擊新增數據源。
在新增數據源對話框中,搜索并選擇Elasticsearch。
在新增Elasticsearch數據源對話框,配置ES實例信息。
更多信息,請參見配置Elasticsearch數據源。
單擊測試連通性,連通狀態顯示為可連通時,表示連通成功。
單擊完成。
使用同樣的方式添加ES Serverless數據源。
部分參數說明:
參數
說明
數據源名稱
Elasticsearch
數據源類型
連接串模式
Endpoint
阿里云ES Serverless的應用訪問地址,格式為:http://<實例公網地址>:9200。
說明目前僅支持公網方式訪問。
用戶名
訪問阿里云ES Serverless實例的用戶名,在基本信息處獲取。
密碼
對應用戶的密碼。
步驟三:配置并運行數據同步任務
數據離線同步任務將獨享資源組作為一個可以執行任務的資源,獨享資源組將獲取數據集成服務中數據來源的數據,并將數據寫入數據去向中。
有兩種方式可以配置離線同步任務,文本以向導模式配置離線同步任務為例。您也可以通過腳本模式配置離線同步任務,詳情請參見通過腳本模式配置離線同步任務、Elasticsearch Reader和Elasticsearch Writer。
進入DataWorks的數據開發頁面。
登錄DataWorks控制臺。
在左側導航欄,單擊工作空間列表。
在目標工作空間的操作列,選擇
。
新建一個離線同步任務。
在左側導航欄,選擇
,新建一個業務流程。右鍵單擊新建的業務流程,選擇
。在新建節點對話框中,輸入節點名稱,單擊確認。
網絡與資源配置。
數據來源選擇Elasticsearch,數據源名稱選擇已添加的ES數據源。
我的資源組選擇獨享資源組。
數據去向選擇Elasticsearch,數據源名稱選擇已添加的ES Serverless數據源。
單擊下一步。
配置離線同步任務。詳細信息,請參見通過向導模式配置離線同步任務。
在數據來源和數據去向區域,設置同步的具體對象。
說明建議在數據去向的高級配置中,啟用節點發現保持默認,設置為否。否則同步過程中會提示連接超時。
在字段映射區域中,設置來源字段與目標字段的映射關系。
在通道控制區域中,配置執行任務的相關參數。
(可選)配置任務調度屬性。在頁面右側,單擊屬性,按照需求配置相應的調度參數。
更多信息,請參見任務調度屬性配置概述。
提交并發布任務。
單擊圖標,提交當前配置。
單擊圖標,運行任務。任務運行過程中,可查看運行日志。運行成功后,顯示如下結果。
步驟四:驗證數據同步結果
登錄目標阿里云ES Serverless應用的Kibana控制臺。具體操作,請參見通過Kibana使用Serverless應用。
在左側導航欄,單擊Dev Tools(開發工具)。
在Console中,執行如下命令,查看同步成功的數據。
GET /test_2serverless/_search
說明test_2serverless需要替換為您在數據同步腳本中設置的index字段的值。