共计 1383 个字符,预计需要花费 4 分钟才能阅读完成。
简述
Apache Doris 是一个现代化的 MPP 剖析型数据库产品,仅需 亚秒级 响应工夫即可取得查问后果,能无效地反对 实时数据分析 。
本文次要介绍如何应用 CloudCanal 疾速构建一条稳固高效运行的 PostgreSQL 到 Doris 数据同步链路。
技术点
基于 StreamLoad 的导入形式
Doris 提供了多种导入形式。CloudCanal 采纳了 StreamLoad 的形式进行导入,源端的音讯会转成字节流,最初会以 Batch 的模式通过 HTTP 协定发往 Doris。
相比间接通过 SQL 写入的形式,StreamLoad 形式会有更好的性能,写入的数据间接经 FE 转发给 BE 解决。如果间接采纳 SQL 写入,在 FE 侧,会有额定的 SQL 解析开销。
CloudCanal 默认采纳 json 格局来进行 StreamLoad 导入,如果用户内容特殊字符较较少,也能够开启 csv 格局导入,分隔符能够通过参数 columnSeparator 和 lineSeparator 设置。
基于 StreamLoad 的写入形式,理论写入对端的操作均为 INSERT,CloudCanal 同步时会主动将 UPDATE / DELETE 转成 INSERT 语句,并批改 __op 值。
PG -> Doris 的数据类型反对
CloudCanal 从 2020 年开始反对 PG 同步后就一直的丰盛 PG 的对端数据源,反对 PG 到 DORIS 是一个十分重要的数据源裁减
Doris 能够满足多种数据分析需要,例如固定历史报表,实时数据分析,交互式数据分析等,能够让数据分析工作更加简略高效!
PG 到 DORIS 全量和增量同步,不仅笼罩支流应用的数据类型,对地理信息相干类型也有很好的反对。对于 CloudCanal 对于地理信息的反对能够参考文章如何利用现代化数据栈高效解决地理信息数据。
Doris 关键技术
Doris 外部自行治理数据的 多正本 和主动修复 。保证数据的 高可用 、 高牢靠 。在服务器宕机的状况下,服务仍然可用,数据也不会失落。
MySQL 兼容性好,兼容 MySQL 的网络协议, 兼容 MySQL 语法 。
反对 MMP 一条 SQL 如果蕴含了合并、聚合计算、排序等多种操作;在执行打算的时候,MPP 会将其拆分成多份,散布到每台机器执行,最初再将后果汇总,大大晋升了效率。
操作示例
前置条件
- 登陆 CloudCanal SaaS 版,应用参见疾速上手文档
- 筹备一个 PG 数据库,和 DORIS 实例(本例别离应用自建 PG 12.4 和 Doris 1.0)
- 登录 CloudCanal 平台,增加 PG 和 DORIS
创立一条 PG -> DORIS 链路作为增量数据起源
工作创立
- 工作治理 -> 工作创立
- 测试链接 并抉择 源 和 指标 数据库
- 点击下一步
- 抉择 数据同步 ,并勾选 全量数据初始化,其余选项默认
- 抉择须要迁徙同步的 表和 列
- 确认创立工作
- 工作主动做 构造迁徙 、 全量迁徙 、 增量同步
校验数据
- 咱们应用程序对源端制作了一些数据
- 工作失常运行一段时间后,进行造数据
- 点击 PG -> DORIS 工作 详情 , 性能列表 -> 创立类似工作 ,在创立工作的第二步抉择 数据校验
- 数据校验 OK
常见问题
反对什么版本的 PG 和 DOIRS?
目前源端 PG 12.x, 13.x, 14.x 皆可应用 CloudCanal 进行迁徙同步,对端 DORIS 反对 1.x 版本,后序将一直扩大源端 PG 的数据类型。
总结
本文简略介绍了如何应用 CloudCanal 进行 PG -> DORIS 数据迁徙同步。各位读者敌人,如果你感觉还不错,请点赞、评论加转发吧。