《PolarDB-X开源分布式数据库实战进阶》——PolarDB-X数据导入导出(5) https://developer.aliyun.com/article/1228754?groupCode=polardbforpg
再从MySQL中将数据导出为mysql_10w.csv文件,并查看结果,如上图。
接下来将数据导入到PolarDB-X中。
首先,清除前面导入的数据,然后执行上图batch-tool工具导入命令,可将mysql导出的数据导入到PolarDB-X中。
最后可查看从MySQL中导出的数据,也是通过逗号分隔的普通的CSV文件格式,与PolarDB-X导出的数据一致,证明可以互相导入导出。
前文演示的导入导出过程均存在中间数据,PolarDB-X还可以通过CDC节点与MySQL同步,没有中间态的存在。CDC节点能够将多个DN的binlog汇聚,变成全局统一的、一致的binlog,完全兼容MySQL的binlog格式以及MySQL的Replication协议。
Batch-Tool的特点有三:
• 采用多线程操作。文件的读取通过多线程ring buffer,形成生产者-消费者模型,能够实现加速,消费时也通过多线程执行
• 使用PreparedStatement批量插入。
• 结合sharding规则、即分库分表规则,可提高执行效率。
Batch-Tool已经开源且发布了新的版本,可支持流式压缩导出和流式解压导入,支持加密解密的导入导出,目前可支持CSV、TXT、EXCEL文件格式。另外,也支持从yaml文件中配置参数,简化命令行的参数编写。