dataX30安装使用手册.docx

上传人:b****8 文档编号:27685033 上传时间:2023-07-04 格式:DOCX 页数:12 大小:18.02KB
下载 相关 举报
dataX30安装使用手册.docx_第1页
第1页 / 共12页
dataX30安装使用手册.docx_第2页
第2页 / 共12页
dataX30安装使用手册.docx_第3页
第3页 / 共12页
dataX30安装使用手册.docx_第4页
第4页 / 共12页
dataX30安装使用手册.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

dataX30安装使用手册.docx

《dataX30安装使用手册.docx》由会员分享,可在线阅读,更多相关《dataX30安装使用手册.docx(12页珍藏版)》请在冰豆网上搜索。

dataX30安装使用手册.docx

dataX30安装使用手册

Data*3.0使用手册

一、data*概述

1data*作用

Data*是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。

为了解决异构数据源同步问题,Data*将复杂的网状的同步链路变成了星型数据链路,Data*作为中间传输载体负责连接各种数据源。

当需要接入一个新的数据源的时候,只需要将此数据源对接到Data*,便能跟已有的数据源做到无缝数据同步。

2Data*3.0框架设计

Data*本身作为离线数据同步框架,采用Framework+plugin架构构建。

将数据源读取和写入抽象成为Reader/Writer插件,纳入到整个同步框架中。

Reader:

Reader为数据采集模块,负责采集数据源的数据,将数据发送给Framework。

Writer:

Writer为数据写入模块,负责不断向Framework取数据,并将数据写入到目的端。

Framework:

Framework用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题。

3Data*3.0插件体系

类型

数据源

Reader(读)

Writer(写)

RDBMS关系型数据库

MySQL

 

Oracle

 

SQLServer

 

PostgreSQL

 

达梦

 

通用RDBMS(支持所有关系型数据库)

阿里云数仓数据存储

Ma*Compute(原ODPS)

 

AnalyticDB(原ADS)

 

 

OSS

 

云数据库Memcache版(原OCS)

Hive

NoSQL数据存储

TableStore(原OTS)

 

Hbase0.94

 

Hbase1.1

 

MongoDB

无构造化数据存储

T*tFile

JsonFile

 

FTP

 

HDFS

二、data*安装

1创立用户组及用户

root@hmaster-hdfs:

/home/ubuntu#groupadddata*

root@hmaster-hdfs:

/home/ubuntu#useradd-gdata*data*-m-d/home/data*

root@hmaster-hdfs:

/home/ubuntu#passwddata*

EnternewUNI*password:

RetypenewUNI*password:

passwd:

passwordupdatedsuccessfully

root@hmaster-hdfs:

/home/ubuntu#usermod-Gadm-adata*

root@hmaster-hdfs:

/home/ubuntu#su-data*

data*@hmaster-hdfs:

~$id

uid=1004(data*)gid=1000(ubuntu)groups=1000(ubuntu),4(adm),1002(data*)

2环境变量配置

e*portJRE_HOME=${JAVA_HOME}/jre

e*portCLASSPATH=.:

${JAVA_HOME}/lib:

${JRE_HOME}/lib

e*portPATH=$JAVA_HOME/bin

e*portLANG=zh_CN.UTF-8

3安装python

data*@hmaster-hdfs:

/home/ubuntu$python

Python2.7.6(default,Jun222015,17:

58:

13)

[GCC4.8.2]onlinu*2

Type"help","copyright","credits"or"license"formoreinformation.

三、data*使用

1生成配置文件模板

命令:

bin/pythondata*.py-r{YOUR_READER}-w{YOUR_WRITER}

案例1:

mysqlreader->mysqlwriter

data*@hmaster-hdfs:

~/data*3/data*/bin$pythondata*.py-rmysqlreader-wmysqlwriter

Data*(DATA*-OPENSOURCE-1.0),FromAlibaba!

Copyright(C)2010-2015,AlibabaGroup.AllRightsReserved.

 

Pleaserefertothemysqlreaderdocument:

s:

//github./alibaba/Data*/blob/master/mysqlreader/doc/mysqlreader.md

Pleaserefertothemysqlwriterdocument:

s:

//github./alibaba/Data*/blob/master/mysqlwriter/doc/mysqlwriter.md

Pleasesavethefollowingconfigurationasajsonfileanduse

python{DATA*_HOME}/bin/data*.py{JSON_FILE_NAME}.json

torunthejob.

{

"job":

{

"content":

[

{

"reader":

{

"name":

"mysqlreader",

"parameter":

{

"column":

[],

"connection":

[

{

"jdbcUrl":

[],

"table":

[]

}

],

"password":

"",

"username":

"",

"where":

""

}

},

"writer":

{

"name":

"mysqlwriter",

"parameter":

{

"column":

[],

"connection":

[

{

"jdbcUrl":

"",

"table":

[]

}

],

"password":

"",

"preSql":

[],

"session":

[],

"username":

"",

"writeMode":

""

}

}

}

],

"setting":

{

"speed":

{

"channel":

""

}

}

}

}

案例2:

jsonfilereader->hbasewriter

data*@hmaster-hdfs:

~/data*3/data*/bin$pythondata*.py-rjsonfilereader-whbasewriter

Data*(DATA*-OPENSOURCE-1.0),FromAlibaba!

Copyright(C)2010-2015,AlibabaGroup.AllRightsReserved.

 

Pleaserefertothejsonfilereaderdocument:

s:

//github./alibaba/Data*/blob/master/jsonfilereader/doc/jsonfilereader.md

Pleaserefertothehbasewriterdocument:

s:

//github./alibaba/Data*/blob/master/hbasewriter/doc/hbasewriter.md

Pleasesavethefollowingconfigurationasajsonfileanduse

python{DATA*_HOME}/bin/data*.py{JSON_FILE_NAME}.json

torunthejob.

{

"job":

{

"content":

[

{

"reader":

{

"name":

"jsonfilereader",

"parameter":

{

"column":

[],

"compress":

"zip",

"encoding":

"",

"path":

[]

}

},

"writer":

{

"name":

"hbase11*writer",

"parameter":

{

"column":

[],

"encoding":

"",

"hbaseConfig":

{

"hbase.cluster.distributed":

"",

"hbase.rootdir":

"",

"hbase.zookeeper.quorum":

""

},

"mode":

"",

"rowkeyColumn":

[],

"table":

"",

"versionColumn":

{

"inde*":

"",

"value":

""

}

}

}

}

],

"setting":

{

"speed":

{

"channel":

""

}

}

}

}

2配置定时任务

1.1创立任务列表文件

data*@hmaster-hdfs:

~/data*3/data*/task$vicrontab.tasks.t*t

20,30,400-23***/usr/bin/python/home/data*/data*3/data*/bin/data*.py/home/data*/data*3/data*/job/jsonfile2hbase_full[ry_l

og.terminal_log].json>/data/data*/log/data*.crontab.out.log2>&1

1.2crontab加载系统任务列表文件

data*@hmaster-hdfs:

~/data*3/data*/task$crontabcrontab.tasks.t*t

data*@hmaster-hdfs:

~/data*3/data*/task$crontab-l

20,30,400-23***/usr/bin/python/home/data*/data*3/data*/bin/data*.py/home/data*/data*3/data*/job/jsonfile2hbase_full[ry_log.terminal_log].json>/data/data*/log/data*.crontab.out.log2>&1

3常见问题及处理

1.1/bin/sh:

1:

java:

notfound

原因:

/home/data*/data*3/data*/bin/data*.py未取到JAVA_HOME环境变量值

四、data*插件开发及安装

1.Reader插件开发

publicclassJsonFileReadere*tendsReader{

publicstaticclassJobe*tendsReader.Job{

@Override

publicvoidinit(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoiddestroy(){

//TODOAuto-generatedmethodstub

}

@Override

publicListsplit(intadviceNumber){

//TODOAuto-generatedmethodstub

returnnull;

}

}

publicstaticclassTaske*tendsReader.Task{

@Override

publicvoidinit(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoiddestroy(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidstartRead(RecordSenderrecordSender){

//TODOAuto-generatedmethodstub

}

}

}

2.Writter插件开发

publicclassJsonFileWritere*tendsWriter{

publicstaticclassJobe*tendsWriter.Job{

@Override

publicvoidinit(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoiddestroy(){

//TODOAuto-generatedmethodstub

}

@Override

publicListsplit(intmandatoryNumber){

//TODOAuto-generatedmethodstub

returnnull;

}

}

publicstaticclassTaske*tendsWriter.Task{

@Override

publicvoidinit(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoiddestroy(){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidstartWrite(RecordReceiverlineReceiver){

//TODOAuto-generatedmethodstub

}

}

}

3.插件部署

目录及文件说明

data*@hmaster-hdfs:

~/data*3/data*/plugin/reader/jsonfilereader$ll

total56

drw*r-*r-*3data*ubuntu4096Jul616:

10./

drw*r-*r-*21data*ubuntu4096Jun2111:

05../

-rw-r--r--1data*ubuntu36348Jun2217:

52jsonfilereader.jar

drw*r-*r-*2data*ubuntu4096May1612:

46libs/

-rw-------1data*ubuntu315May1611:

24plugin.json

-rw-------1data*ubuntu149May1518:

24plugin_job_template.json

●jsonfilereader.jar插件JAR包文件

●libs插件依赖第三方JAR包文件

●plugin.json插件说明文件

●plugin_job_template.json插件配置模板文件

plugin.json文件容说明

{

"name":

"jsonfilereader",

"class":

".alibaba.data*.plugin.reader.jsonfilereader.JsonFileReader",

"description":

"useScene:

test.mechanism:

usedata*frameworktotransportdatafromjsonfile.warn:

Themoreyouknowabout

thedata,thelessproblemsyouencounter.",

"developer":

"alibaba"

}

Name:

插件名称

Class:

jsonfilereader.jar文件中全路径

Description:

功能描述

plugin_job_template.json文件容说明

{

"name":

"jsonfilereader",

"parameter":

{

"path":

[],

"encoding":

"",

"column":

[],

"compress":

"zip"

}

}

五、使用技巧

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1