大数据中的项目数据采集

Datax介绍

官网: DataX/introduction.md at master · alibaba/DataX · GitHub
DataX 是阿里云 DataWorks数据集成 的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。

DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS, databend 等各种异构数据源之间高效的数据同步功能。

Datax数据处理流程

Datax的使用说明

Datax在使用是主要编写json文件,在json中定义read如何读取 write如何写入

格式: github中可以看到

{

"job": {

"setting": {

"speed": {

"channel": 3

},

"errorLimit": {

"record": 0,

"percentage": 0.02

}

},

"content": [

{

"reader": {

"name": "mysqlreader",

"parameter": {

"username": "root",

"password": "123456",

"column": [

"id",

"name"

],

"splitPk": "db_id",

"connection": [

{

"table": [

"table"

],

"jdbcUrl": [

"jdbc:mysql://127.0.0.1:3306/database"

]

}

]

}

},

"writer": {

"name": "streamwriter",

"parameter": {

"print":true

}

}

}

]

}

}

例子:

-- 在mysql中创建库表

create database itcast charset=utf8;

use itcast;

create table student(

id int,

name varchar(20),

age int,

gender varchar(20)

);

insert into student values(1,'张三',20,'男'),

(2,'李四',21,'男'),

(3,'王五',19,'男'),

(4,'赵六',22,'男');

编写datax的json文件:

{

"job": {

"setting": {

"speed": {

"channel": 3

},

"errorLimit": {

"record": 0,

"percentage": 0.02

}

},

"content": [

{

"reader": {

"name": "mysqlreader",

"parameter": {

"username": "root",

"password": "123456",

"column": [

"id",

"name",

"age",

"gender"

],

"splitPk": "id",

"connection": [

{

"table": [

"student"

],

"jdbcUrl": [

"jdbc:mysql://192.168.88.80:3306/itcast"

]

}

]

}

},

"writer": {

"name": "streamwriter",

"parameter": {

"print":true

}

}

}

]

}

}

Mysql 数据导入HIVE:

{

"job": {

"setting": {

"speed": {

"channel":1

}

},

"content": [

{

"reader": {

"name": "mysqlreader",

"parameter": {

"username": "root", -----用户名字以及密码

"password": "123456",

"column": [ ------------------自己的字段

"id",

"name",

"age",

"gender"

],

"splitPk": "id", ----根据什么字段分割

"connection": [

{

"table": [

"student"

],

"jdbcUrl": [

"jdbc:mysql://192.168.88.80:3306/itcast"

]

}

]

}

},

"writer": {

"name": "hdfswriter",

"parameter": {

"defaultFS": "自己的网址IP",

"fileType": "text",

"path": "自己的路径",

"fileName": "表名",

"column": [

{

"name": "自己表中的字段",

"type": "字段类型"

},

{

"name": "自己表中的字段",

"type": "字段类型"

},

{

"name": "自己表中的字段",

"type": "字段类型"

},

{

"name": "自己表中的字段",

"type": "字段类型"

}

],

"writeMode": "append",

"fieldDelimiter": "," ------------分隔符

}

}

}

]

}

}

使用Datax-Web

如果不想通过finashell进行也可以使用datax-Web

缺点: 不稳定 私人开发的

自己可以去搜一下 不太建议 比较不稳定

相关推荐
一个儒雅随和的男子7 分钟前
Elasticsearch出现深度分页问题怎么解决?
大数据·elasticsearch·搜索引擎
AI智图坊23 分钟前
多件装组合SKU图的批量生产效率分析:从PS手工到AI自动化的工作流改造
大数据·运维·人工智能·gpt·ai作画·自动化·aigc
zuYM4g7Dp1 小时前
NoSql数据库设计心得
数据库·nosql
jerryinwuhan2 小时前
面向产业带与中小企业数字化转型的电商运营人才培养模式
大数据·人工智能
睡不醒男孩0308233 小时前
第七篇:揭秘 PostgreSQL 数据库内核级管控:CLup 深度架构设计与高可用底座技术白皮书
数据库·postgresql·clup
cmes_love3 小时前
Level 2逐笔成交历史数据下载方法笔记
数据库·笔记·oracle
swordbob4 小时前
MySQL字符集陷阱:从Oracle迁移踩坑到utf8mb4强制规范
数据库·sql
Fnetlink14 小时前
企业SDWAN供应商
大数据
牛油果子哥q4 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
十五年专注C++开发4 小时前
MySql中各种功能用sql语句实现总结
数据库·sql·mysql