DataX-读取csv文件到StarRocks
配置datax
在服务器上创建目录
mkdir -p /export/software -- 用于软件压缩包
mkdir -p /export/server --存放解压的软件
mkdir -p /export/data/datax_app --存档json脚本
mkdir -p /export/data/data_test --存放测试的csv文件
-
上传压缩包
官网下载:https://github.com/alibaba/DataX 在最下面有个Download DataX下载地址,点击下载 cd /export/software/ rz
-
解压
tar -zxvf datax.tar.gz -C /export/server/ # 进入压缩包路径下,不然写全路径 tar -zxvf /export/software/datax.tar.gz -C /export/server/ # 查看datax cd /export/server ls
-
配置
# 修改环境变量配置文件 vim /etc/profile # 添加以下内容 #DATAX_HOME export DATAX_HOME=/export/server/datax/ export PATH=$PATH:$DATAX_HOME/bin # 不要把下面的内容添加到里面,这个不是 # 刷新环境变量 source /etc/profile
-
测试
# 注意进入datax所在的文件夹,不然写全路径 cd /export/server/datax/ python bin/datax.py job/job.json
# 部署到另一台服务器的命令,防止数据量大时,可以使用多台服务器工作
# 具体情况具体使用
cd /export/server/
scp -r /export/server/datax root@node03:$PWD
csv上传starrocks
配置StarRocksWriter
(StarRocks-Github下载:[Releases · StarRocks/DataX (github.com)](https://github.com/StarRocks/DataX/releases))
解压到 datax/plugin/writer
# 注意进入压缩包所在文件夹
tar -zxvf starrockswriter.tar.gz -C /export/server/datax/plugin/writer/
DataX只能同步数据,不能同步表结构,
所以在执行任务前,我们需要先在目标数据库中手动创建好表。
基本规则
- step1:开发一个JSON配置文件:实现数据同步的配置文件
- step2:定义Reader和Write:定义读什么地方和写什么地方
- step3:运行JSON配置文件:python datax.py 自己的配置文件
创建json文件
# 创建了一个用来存放脚本的文件夹
cd /export/data/datax_app
# 文件名自行命名
vim CSV_StarRocks.json
官方给的参考模板
StarRocks官方:使用 DataX 导入 @ DataX-starrocks-writer @ StarRocks Docs
alibaba官方:GitHub - alibaba/DataX: DataX是阿里云DataWorks数据集成的开源版本。
# 合理配置任务参数,让DataX任务拆分为多个Task
# 这个是我写的基础模板,账号密码已脱敏
{
"setting": {
},
"job": {
"setting": {
"splitter": 0,
"speed": {
"channel": 5
}
},
"content": [
{