美文网首页datax
2019-08-16datax使用心得

2019-08-16datax使用心得

作者: 小G仔 | 来源:发表于2019-08-16 17:04 被阅读0次

    任务描述:实时获得某个文本,将文本实时导入mysql,载体使用datax

    Q1:根据数据生成对应的配置文件,即job文件夹的json文件
    思路:json文件里面的结构是有一定的规律的,是否可以遍历,用什么语言

    首先想到的是python,遍历的方法即判断是否是字典,是否是数组,然后根据key确定value,里面有个坑就是json数据里面有些key对应的是值,有些是数组,需要进行相应的判断,一开始不知道怎么往value值添加数组,后来的思路是把value定义数组,然后往里面添加,append;至此问题解决;

    Q2:如何在各种语言调用cmd运行datax驱动
    思路:网上一大堆
    Q3:如何把拆解的工具拼起来
    思路:

    用python新建的json文件,但是对文件的实时观察用的是nodejs,尝试用nodejs调用python,其中各种 血泪,用了一个下午的时间没有搞定,后用js重新按照python思路写了新建json的代码,问题解决,调用cmd运行datax驱动用nodejs解决,之前尝试过用python

    Q4:困扰了两天,即文本数据里坐标是x_y,但是要求入表的是x,y。
    思路1:

    直接用两个分割符,","和“_”即可,可惜,datax只支持单个分割符;

    思路2:

    那就搞两次,先用“_”分割,存到新文件,然后再读取新文件,这里遇到的坑就是nodejs的watch功能,fs.watch会重复调用,导致重复插入,尝试使用 node-watch等一系列插件,都不行,浪费了一天的时间;

    思路3:

    那传数据的时候搞不定,能不能传完再搞,可以用node连接数据库,执行数据分列的sql;but!!!!!!这里发现datax的一个人性化设计,里面有postSql和preSql,可以在插表之前和插表之后执行,问题解决

    Q5:数据的表名需要按照数据内部的第一行最后一列进行命名,但是Node读流都是读完的,

    这里用的一个循环解决问题

    相关文章

      网友评论

        本文标题:2019-08-16datax使用心得

        本文链接:https://www.haomeiwen.com/subject/xteqsctx.html