Chunjun数据同步工具初体验

文章介绍了Chunjun插件的下载、解压及配置过程,特别是如何设置MySQL到HDFS的数据同步脚本,包括reader和writer参数。在local模式下启动同步任务,成功将数据从MySQL迁移到了HDFS。
摘要由CSDN通过智能技术生成

chunjun (纯钧) 官方文档纯钧

chunjun 有四种运行方式:local、standalone、yarn session、yarn pre-job 。

运行方式/环境依赖flink环境hadoop环境
local××
standalone×
yarn session
yarn pre-job

1.下载

官网已经提供了编译好的插件压缩包,可以直接下载:https://github.com/DTStack/chunjun/releases

chunjun-dist-1.12-SNAPSHOT.tar.gz
 

2.解压

先创建 chunjun 目录

再解压  chunjun-dist-1.12-SNAPSHOT.tar.gz 到 chunjun 这个目录当中

 tar -zxvf chunjun-dist-1.12-SNAPSHOT.tar.gz -C ../module/chunjun

查看目录结构:config 是自己创建的,取什么名称都行,里面放置 脚本文件

 3.案例

mysql->hdfs (local)

根据chunjun 案例 纯钧

编写 mysql 数据同步 hdfs 脚本

vim  config/mysql_hdfs_polling.json

脚本:

{
    "job":{
        "content":[
            {
                "reader":{
                    "name":"mysqlreader",
                    "parameter":{
                        "column":[
                            {
                                "name":"group_id",
                                "type":"varchar"
                            },
                            {
                                "name":"company_id",
                                "type":"varchar"
                            },
                            {
                                "name":"group_name",
                                "type":"varchar"
                            }
                        ],
                        "username":"root",
                        "password":"000000",
                        "queryTimeOut":2000,
                        "connection":[
                            {
                                "jdbcUrl":[
                                    "jdbc:mysql://192.168.233.130:3306/gmall?characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false"
                                ],
                                "table":[
                                    "cus_group_info"
                                ]
                            }
                        ],
                        "polling":false,
                        "pollingInterval":3000
                    }
                },
                "writer":{
                    "name":"hdfswriter",
                    "parameter":{
                        "fileType":"text",
                        "path":"hdfs://192.168.233.130:8020/user/hive/warehouse/stg.db/cus_group_info",
                        "defaultFS":"hdfs://192.168.233.130:8020",
                        "fileName":"cus_group_info",
                        "fieldDelimiter":",",
                        "encoding":"utf-8",
                        "writeMode":"overwrite",
                        "column":[
                            {
                                "name":"group_id",
                                "type":"VARCHAR"
                            },
                            {
                                "name":"company_id",
                                "type":"VARCHAR"
                            },
                            {
                                "name":"group_name",
                                "type":"VARCHAR"
                            }
                        ]
                    }
                }
            }
        ],
        "setting":{
            "speed":{
                "readerChannel":1,
                "writerChannel":1
            }
        }
    }
}

启动:

sh bin/chunjun-local.sh -job config/mysql_hdfs_polling.json 

运行日志:

 HDFS上的文件:

 

 数据同步成功!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这些都是不同的数据格式,用于在不同的场景中存储和交换数据。下面是它们的区别和示例: 1. JSON(JavaScript Object Notation):是一种轻量级的数据交换格式,易于阅读和编写。它使用键值对的方式组织数据,并支持嵌套结构。JSON常用于Web应用程序中的数据传输和存储。 示例: ```json { "name": "John", "age": 30, "city": "New York" } ``` 2. OGG-JSON:是一种嵌套的JSON格式,常用于存储音频文件的元数据信息。 示例: ```json { "title": "Song Title", "artist": "Artist Name", "duration": 180, "album": { "title": "Album Title", "year": 2021 } } ``` 3. Chunjun-JSON:这可能是一个自定义的或特定领域的JSON格式,没有明确的定义或广泛使用。 示例: ```json { "property1": "value1", "property2": "value2" } ``` 4. CSV(Comma-Separated Values):是一种纯文本格式,用逗号分隔字段。它通常用于存储表格数据,每行表示一个记录,每列表示一个字段。 示例: ``` name, age, city John, 30, New York Alice, 25, London ``` 5. Avro:是一种二进制数据序列化格式,用于高效地存储和传输大数据集。它定义了数据的结构和架构,并支持动态类型和架构演化。 示例: ```json { "type": "record", "name": "Person", "fields": [ {"name": "name", "type": "string"}, {"name": "age", "type": "int"}, {"name": "city", "type": "string"} ] } ``` 这些数据格式在不同的场景中有各自的优势和适用性。选择合适的格式取决于数据的结构、用途以及所使用的技术栈。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只爱大锅饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值