本文為您介紹如何LogHub(SLS)實時ETL同步至Hologres任務。
新建數據源
配置LogHub(SLS)數據源
您可以手動添加LogHub(SLS)數據源至DataWorks,詳情請參見配置LogHub(SLS)數據源。
新建Hologres數據源
獲取Hologres數據源信息
進入Hologres產品控制臺。找到您要進行數據同步的Hologres數據源,在實例詳情界面獲取到Hologres的實例ID,地域信息,數據源地址。如果Hologres開通了指定VPC的網絡鏈接,則可以獲取到VPC ID、Vswitch ID。
手動添加Hologres數據源
詳情請參見創建Hologres數據源。
Hologres綁定白名單
進入HoloWeb,找到您要進行設置的hologres數據源,在安全中心界面,單擊IP白名單按鈕。
任務配置
將LogHub(SLS)單Logstore中的數據同步至Hologres的數據庫中。
創建同步任務
進入數據集成頁面。
登錄DataWorks控制臺,切換至目標地域后,單擊左側導航欄的數據集成,在下拉框中選擇對應工作空間后單擊進入數據集成。
在數據集成同步任務頁面的創建同步任務區域,選擇來源類型LogHub、去向類型Hologres,然后點擊開始創建。
配置同步任務基本信息。
新任務名稱:配置同步任務名稱。
同步類型:選擇單表實時。
網絡與資源配置:在下拉框中分別選擇已創建的LogHub數據源、Hologres數據源、資源組,單擊測試所有連通性,保障資源組與數據源之間的網絡連通性。
配置SLS來源信息。
單擊頁面上方的SLS,編輯SLS來源信息。
選擇需要同步的Logstore。
單擊右上角的數據采樣。
在數據輸出預覽對話框中指定好開始時間和采樣條數,單擊開始采集按鈕,可以對指定的Logstore進行數據采樣,預覽Logstore中的數據,為后續數據處理節點的數據預覽和可視化配置提供輸入。
輸出字段配置。
根據采樣的結果提煉出字段(包括SLS的系統字段、TAG、普通字段),數據采樣可能不會采樣出所有字段,您可以通過單擊手動增加輸出字段添加未采樣到的字段。
說明在輸出字段配置界面也可以刪除不需要同步的字段。如果您的字段存儲數據為二進制數據,可以在數據類型列將數據類型切換為BINARY。
編輯數據處理節點。
單擊圖標可以增加數據處理方式。目前提供五種可選數據處理方式,您可根據需要進行順序編排,在任務運行時會按照編排的先后順序進行數據處理,五種數據處理方式分別為:數據脫敏、字符串替換、數據過濾、JSON解析和字段編輯與賦值。
說明所有數據處理節點都必須以單路輸入并且以單路輸出,不支持多路輸出。
每完成一個數據處理節點配置,您可以單擊右上角數據輸出預覽按鈕,在彈出對話框中,單擊重新獲取上游輸出,模擬得到Logstore采樣數據經過當前數據處理節點前置節點處理后的結果,得到當前數據處理節點輸入數據。
在數據輸出預覽窗口,您可以根據需要修改輸入數據,或單擊手工構造數據按鈕自定義輸入數據,再單擊預覽按鈕,查看當前數據處理節點對數據的處理結果,當數據處理節點對輸入數據處理異常,或產生臟數據時,也會反饋出異常信息,能夠幫助您快速評估數據處理節點配置的正確性,以及是否得到預期結果。
配置Hologres去向信息。
單擊頁面上返回的Hologres,編輯Hologres去向源信息。
配置基本信息。
選擇需要寫入的Hologres Schema。
選擇需要寫入的Hologres表是自動建表還是使用已有表。
填寫或者選擇要寫入的Hologres表名。
編輯表結構。
當選擇自動建表時,您需要單擊編輯表結構按鈕,在彈框中編輯表結構。同時,支持您單擊根據上游節點輸出列重新生成表結構按鈕,自動根據上游節點輸出列,生成表結構。您可以在自動生成的表結構中選擇一列配置為主鍵。您可根據需要選擇分區列(分區表會使用每一個分區值創建一個物理子表,一般情況下不需要選擇分區字段),根據需要調整建表屬性,單擊保存按鈕即可保存建表配置。
說明Hologres表必須有主鍵,否則無法保存配置。
配置字段映射。
保存建表結構或選擇已有表時,會自動按照同名映射原則生成上游列與Hologres表列之間的映射,可根據需要進行調整秒支持一個游列映射到多個Hologres表列,不允許多個上游列映射到一個Hologres表列,當上游列未配置到Hologres表列的映射時,對應列不會寫入Hologres表。
配置上游留入動態字段處理策略。
上游流入動態字段處理策略用于控制上游數據處理節點(目前可以生成動態列的數據處理節點只有JSON解析)生成動態列的處理方式,如果在JSON解析節點配置了動態輸出字段,則在Hologres節點中會出現上游流入動態字段處理策略配置項。動態列指在任務配置中未明確定義列名,而是根據源端輸入數據內容的不同,能夠解析出不同列名和列值,并輸出到Hologres節點的列。
高級參數配置。
單擊右上角的高級參數配置,對同步任務運行時并行度和資源配置,您可以根據Logstore數據流量和分區數量確定對應配置項取值,建議可以按照如下簡單規則進行配置:
任務讀并發=Logstore分區數
任務寫并發=Logstore分區數
任務內存占用(GB)=1.5G+(256MB * Logstore分區數)
說明由于同步任務的性能表現和資源占用受到實際源端和目標端系統數據流量、網絡環境和系統負載等因素影響,您可以基于上述簡單規則,根據實際情況進行調整和修改。
模擬運行
完成上述所有任務配置后,您可以通過模擬運行功能,模擬整個任務針對少量采樣數據的處理,都得到數據寫入Hologres表后的結果。當任務存在配置錯誤、模擬運行過程中異常或者產生臟數據時會實時反饋出異常信息,能夠幫助您快速評估任務配置的正確性和是否能得到預期結果。
單擊頁面右上角模擬運行,在彈出對話框中設置針對Logstore的采樣參數(開始時間和采樣條數)。
單擊開始采樣得到采樣數據。
單擊預覽按鈕,模擬整個任務針對少量采樣數據的處理。
完成上述所有任務配置后,并完成模擬運行驗證配置正確、寫入結果符合預期,單擊完成配置按鈕,完成同步任務配置。
任務運維
啟動同步任務
完成配置之后,界面會自動跳轉到任務列表,您可以單擊對應任務的啟動按鈕,啟動同步任務。
查看任務運行狀態
創建完成同步任務后,您可以在同步任務頁面,找到已創建的同步任務,單擊任務名稱或執行概況空白處,查看任務的運行詳情。任務詳情分為以下三個部分:
基本信息:您可以看到同步任務的數據源信息、綁定的資源組以及同步方案等信息。
執行狀態:Loghub到Hologres的實時同步任務分為結構遷移和實時數據同步兩個步驟,您可以查看任務執行狀態。
詳細信息:您可以查看結構遷移和實時同步的執行詳情。
結構遷移中包含目標表的創建方式(已有表或自動建表),如果是自動建表,將會為您展示建表的DDL。
實時同步中包含實時同步的統計信息,包含實時的讀寫流量、臟數據、Failover和運行日志。
任務重跑
直接重跑
不修改任務配置,直接單擊同步任務操作列的更多>重跑,重新運行一次從結構遷移到啟動實時同步的流程。
修改后重跑
編輯任務,進行修改操作后, 單擊完成。這個時候任務的操作會變成應用更新,點擊應用更新會直接觸發修改后的任務重跑,實時同步任務會按照新的配置運行。