国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【實(shí)戰(zhàn)-01】flink cdc 實(shí)時(shí)數(shù)據(jù)同步利器

這篇具有很好參考價(jià)值的文章主要介紹了【實(shí)戰(zhàn)-01】flink cdc 實(shí)時(shí)數(shù)據(jù)同步利器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

什么是flink cdc?

cdc github源碼地址
cdc官方文檔

對(duì)很多初入門(mén)的人來(lái)說(shuō)是無(wú)法理解cdc到底是什么個(gè)東西。 有這樣一個(gè)需求,比如在mysql數(shù)據(jù)庫(kù)中存在很多數(shù)據(jù),但是公司要把mysql中的數(shù)據(jù)同步到數(shù)據(jù)倉(cāng)庫(kù)(starrocks), 數(shù)據(jù)倉(cāng)庫(kù)你可以理解為存儲(chǔ)了各種各樣來(lái)自不同數(shù)據(jù)庫(kù)中表。
數(shù)據(jù)的同步目前對(duì)mysql來(lái)說(shuō)比較常見(jiàn)是方式是使用:datax 和 canal配合, 為什么需要這兩個(gè)框架配合呢?
因?yàn)閐atax不支持實(shí)時(shí)的同步, datax只能定義一個(gè)范圍去同步,而且同步結(jié)束后程序就結(jié)束了。但是我想要的是數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)近乎實(shí)時(shí)的和mysql中的數(shù)據(jù)保持一致又該怎么辦? 答案是再加上canal, canal和datax相反,它只支持指定一個(gè)binlog同步,然后會(huì)一直同步到現(xiàn)在,并且程序不會(huì)結(jié)束,會(huì)一直同步。 這樣datax+canal就可以達(dá)到實(shí)時(shí)同步的功能。
這是業(yè)界比較常用的同步方式,datax同步歷史數(shù)據(jù),canal+kafka同步最新的數(shù)據(jù),而且還要有一個(gè)程序去讀取kafka中的binlog json數(shù)據(jù)(可以用flink或者spark又或者是flume)??梢钥吹竭@個(gè)鏈路比較長(zhǎng),不是很好。
下面是目前常見(jiàn)的cdc同步方案以及對(duì)比:
【實(shí)戰(zhàn)-01】flink cdc 實(shí)時(shí)數(shù)據(jù)同步利器

  1. DataX 不支持增量同步,Canal 不支持全量同步。雖然兩者都是非常流行的數(shù)據(jù)同步工具,但
    在場(chǎng)景支持上仍不完善。
  2. 在全量+增量一體化同步方面,只有 Flink CDC、Debezium、Oracle Goldengate 支持較好。
  3. 在架構(gòu)方面,Apache Flink 是一個(gè)非常優(yōu)秀的分布式流處理框架,因此 Flink CDC 作為
    Apache Flink 的一個(gè)組件具有非常靈活的水平擴(kuò)展能力。而 DataX 和 Canal 是個(gè)單機(jī)架構(gòu),
    在大數(shù)據(jù)場(chǎng)景下容易面臨性能瓶頸的問(wèn)題。
  4. 在數(shù)據(jù)加工的能力上,CDC 工具是否能夠方便地對(duì)數(shù)據(jù)做一些清洗、過(guò)濾、聚合,甚至關(guān)聯(lián)打
    寬? Flink CDC 依托強(qiáng)大的 Flink SQL 流式計(jì)算能力,可以非常方便地對(duì)數(shù)據(jù)進(jìn)行加工。而
    Debezium 等則需要通過(guò)復(fù)雜的 Java 代碼才能完成,使用門(mén)檻比較高。
  5. 另外,在生態(tài)方面,這里指的是上下游存儲(chǔ)的支持。Flink CDC 上下游非常豐富,支持對(duì)接
    MySQL、PostgreSQL 等數(shù)據(jù)源,還支持寫(xiě)入到 TiDB、HBase、Kafka、Hudi 等各種存儲(chǔ)系統(tǒng)
    中,也支持靈活的自定義 connector。
  6. 我們看到flink cdc 是比較友好的方案, 其內(nèi)部實(shí)現(xiàn)上用的是Debezium去采集binlong, 而且可通過(guò)參數(shù)scan.startup.mode 來(lái)控制同步行為:
  1. initial (默認(rèn)):在第一次啟動(dòng)時(shí)對(duì)受監(jiān)視的數(shù)據(jù)庫(kù)表執(zhí)行全量同步,并繼續(xù)讀取最新的 binlog。
  2. earliest-offset:跳過(guò)快照階段,從可讀取的最早 binlog 位點(diǎn)開(kāi)始讀取
  3. latest-offset:首次啟動(dòng)時(shí),從不對(duì)受監(jiān)視的數(shù)據(jù)庫(kù)表執(zhí)行快照, 連接器僅從 binlog 的結(jié)尾處開(kāi)始讀取,這意味著連接器只能讀取在連接器啟動(dòng)之后的數(shù)據(jù)更改。
  4. specific-offset:跳過(guò)快照階段,從指定的 binlog 位點(diǎn)開(kāi)始讀取。位點(diǎn)可通過(guò) binlog 文件名和位置指定,或者在 GTID 在集群上啟用時(shí)通過(guò) GTID 集合指定。
  5. timestamp:跳過(guò)快照階段,從指定的時(shí)間戳開(kāi)始讀取 binlog 事件。

一個(gè)demo

對(duì)flink_01 和flink_02 進(jìn)行兩個(gè)分表進(jìn)行同步合并到:flink_merge文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-401109.html


CREATE TABLE `flink_01` (
  `indicator_name` varchar(255) DEFAULT NULL COMMENT '指標(biāo)名稱(chēng)',
  `indicator_value` varchar(255) DEFAULT NULL COMMENT '指標(biāo)值',
  `indicator_code` int NOT NULL COMMENT '指標(biāo)編碼',
  `table_name` varchar(255) NOT NULL COMMENT '指標(biāo)計(jì)算上游表名',
  `window_start` datetime NOT NULL COMMENT '窗口開(kāi)始時(shí)間',
  `window_end` datetime DEFAULT NULL COMMENT '窗口截止時(shí)間',
  `create_time` datetime DEFAULT NULL COMMENT '創(chuàng)建更新時(shí)間',
  `indicator_description` varchar(255) DEFAULT NULL COMMENT '指標(biāo)描述',
  PRIMARY KEY (`indicator_code`,`table_name`,`window_start`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO `test`.`flink_01`(`indicator_name`, `indicator_value`, `indicator_code`, `table_name`, `window_start`, `window_end`, `create_time`, `indicator_description`) VALUES ('all_login_num', '52', 0, 'app_login_log', '2022-12-14 00:00:00', '2022-12-15 00:00:00', '2022-12-19 18:09:24', '登錄用戶(hù)數(shù)');
INSERT INTO `test`.`flink_01`(`indicator_name`, `indicator_value`, `indicator_code`, `table_name`, `window_start`, `window_end`, `create_time`, `indicator_description`) VALUES ('all_login_num', '49', 0, 'app_login_log', '2022-12-15 00:00:00', '2022-12-16 00:00:00', '2022-12-19 18:09:24', '登錄用戶(hù)數(shù)');
INSERT INTO `test`.`flink_01`(`indicator_name`, `indicator_value`, `indicator_code`, `table_name`, `window_start`, `window_end`, `create_time`, `indicator_description`) VALUES ('all_login_num', '62

到了這里,關(guān)于【實(shí)戰(zhàn)-01】flink cdc 實(shí)時(shí)數(shù)據(jù)同步利器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 基于 Flink CDC 構(gòu)建 MySQL 到 Databend 的 實(shí)時(shí)數(shù)據(jù)同步

    基于 Flink CDC 構(gòu)建 MySQL 到 Databend 的 實(shí)時(shí)數(shù)據(jù)同步

    這篇教程將展示如何基于 Flink CDC 快速構(gòu)建 MySQL 到 Databend 的實(shí)時(shí)數(shù)據(jù)同步。本教程的演示都將在 Flink SQL CLI 中進(jìn)行,只涉及 SQL,無(wú)需一行 Java/Scala 代碼,也無(wú)需安裝 IDE。 假設(shè)我們有電子商務(wù)業(yè)務(wù),商品的數(shù)據(jù)存儲(chǔ)在 MySQL ,我們需要實(shí)時(shí)把它同步到 Databend 中。 接下來(lái)的內(nèi)容

    2024年02月10日
    瀏覽(28)
  • 使用Flink CDC將Mysql中的數(shù)據(jù)實(shí)時(shí)同步到ES

    最近公司要搞搜索,需要把mysql中的數(shù)據(jù)同步到es中來(lái)進(jìn)行搜索,由于公司已經(jīng)搭建了flink集群,就打算用flink來(lái)做這個(gè)同步。本來(lái)以為很簡(jiǎn)單,跟著官網(wǎng)文檔走就好了,結(jié)果沒(méi)想到折騰了將近一周的時(shí)間…… 我也是沒(méi)想到,這玩意網(wǎng)上資源竟然這么少,找到的全部都是通過(guò)

    2024年02月11日
    瀏覽(25)
  • 實(shí)戰(zhàn):大數(shù)據(jù)Flink CDC同步Mysql數(shù)據(jù)到ElasticSearch

    實(shí)戰(zhàn):大數(shù)據(jù)Flink CDC同步Mysql數(shù)據(jù)到ElasticSearch

    前面的博文我們分享了大數(shù)據(jù)分布式流處理計(jì)算框架Flink和其基礎(chǔ)環(huán)境的搭建,相信各位看官都已經(jīng)搭建好了自己的運(yùn)行環(huán)境。那么,今天就來(lái)實(shí)戰(zhàn)一把使用Flink CDC同步Mysql數(shù)據(jù)導(dǎo)Elasticsearch。 CDC簡(jiǎn)介 CDC 的全稱(chēng)是 Change Data Capture(變更數(shù)據(jù)捕獲技術(shù)) ,在廣義的概念上,只要

    2024年02月09日
    瀏覽(19)
  • 基于 Flink CDC 的實(shí)時(shí)同步系統(tǒng)

    基于 Flink CDC 的實(shí)時(shí)同步系統(tǒng)

    摘要: 本文整理自科杰科技大數(shù)據(jù)架構(gòu)師張軍,在 FFA 2022 數(shù)據(jù)集成專(zhuān)場(chǎng)的分享。本篇內(nèi)容主要分為四個(gè)部分: 功能概述 架構(gòu)設(shè)計(jì) 技術(shù)挑戰(zhàn) 生產(chǎn)實(shí)踐 Tips: 點(diǎn)擊 「閱讀原文」 查看原文視頻演講 ppt 科杰科技是專(zhuān)門(mén)做大數(shù)據(jù)服務(wù)的供應(yīng)商,目前的客戶(hù)包括能源、金融、證券等

    2024年02月05日
    瀏覽(31)
  • flink oracle cdc實(shí)時(shí)同步(超詳細(xì))

    flink oracle cdc實(shí)時(shí)同步(超詳細(xì))

    官方文檔:https://github.com/ververica/flink-cdc-connectors/blob/release-master/docs/content/connectors/oracle-cdc.md 本文參照官方文檔來(lái)記錄Oracle CDC 的配置。 在本文開(kāi)始前,需要先安裝Oracle,有興趣的同學(xué)可以參考博主之前寫(xiě)的《docker下安裝oracle11g(一次安裝成功)》。 如果要做oracle的實(shí)時(shí)同步

    2024年02月12日
    瀏覽(21)
  • flink postgresql cdc實(shí)時(shí)同步(含pg安裝配置等)

    類(lèi)型 版本/描述 docker 20.10.9 Postgresql 10.6 初始化賬號(hào)密碼:postgres/postgres 普通用戶(hù):test1/test123 數(shù)據(jù)庫(kù):test_db flink 1.13.6 step1 : 拉取 PostgreSQL 10.6 版本的鏡像: step2 :創(chuàng)建并啟動(dòng) PostgreSQL 容器,在這里,我們將把容器的端口 5432 映射到主機(jī)的端口 30028,賬號(hào)密碼設(shè)置為 postgre

    2024年02月11日
    瀏覽(27)
  • Flink CDC 基于mysql binlog 實(shí)時(shí)同步mysql表

    Flink CDC 基于mysql binlog 實(shí)時(shí)同步mysql表

    環(huán)境說(shuō)明: flink?1.15.2 mysql 版本5.7? ? 注意:需要開(kāi)啟binlog,因?yàn)樵隽客绞腔赽inlog捕獲數(shù)據(jù) windows11 IDEA 本地運(yùn)行 先上官網(wǎng)使用說(shuō)明和案例:MySQL CDC Connector — Flink CDC documentation 1. mysql開(kāi)啟binlog (注意,引擎是 InnoDB,如果是ndbcluster,本人測(cè)試是捕獲不到binlog日志的,增量相

    2024年02月10日
    瀏覽(23)
  • flink sqlserver cdc實(shí)時(shí)同步(含sqlserver安裝配置等)

    flink sqlserver cdc實(shí)時(shí)同步(含sqlserver安裝配置等)

    官方文檔:https://github.com/ververica/flink-cdc-connectors/blob/master/docs/content/connectors/sqlserver-cdc.md 如果要使用flink cdc做sqlserver的實(shí)時(shí)同步,需要滿(mǎn)足以下條件: 需要安裝SQLServer(需要支持CDC的功能,SQLServer 2008之后的版本都支持) ; 需要開(kāi)啟SQL Server代理; 啟用CDC功能。 ok,接下來(lái)

    2024年02月08日
    瀏覽(21)
  • 07_Hudi案例實(shí)戰(zhàn)、Flink CDC 實(shí)時(shí)數(shù)據(jù)采集、Presto、FineBI 報(bào)表可視化等

    07_Hudi案例實(shí)戰(zhàn)、Flink CDC 實(shí)時(shí)數(shù)據(jù)采集、Presto、FineBI 報(bào)表可視化等

    7.第七章 Hudi案例實(shí)戰(zhàn) 7.1 案例架構(gòu) 7.2 業(yè)務(wù)數(shù)據(jù) 7.2.1 客戶(hù)信息表 7.2.2 客戶(hù)意向表 7.2.3 客戶(hù)線(xiàn)索表 7.2.4 線(xiàn)索申訴表 7.2.5 客戶(hù)訪(fǎng)問(wèn)咨詢(xún)記錄表 7.3 Flink CDC 實(shí)時(shí)數(shù)據(jù)采集 7.3.1 開(kāi)啟MySQL binlog 7.3.2 環(huán)境準(zhǔn)備 7.3.3 實(shí)時(shí)采集數(shù)據(jù) 7.3.3.1 客戶(hù)信息表 7.3.3.2 客戶(hù)意向表 7.3.3.3 客戶(hù)線(xiàn)索表 7

    2024年02月13日
    瀏覽(29)
  • Flink CDC2.4 整庫(kù)實(shí)時(shí)同步MySql 到Doris

    ????????Flink 1.15.4? ? ? ? ? 目前有很多工具都支持無(wú)代碼實(shí)現(xiàn)Mysql - Doris 的實(shí)時(shí)同步 ? ? ? ? 如:SlectDB 已發(fā)布的功能包 ? ? ? ? ? ? ? ??Dinky?SeaTunnel?TIS?等等 ? ? ? ? ?不過(guò)好多要么不支持表結(jié)構(gòu)變動(dòng),要不不支持多sink,我們的業(yè)務(wù)必須支持對(duì)表結(jié)構(gòu)的實(shí)時(shí)級(jí)變動(dòng)

    2024年02月11日
    瀏覽(35)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包