Linux公社(LinuxlDC.com)于2006年9月25日注册并开通网站,Linux现在已经成为一种

广受关注和支持的一种操作系统,IDC是互联网数据中心,LinuxlDC就是关于Linux的数据

中心。

LinuxIDC.com提供包括 Ubuntu, Fedora,SUSE技术,以及最新 IT资讯等Linux专业类网站。

DataX插件开发指南

版本号修改内容修改日期修改人

V0.1

创建

2011-09-08

何健超

目录

TOC \o "1-5" \h \z \o "Current Document" 一、概述4

\o "Current Document" 二、Reader插件开发(以 httpreader 为例) 5

\o "Current Document" 1、确定插件所需配置的参数 5

\o "Current Document" 2、构建相应包和类结构5

\o "Current Document" 3、实现重载方法7

\o "Current Document" 4、自定义 split方法9

\o "Current Document" 三、Writer插件开发(以streamwriter为例)12

\o "Current Document" 1、确定插件参数、构建相应包和类结构 12

2、实现重载方法 13

\o "Current Document" 四、插件运行配置(以 httpreader为例)15

\o "Current Document" 1、注册插件15

\o "Current Document" 2、修改 build.xml文件,打包 15

一、概述

DataX是一个在不同类型的数据库(文件系统)之间交换数据的工具,采用“框 架+插件”的结构,框架相当于一个数据中转平台,而插件则为访问不同类型的 数据库(文件系统)提供实现。

DataX插件分为Reader和Writer两类。Reader负责从数据源端读取数据到 Storage交换空间),Writer负责将Storage中的数据写入到数据目的端。Storage

可以适配不同种类的Reader和Writer,从而实现数据同步。目前 DataX版本已 经提供的Reader插件如下:

1、hdfsreader :支持从hdfs文件系统获取数据。

2、mysqlreader:支持从mysql数据库获取数据。

3、sqlserverreader:支持从sqlserver数据库获取数据。

4、oraclereader :支持从oracle数据库获取数据。

5、streamreader:支持从stream流获取数据(常用于测试)

6、httpreader :支持从http URL获取数据。

提供的Writer插件如下:

1、hdfswriter :支持向hdbf写入数据。

2、mysqlwriter :支持向mysql写入数据。

3、sqlserverwriter: 支持向 sqlserver写入数据。

4、oraclewriter :支持向 oracle 写入数据。

5、streamwriter :支持向stream流写入数据。(常用于测试)

用户可以根据需要开发自己的 Reader & Writer插件。现在以HttpReader和 StreamWriter插件为例,使用eclipse分别说明Reader和Writer插件开发过程。

Reader插件开发(以httpreader为例)

1、确定插件所需配置的参数

确定插件参数,并在 common.plugin.ParamsKey.javs中,创建静态类 HttpReader,尤其注意对参数的注释尽量参照源码规范, DataX运行时, 会根据此处声明的参数和注释生成对应的模板 Job_xml此处参数设置非 常重要,如图:

public static class HttpReader {

f

@name: fieldSplit

@description:列分隔符

grange:

@mandatory: false

@default:\t

*/

public final static String fieldsplit =

/*

士 @name r encoding

@description:编码

+ grange: UTF-8IGEKIGB2312

Smandatory: false

+ @default: VTF-0

/

public final static String encocJijjg- = T,encoding11;

/*

@name: nullString

+ @de

linux gret 文件内容,DataX插件开发指南.docx相关推荐

  1. Linux查找文件内容

    2019独角兽企业重金招聘Python工程师标准>>> Linux查找文件内容 使用vim命令查找文件内容 我们可以使用/string命令来向前(Forward)查找字符串strin ...

  2. Linux清空文件内容的三种方法

    Linux清空文件内容的三种方法 测试文件:a.txt 第一种: $> a.txt 第二种: $echo "" > a.txt 第三种: $cat /dev/null ...

  3. linux清空文件内容的几种方式与区别

    虽然linux清空文件内容的方式有很多种,但是他们之间有着细微的差别.通过实践我将他们分为两类: 将文件清空,文件大小为0k $ : > filename  $ > filename  $ ...

  4. Linux查看文件内容命令:cat, tail, head, more, less

    Linux查看文件内容命令:cat, tail, head, more, less cat 直接显示整个文件. cat直接显示全部文件内容,没有换页等交互. cat filename more mor ...

  5. linux 查找html文件,linux查找文件内容包含

    如何在Linux下查找文件内容包含某个特定字符串的文件 怎样在Linux下查找文件内容包含某个特定字符串的文如何在Linux下查找文件内容包含某个特定字符串的文件? 我的目录下面有test1和test ...

  6. Linux查看文件内容的6种命令

    链接一(6种): Linux中几种常用的查看文件内容的命令(file,cat,more,less,head,tail) - 空谷幽兰~泊逸 - 博客园Linux中有几个命令可以查看文件的内容,而不需要 ...

  7. linux检查新增文件,linux查看文件内容

    linux查看文件内容 cat  由第一行开始显示档案内容 tac  从最后一行开始显示,可以看出 tac 是 cat 的倒着写! nl  显示的时候,顺道输出行号! more 一页一页的显示档案内容 ...

  8. linux清除文件内容 ,Linux清除文件内容的几种方法

    # 清空或删除大文件内容的五种方法: # 法一:通过重定向到 Null 来清空文件内容 $ >test.sh # 法二:使用 'true' 命令重定向来清空文件 $ true > test ...

  9. linux 从行查看文件,linux 查看文件内容

    cat (concatenate)选项与参数: -A:相当于vET的整合选项,可列出一些特殊字符而不是空白而已 -b:列出行号,仅对非空白行做行号显示,空白行不标行号 -E:将结尾的断行字符$显示出来 ...

最新文章

  1. AI算法工程师必备技术,快快积累!
  2. java flex xml_FLEX与JAVA的交互问题 -DOM4J-xml
  3. mysql数据库导出模型到powerdesigner,PDM图形窗口中显示数据列的中文注释
  4. c语言调用linux脚本,C语言执行shellcode的五种方法
  5. Windows中安装MongoDB以及studio3t
  6. Deepin 下安装 LAMP
  7. kk6.0 服务器信息 端口,KK的服务器改了端口以后 为什么我进不去
  8. MVC框架中的值提供机制(二)
  9. request模块发送json请求
  10. MySQL备份还原——mysqldump工具介绍
  11. java后端AppV3版本微信支付CV大法2021-11-12
  12. 第六篇:uniapp的rpx响应式px样式
  13. 海淀朝阳房山二手房价格反弹明显 短期内仍将持续
  14. Exception: ROM is missing for ms_pacman, see https://github.com/openai/atari-py#roms for instruction
  15. 深股通,沪股通,港股通
  16. 单片机编程简易计算机的设计,简易计算器设计
  17. excel数据分析实战——销售额目标达成分析
  18. 《Photoshop智能手机APP界面设计》学习笔记
  19. Android开发收音机功能,基于Android系统的FM收音机功能的设计与实现
  20. html5如何创建按钮button

热门文章

  1. 下载丨 MySQL运维管理+编程开发大全
  2. DBASK数据库提问平台问题集萃,首批近二十位专家团曝光
  3. 记一次MongoDB故障排查的过程
  4. 云小课 | MRS基础入门之HDFS组件介绍
  5. 华为云FusionInsight MRS:千余节点滚动升级业务无中断
  6. 上手深度学习之前,我们先聊聊“数学”
  7. Android手机打造你的PythonJava开发工具!
  8. 【华为云技术分享】快速理解spark-on-k8s中的external-shuffle-service
  9. 基于CSE的微服务架构实践-轻量级架构技术选型
  10. 迷宫问题c语言报告,c语言写的迷宫问题