博兴做网站,网站qq 微信分享怎么做的,wordpress搭电影网站,怎么做触屏版网站现在互联网应用越来越复杂#xff0c;每个公司都会有多种多样的数据库。通常是用最好的硬件来跑 OLTP#xff0c;甚至还在 OLTP 中进行分库分表来满足业务#xff0c;这样对于一些分析#xff0c;聚合#xff0c;排序操作非常麻烦。这也有了异构数据库的数据同步需求…现在互联网应用越来越复杂每个公司都会有多种多样的数据库。通常是用最好的硬件来跑 OLTP甚至还在 OLTP 中进行分库分表来满足业务这样对于一些分析聚合排序操作非常麻烦。这也有了异构数据库的数据同步需求今天重点给大家介绍两个利器 异构数据迁移DataX 结合云原生数仓 Databend 实现异构数据库数据合并及分析。Datax 是一个异构数据源离线同步工具 致力于实现包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS 等各种异构数据源之间稳定高效的数据同步功能。Databend 是一个开源、弹性、负载感知的现代云数仓库赋能企业降本增效。在之前的文章中介绍了如何快速部署 Databend。下面我们通过一个简单练习让你学习使用 DataX , 另外通过几个进阶案例给你展示一下 DataX 的魅力。本文中仅以 DataX 的 mysqlreader plugin 为例进行实验databendwriter 支持所有 Addax 提供的 reader plugin。DataX 基本使用1.1 安装编译DataXgit clone gitgithub.com:alibaba/DataX.git
cd {DataX_source_code_home}
mvn -U clean package assembly:assembly -Dmaven.test.skiptrue1.2 Demo From MySQL to Databend )在 MySQL Server 中建立迁移用户。本例中待迁移的表为 db.tb01mysql create user mysqlu1% identified by databend;
mysql grant all on *.* to mysqlu1%;
mysql create database db;
mysql create table db.tb01(id int, d double, t TIMESTAMP, col1 varchar(10));
mysql insert into db.tb01 values(1, 3.1,now(), test1), (1, 4.1,now(), test2), (1, 4.1,now(), test2);在 Databend 中建立对应的表结构。将 MySQL 的 db.tb01 数据迁移至 Databend 的 migrate_db.tb01databend create database migrate_db;
databend create table migrate_db.tb01(id int null, d double null, t TIMESTAMP null, col1 varchar(10) null);进行如下的dataX 配置{job: {content: [{reader: {name: mysqlreader,parameter: {username: mysqlu1,password: databend,column: [id, d, t, col1],connection: [{jdbcUrl: [jdbc:mysql://127.0.0.1:3307/db],driver: com.mysql.jdbc.Driver,table: [tb01]}]}},writer: {name: databendwriter,parameter: {username: databend,password: databend,column: [id, d, t, col1],preSql: [],postSql: [],connection: [{jdbcUrl: jdbc:databend://localhost:8000/migrate_db,table: [tb01]}]}}}],setting: {speed: {channel: 1}}}
}运行 DataXpython datax.py ./mysql_demo.json 查看同步的结构databend select * from migrate_db.tb01;
-----------------------------------------------
| id | d | t | col1 |
-----------------------------------------------
| 1 | 3.1 | 2023-02-01 07:11:08.500000 | test1 |
| 1 | 4.1 | 2023-02-01 07:11:08.501000 | test2 |
| 1 | 4.1 | 2023-02-01 07:11:08.501000 | test2 |
-----------------------------------------------小结上面的例子是通过 DataX 跑通一个 mysql 表的迁移到 Databend 通过一个简单的例子也可以感受一下 DataX 大概的流程。但 DataX 远比这个 Demo 强大。另外 DataX 强大之处可能通过参数来控制配置文件这样比轻松地实现一个配置迁移 甚至可以传入 SQL 这样来读取指定区间做数据的迁移。关于 DatabendDatabend 是一款开源、弹性、低成本基于对象存储也可以做实时分析的新式数仓。期待您的关注一起探索云原生数仓解决方案打造新一代开源 Data Cloud。Databend 文档https://databend.rs/Twitterhttps://twitter.com/Datafuse\_LabsSlackhttps://datafusecloud.slack.com/WechatDatabendGitHub https://github.com/datafuselabs/databend