日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

MaxCompute數(shù)據(jù)離線同步至ClickHouse

更新時(shí)間:

本文以MaxCompute離線同步寫(xiě)入ClickHouse場(chǎng)景為例,為您介紹ClickHouse離線同步在數(shù)據(jù)源配置、網(wǎng)絡(luò)聯(lián)通、同步任務(wù)配置方面的最佳實(shí)踐。

背景信息

云數(shù)據(jù)庫(kù)ClickHouse是面向聯(lián)機(jī)分析處理的列式數(shù)據(jù)庫(kù)。數(shù)據(jù)集成支持從ClickHouse同步數(shù)據(jù)到其他目標(biāo)端,也支持從其他目標(biāo)端同步數(shù)據(jù)到ClickHouse。本文以MaxCompute離線同步寫(xiě)入ClickHouse為例,為您介紹ClickHouse離線同步的完整流程。

使用限制

  • ClickHouse離線同步僅支持阿里云ClickHouse。

  • ClickHouse離線同步僅支持使用獨(dú)享數(shù)據(jù)集成資源組或新版資源組(通用型資源組)。

獲取ClickHouse集群信息

進(jìn)入ClickHouse產(chǎn)品控制臺(tái)。找到您要進(jìn)行數(shù)據(jù)同步的ClickHouse集群,在集群信息頁(yè)面獲取ClickHouse集群的外網(wǎng)地址、內(nèi)網(wǎng)地址、HTTP端口號(hào)、VPC ID、Vswitch ID、可用區(qū)。clickhouse基本信息

準(zhǔn)備資源組并與ClickHouse網(wǎng)絡(luò)連通

在進(jìn)行數(shù)據(jù)同步前,需要完成您的資源組和ClickHouse集群配置網(wǎng)絡(luò)連通

添加數(shù)據(jù)源

新建MaxCompute數(shù)據(jù)源

創(chuàng)建MaxCompute數(shù)據(jù)源,操作詳情請(qǐng)參見(jiàn)創(chuàng)建MaxCompute數(shù)據(jù)源

新建ClickHouse數(shù)據(jù)源

在DataWorks數(shù)據(jù)源管理頁(yè)面,單擊新建數(shù)據(jù)源,根據(jù)界面提示新建ClickHouse數(shù)據(jù)源。配置要點(diǎn)如下。

  • JDBC URL:格式為jdbc:clickhouse://<ip>:<port>/<dbname>,其中:

    • <ip>:需替換為您ClickHouse集群的內(nèi)網(wǎng)地址或外網(wǎng)地址。

      • 如果您選擇使用VPC內(nèi)網(wǎng)聯(lián)通資源組和ClickHouse,則此處填寫(xiě)ClickHouse內(nèi)網(wǎng)地址。

      • 如果您選擇使用公網(wǎng)聯(lián)通資源組和ClickHouse,則此處填寫(xiě)ClickHouse外網(wǎng)地址。

    • <port>:需替換為您ClickHouse集群的HTTP端口號(hào)(通常為8123)。

    • <dbname>:需替換為您要同步的ClickHouse庫(kù)名。

  • 用戶名、密碼:為對(duì)應(yīng)ClickHouse庫(kù)有訪問(wèn)權(quán)限的用戶名和密碼。

  • 測(cè)試連通性:選擇您已經(jīng)完成與ClickHouse網(wǎng)絡(luò)聯(lián)通的資源組,確保連通狀態(tài)為可連通

    說(shuō)明

    如果您使用的是獨(dú)享數(shù)據(jù)集成資源組,完成上述步驟中的網(wǎng)絡(luò)連通后,僅可實(shí)現(xiàn)ClickHouse與對(duì)應(yīng)獨(dú)享數(shù)據(jù)集成資源組的網(wǎng)絡(luò)聯(lián)通。如您期望完成ClickHouse與數(shù)據(jù)服務(wù)資源組、調(diào)度資源組的網(wǎng)絡(luò)聯(lián)通,需分別進(jìn)行網(wǎng)絡(luò)連通的配置與連通測(cè)試。

新建離線同步任務(wù)

在數(shù)據(jù)開(kāi)發(fā)(DataStudio)頁(yè)面的某個(gè)業(yè)務(wù)流程下,新建一個(gè)離線同步節(jié)點(diǎn),根據(jù)界面提示配置節(jié)點(diǎn)的路徑、名稱等信息,操作詳情請(qǐng)參見(jiàn)通過(guò)向?qū)J脚渲秒x線同步任務(wù)

配置數(shù)據(jù)來(lái)源:MaxCompute側(cè)參數(shù)

配置離線同步節(jié)點(diǎn)的數(shù)據(jù)來(lái)源相關(guān)參數(shù)。本實(shí)踐將MaxCompute數(shù)據(jù)增量同步至ClickHouse,數(shù)據(jù)來(lái)源為MaxCompute表,配置要點(diǎn)如下所示。來(lái)源MaxCompute

配置項(xiàng)

配置要點(diǎn)

數(shù)據(jù)源

選擇上述新建的MaxCompute數(shù)據(jù)源。如果您使用的是標(biāo)準(zhǔn)類(lèi)型的DataWorks工作空間,會(huì)分別顯示開(kāi)發(fā)和生產(chǎn)項(xiàng)目的名稱。

選擇待同步的MaxCompute表。如果您使用的是標(biāo)準(zhǔn)類(lèi)型的DataWorks工作空間,請(qǐng)確保在MaxCompute的開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境中存在同名且表結(jié)構(gòu)一致的MaxCompute表。

說(shuō)明

如果:

  • 開(kāi)發(fā)環(huán)境不存在待同步的MaxCompute表,則選擇此處配置離線同步節(jié)點(diǎn)的去向表的下拉框中無(wú)法搜到待同步表。

  • 生產(chǎn)環(huán)境不存在待同步的MaxCompute表,同步任務(wù)提交發(fā)布后,數(shù)據(jù)同步任務(wù)調(diào)度運(yùn)行時(shí)將會(huì)由于無(wú)法找到待同步表而導(dǎo)致同步任務(wù)運(yùn)行失敗。

  • 開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境的表結(jié)構(gòu)不一致,同步任務(wù)提交發(fā)布后,同步任務(wù)實(shí)際調(diào)度運(yùn)行時(shí)的列對(duì)應(yīng)關(guān)系,可能與此處離線同步節(jié)點(diǎn)配置的列對(duì)應(yīng)關(guān)系不一致,最終導(dǎo)致數(shù)據(jù)寫(xiě)入不正確。

分區(qū)信息

您可以填入分區(qū)列的取值。

  • 取值可以是固定值,如ds=20220101

  • 取值可以是調(diào)度系統(tǒng)參數(shù),如ds=${bizdate},當(dāng)任務(wù)運(yùn)行時(shí),會(huì)自動(dòng)替換調(diào)度系統(tǒng)參數(shù)。

其他參數(shù)保持默認(rèn)即可。

配置數(shù)據(jù)去向:ClickHouse側(cè)參數(shù)

本實(shí)踐將數(shù)據(jù)同步至ClickHouse,數(shù)據(jù)去向是ClickHouse。配置要點(diǎn)如下。去向ClickHouse

配置項(xiàng)

配置要點(diǎn)

數(shù)據(jù)源

選擇上述新建的ClickHouse數(shù)據(jù)源。

選擇待同步的Clickhouse表。建議對(duì)于要進(jìn)行數(shù)據(jù)同步的表,ClickHouse數(shù)據(jù)源開(kāi)發(fā)和生產(chǎn)環(huán)境保證具有相同的表結(jié)構(gòu)。

說(shuō)明

此處會(huì)展示ClickHouse數(shù)據(jù)源開(kāi)發(fā)環(huán)境地的表列表和表結(jié)構(gòu),如果您的ClickHouse數(shù)據(jù)源開(kāi)發(fā)和生產(chǎn)環(huán)境的表定義不同,則可能出現(xiàn)任務(wù)在開(kāi)發(fā)環(huán)境配置正常但提交生產(chǎn)運(yùn)行后報(bào)錯(cuò)表不存在、列不存在的問(wèn)題。

導(dǎo)入前準(zhǔn)備語(yǔ)句導(dǎo)入后完成語(yǔ)句

您可以在執(zhí)行數(shù)據(jù)同步任務(wù)的前后按需執(zhí)行SQL語(yǔ)句。比如在按天進(jìn)行數(shù)據(jù)同步前清理對(duì)應(yīng)天分區(qū)的數(shù)據(jù),保證本次數(shù)據(jù)寫(xiě)入前對(duì)應(yīng)分區(qū)是無(wú)數(shù)據(jù)的。

批量插入字節(jié)大小批量插入條數(shù)

數(shù)據(jù)同步寫(xiě)入ClickHouse時(shí)采用攢批寫(xiě)入方式,此處是攢批的字節(jié)數(shù)上限、條數(shù)上限。如果讀取到的數(shù)據(jù)達(dá)到攢批的字節(jié)數(shù)上限或條數(shù)上限,則認(rèn)為攢夠一批,每攢夠一批則寫(xiě)入一批數(shù)據(jù)到ClickHouse。

批量插入字節(jié)大小建議值為16777216(16MB),批量插入條數(shù)建議按照您單條記錄的大小調(diào)整為一個(gè)較大值,從而依靠批量插入字節(jié)大小觸發(fā)批次寫(xiě)入。

例如單條記錄大小為1KB,批量插入字節(jié)大小設(shè)置為16777216(16MB),批量插入條數(shù)設(shè)置為20000(大于16MB/1KB=16384),則會(huì)通過(guò)批量插入字節(jié)大小觸發(fā)寫(xiě)入,每達(dá)到16MB寫(xiě)入一次。

批量寫(xiě)入ClickHouse異常時(shí)

批量寫(xiě)入ClickHouse異常時(shí),可以選擇異常處理策略:

  • 嘗試單條寫(xiě)入,單條寫(xiě)入仍異常則計(jì)入臟數(shù)據(jù):?jiǎn)螚l寫(xiě)入可用于識(shí)別少量臟數(shù)據(jù)但單條寫(xiě)入對(duì)ClickHouse負(fù)載影響較大,需要您謹(jǐn)慎選擇。

  • 同步任務(wù)失敗退出:出于ClickHouse穩(wěn)定性考慮,可以選擇寫(xiě)入異常時(shí)任務(wù)失敗退出,通過(guò)配置告警及時(shí)知曉并人工介入處理相關(guān)異常。

  • 批量數(shù)據(jù)計(jì)入臟數(shù)據(jù):如果想要保證任務(wù)運(yùn)行完成并可接受批量數(shù)據(jù)丟棄,可選擇將批量數(shù)據(jù)計(jì)入臟數(shù)據(jù),通過(guò)臟數(shù)據(jù)允許條數(shù)控制任務(wù)是否退出。

配置字段映射

選擇數(shù)據(jù)來(lái)源和數(shù)據(jù)去向后,需要指定讀取端和寫(xiě)入端列的映射關(guān)系。您可以選擇同名映射、同行映射、取消映射或自動(dòng)排版。

配置通道控制

設(shè)置任務(wù)同步并發(fā)數(shù),可容忍的臟數(shù)據(jù)條數(shù)等。

調(diào)整內(nèi)存參數(shù)

如果您在并發(fā)調(diào)大后同步速率增長(zhǎng)不明顯,可以嘗試手工調(diào)整同步任務(wù)內(nèi)存參數(shù)。調(diào)整方式如下。調(diào)整內(nèi)存參數(shù)

  1. 轉(zhuǎn)換任務(wù)為腳本模式。

  2. 在腳本JSON段的setting中增加jvmOption參數(shù),參數(shù)形如-Xms${heapMem} -Xmx${heapMem} -Xmn${newMem}

向?qū)J较孪到y(tǒng)計(jì)算的${heapMem}的取值為768MB+(并發(fā)數(shù)-1)*256 MB。建議您在腳本模式中將${heapMem}設(shè)置為更大值,并將${newMem}設(shè)置為${heapMem}的三分之一。如并發(fā)數(shù)為8時(shí),向?qū)J侥J(rèn)計(jì)算的${heapMem}為2560MB,腳本模式中可設(shè)置更大值,如設(shè)置jvmOption-Xms3072m -Xmx3072m -Xmn1024m

調(diào)度配置

單擊右側(cè)的調(diào)度配置,本實(shí)踐示例涉及的調(diào)度配置要點(diǎn)如下。通用的調(diào)度配置指導(dǎo)及全量調(diào)度相關(guān)參數(shù)的介紹請(qǐng)參見(jiàn)調(diào)度配置

  • 重跑屬性。

    可根據(jù)業(yè)務(wù)需求設(shè)置不同的重跑策略,設(shè)置失敗可重跑策略可以有效降低因?yàn)榫W(wǎng)絡(luò)抖動(dòng)等偶發(fā)問(wèn)題導(dǎo)致的任務(wù)失敗。

  • 配置調(diào)度依賴。

    可根據(jù)業(yè)務(wù)需求設(shè)置不同的調(diào)度依賴。您可以通過(guò)設(shè)置依賴上一周期的本節(jié)點(diǎn),保證本節(jié)點(diǎn)多個(gè)調(diào)度周期的任務(wù)實(shí)例是依次執(zhí)行完成的,避免多任務(wù)實(shí)例同時(shí)調(diào)度運(yùn)行。

數(shù)據(jù)集成資源組配置

選擇在創(chuàng)建數(shù)據(jù)源時(shí),與ClickHouse數(shù)據(jù)源、MaxCompute數(shù)據(jù)源都完成連通性檢查的數(shù)據(jù)集成資源組。資源組配置

試運(yùn)行與提交執(zhí)行任務(wù)

試運(yùn)行

單擊頂部的運(yùn)行運(yùn)行帶參運(yùn)行帶參運(yùn)行,可以試運(yùn)行并查看同步結(jié)果是否符合預(yù)期。

  • 帶參運(yùn)行可以針對(duì)任務(wù)配置中使用的調(diào)度系統(tǒng)參數(shù)進(jìn)行替換。

  • 如果是標(biāo)準(zhǔn)項(xiàng)目,此時(shí)會(huì)在開(kāi)發(fā)環(huán)境運(yùn)行同步任務(wù),源端使用MaxCompute的開(kāi)發(fā)項(xiàng)目開(kāi)發(fā)表,目標(biāo)端使用ClickHouse的開(kāi)發(fā)環(huán)境JDBC URL和庫(kù)表。

提交和發(fā)布任務(wù)

試運(yùn)行沒(méi)有問(wèn)題后,您可以保存離線節(jié)點(diǎn)的配置,并提交發(fā)布至運(yùn)維中心,后續(xù)離線同步任務(wù)將會(huì)周期性(分鐘或小時(shí)或天)將Kafka的數(shù)據(jù)寫(xiě)入MaxCompute的表中。提交發(fā)布的操作請(qǐng)參見(jiàn)發(fā)布任務(wù)

發(fā)布成功后,您可以在運(yùn)維中心查看周期調(diào)度運(yùn)行結(jié)果、進(jìn)行補(bǔ)數(shù)據(jù)等操作。