什么是cdc
CDC 的全称是 Change Data Capture ,在广义的概念上,只要能捕获数据变更的技术,我们都可以称为 CDC 。通常我们说的 CDC 技术主要面向数据库的变更,是一种用于捕获数据库中数据变更的技术。
CDC 技术应用场景非常广泛:
- 数据同步,用于备份,容灾
- 数据分发,一个数据源分发给多个下游
- 数据采集(E),面向数据仓库/数据湖的 ETL 数据集成
查看flink脚本找到执行run命令的入口类,如下:
1 | exec $JAVA_RUN $JVM_ARGS $FLINK_ENV_JAVA_OPTS "${log_setting[@]}" -classpath "`manglePathList "$CC_CLASSPATH:$INTERNAL_HADOOP_CLASSPATHS"`" org.apache.flink.client.cli.CliFrontend "$@ |
入口类为:org.apache.flink.client.cli.CliFrontend。 最终会调用 parseParameters(String[] args) 方法来执行命令解析,run 命令会调用 run(params) 方法,如下:
more >>热烈庆祝Apache基金会成立21周年,这个世界上最大的开源组织成就许多伟大的开源项目。
可以说现在互联网科技界大部分公司都在使用apache组织的开源软件,特别是大数据领域 出现了许多顶级项目,如hadoop,hbase,flink,kafaka等 可以说没有apache就没有如今这么繁荣的大数据市场,没有apache我想中国互联网估计得倒退10年。
其中值得关注的是 apache flink ,和 apache hudi。
flink 提供批量和实时计算的一体框架 , hudi提供的数据湖的支持。
官方庆祝🎉
https://blogs.apache.org/foundation/entry/the-apache-software-foundation-celebrates2
在网上看到这篇文章,觉得写的挺好的,可以帮助大家理解fink中的Exactly Once和At Least Once语义到底是什么。
看完本文,你能get到以下知识
有状态函数和运算符在各个元素/事件的处理中存储数据(状态数据可以修改和查询,可以自己维护,根据自己的业务场景,保存历史数据或者中间结果到状态中)
more >>本文根据阿里云高级技术专家李金波在首届阿里巴巴在线峰会的《企业大数据平台仓库架构建设思路》的分享整理而成。随着互联网规模不断的扩大,数据也在爆炸式地增长,各种结构化、半结构化、非结构化数据的产生,越来越多的企业开始在大数据平台下进行数据处理。分享中,李金波主要从总体思路、模型设计、数加架构、数据治理四个方面介绍了如何利用大数据平台的特性,构建更贴合大数据应用的数据仓库。
more >>我在研究HikariCP(一个数据库连接池)时无意间在HikariCP的Github wiki上看到了一篇文章(https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing ),这篇文章有力地消除了我一直以来的疑虑,看完之后感觉神清气爽。故在此做译文分享。
接下来是正文
数据库连接池的配置是开发者们常常搞出坑的地方,在配置数据库连接池时,有几个可以说是和直觉背道而驰的原则需要明确。
more >>做过ETL的同学都知道,我们在处理数据的时候往往都是分成好几个任务步骤来完成一个数据处理流程。多个任务单元之间往往有着强依赖关系,上游任务执行并成功,下游任务才可以执行。比如上游任务结束后拿到 A 结果,下游任务需结合 A 结果才能产出 B 结果,因此下游任务的开始一定是在上游任务成功运行拿到结果之后才可以开始。而为了保证数据处理结果的准确性,就必须要求这些任务按照上下游依赖关系有序、高效的执行。
ETL调度系统就是这样可以组织任务前后依赖关系,让任务有序执行的关键系统。
在开源的世界里,目前有这三种调度系统来供我们免费使用,它们是,Airflow,Azkaban,Dolphin scheduler。下面我分别来介绍一下这三个调度系统的架构和工作原理
在《写数据库同时发mq消息事务一致性的一种解决方案》一文的方案中把分布式事务巧妙转成了数据库事务。我们都知道关系型数据库事务能保证数据一致性,那数据库到底是怎么设计事务这一特性的呢?
more >>随着公司业务的增长,单体应用架构很难满足业务快速迭代以及性能方面的需求,都会进行服务化改造,按照业务等要素将原来庞大的单体应用拆分成不同的服务。那么在进行服务化改造之前首先就是面临是服务化基础设施的技术选型,其中最重要的就是服务之间的通信中间件。服务之间的通信可以分为同步方式和异步方式。同步的方式的代表就是 RPC,异步方式一般会选用mq。
more >>tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true