hdfs导出数据mysql文字描述_通过datax 把mysql 的数据导出到HDFS中

bc3f9276acf88283a0569b9b9ef9ee92.png

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

通过datax将mysql数据导出到HDFS

注意:我的datax在mysql计算机上运行,hdfs在另一台计算机上运行;

1.mysql创建表并插入数据:

1.1?在测试数据库中创建表

创建表`tbtest`? (

?`ID`int(11)NOT NULL AUTO_INCREMENT,

?`name` varchar(255)字符集utf8 COLLUT utf8_general_ci NOT NULL,

?`Dep` int(11),

?主键(`id`)使用BTREE)

ENGINE = InnoDB AUTO_INCREMENT = 10000 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT =动态;

1.2插入数据

插入到tbtest值中(1,”张飞”,7);

插入tbtest VALUES(2,” Guan Yu”,7);

插入tbtest VALUES(3,”刘备”,7);

2.编辑并执行json文件

python/data/datax/datax/bin/datax.py-r mysqlreader-w hdfswriter?

您可以看到json文件格式;

2.1 json文件如下:

{

“工作”:{

“内容”:[

{

“阅读器”:{

” name”:” mysqlreader”,

“参数”:{

“列”:[

? ” id”,

“名称”,

? ” Dep”

],

“连接”:[

{

” jdbcUrl”:[

” jdbc:mysql://127.0.0.1:3306/test”

],

” table”:

“密码”:”测试* 123″,

” username”:” root”,

” where”:””

}

},

? “作家”:{

” name”:” hdfswriter”,

“参数”:{

“列”:[

{

” name”:” id”,

? ” type”:” int”

},

{

” name”:” name”,

键入”:” char”

},

{

” name”:” Dep”,

” type”:” int”

}

],

” compress”:” NONE”,

defaultFS”:” hdfs://hadoop的IP:9000″,

” fieldDelimiter”:” \\\\ t”,

” fileName”:” tbtest.txt”,

” fileType”:” orc”,

” path”:”/data/hadoop/h adoopdata”,

” writeMode”:”追加”

}}

}

?}

],

?”设置”:{

“速度”:{

” channel”:” 1″

}

}

}

}?

2.2?执行命令

?python/data/datax/datax/bin/datax.py/data/datax/mysqlhdfsjob.json

成功的技巧如下:

274979.html

3.执行过程中发现的问题

问题1:JSON格式总是报告错误,并且解决方法:使用Sublime的PrettyJson进行调试非常方便。

问题2:java.net.ConnectException:连接被拒绝将报告错误。首先在网络级进行故障排除,有

netstat-nltp查看端口9000,屏幕截图如下:

274979.html

当发现IP为127.0.0.1时,您需要更改hadoop的配置文件。

更改core-site.xml,

\ lt;配置;

\ lt;属性\>

? \ lt;名称\\ u> fs.default.name \ lt;/名称

? \ lt;值> hdfs://0.0.0.0:9000 \ lt;/值>? #将localhost更改为0.0.0.0或本地IP。

\ lt;/属性>

\ lt;/配置

4.有关json文件的详细信息,请参考官方说明

请参考mysqlreader文档:

? https://github.com/alibaba/DataX/blob/master/mysqlreader/doc/mysqlreader.md

请参阅hdfswriter文档:

??? https://github.com/alibaba/DataX/blob/master/hdfswriter/doc/hdfswriter.md

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值