dataX30安装使用手册.docx
- 文档编号:27685033
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:12
- 大小:18.02KB
dataX30安装使用手册.docx
《dataX30安装使用手册.docx》由会员分享,可在线阅读,更多相关《dataX30安装使用手册.docx(12页珍藏版)》请在冰豆网上搜索。
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
publicList
//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
publicList
//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"
}
}
五、使用技巧
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- dataX30 安装 使用手册