DataX数据采集流程(项目)

2024-04-27 18:44

本文主要是介绍DataX数据采集流程(项目),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.CDH介绍

2.ClouderaManager架构

3.服务器

4.dataX架构

5.Datax数据处理流程

6.DataX的使用说明

7.Mysql数据切割

8.Mysql数据导入HDFS

9.查询站点

站点页面如下,可进一步查询导入的数据内容

10.dataX-Web访问页面

创建数据库连接


1.CDH介绍
--(1)CDH Cloudera's Distribution Including Apache Hadoop
--(2)CDH 是商业版的hadoop,由cloudera公司基于开源的hadoop进行二次开发,封装更多的功能,部分功能需要付费使用
--(3)CDH 集成了一个 CM(Cloudera Manager),使用各B(浏览器)/S(服务器)模型服务,可以在CM中通过web浏览器页面管理维护hadoop集群
--(4)CM的核心角色--server 主服务 处理CM的各类请求--agent 从服务 运行多台服务器上,接受servGr分配的任务
2.ClouderaManager架构
--(1)Server:Cloudera Manager的核心是Cloudera Manager Server。提供了统一的UI和API方便用户和集群上的CDH以及其它服务进行交互,能够安装配置CDH和其相关的服务软件,启动停止服务,维护集群中各个节点服务器以及上面运行的进程。
--(2)Agent:安装在每台主机上的代理服务。它负责启动和停止进程,解压缩配置,触发安装和监控主机
--(3)Management Service:执行各种监控、报警和报告功能的一组角色的服务
--(4)Database:CM自身使用的数据库,存储配置和监控信息
--(5)Cloudera Repository:云端存储库,提供可供Cloudera Manager分配的软件
--(6)Client:用于与服务器进行交互的接口1)Admin Console:管理员可视化控制台2)API:开发人员使用API可以创建自定义的Cloudera Manager应用程序
3.服务器
服务器说明
hadoop01 192.168.88.80
hadoop02 192.168.88.81
账户 root
密码 123456
注意:需要通过域名访问hadoop服务,就需要更改windos下域名解析文件
访问Server: http://hadoop01:7180/cmf/login
账号密码均为admin
4.dataX架构
DataX本身作为离线数据同步框架,采用Framework + plugin架构构建。将数据源读取和写入抽象成为Reader/Writer插件,纳入到整个同步框架中。
(1)Reader: Reader为数据采集模块,负责采集数据源的数据,将数据发送给Framework。
(2)Writer: Writer为数据写入模块,负责不断向Framework取数据,并将数据写入到目的端。
(3)Framework: Framework用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题。

5.Datax数据处理流程

6.DataX的使用说明
-- 切割数据并执行 官网: https://github.com/alibaba/DataX/blob/master/introduction.md
(1)启动finalshell连接虚拟机
(2)datagrip中对应虚拟机里创建相应数据库并插入数据
(3)在/export/server/datax/job下创建json文件
(4)切换到/export/server/datax/bin下运行python datax.py ../job/mysql_query.json
7.Mysql数据切割
-- json语言,切割数据过程,虚拟机运行
{"job": {"setting": {"speed": {"channel":1}},"content": [{"reader": {"name": "mysqlreader","parameter": {"username": "root","password": "123456","connection": [{"querySql": ["select * from student where id>=3;"],"jdbcUrl": ["jdbc:mysql://192.168.88.80:3306/itcast"]}]}},"writer": {"name": "streamwriter","parameter": {"print": true,"encoding": "UTF-8"}}}]}
}
8.Mysql数据导入HDFS
-- mysql数据导入hdfs(虚拟机数据可视化网站,操作流程同上)
{"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": "hdfs://192.168.88.80:8020","fileType": "text","path": "/data","fileName": "student","column": [{"name": "id","type": "int"},{"name": "name","type": "string"},{"name": "age","type": "INT"},{"name": "gender","type": "string"}],"writeMode": "append","fieldDelimiter": "\t"}}}]}
}
9.查询站点
在C:\Windows\System32\drivers\etc\hosts中添加如下代码
访问站点:hadoop01:9870(具体名称由自己的主虚拟机名决定)

站点页面如下,可进一步查询导入的数据内容

10.dataX-Web访问页面
http://hadoop01:9527/index.html

创建数据库连接

这篇关于DataX数据采集流程(项目)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/941249

相关文章

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Mysql如何将数据按照年月分组的统计

《Mysql如何将数据按照年月分组的统计》:本文主要介绍Mysql如何将数据按照年月分组的统计方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql将数据按照年月分组的统计要的效果方案总结Mysql将数据按照年月分组的统计要的效果方案① 使用 DA

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T