当前位置: 首页 > news >正文

四川省住房与城乡建设厅网站管网兴山县铁路建设协调指挥部网站

四川省住房与城乡建设厅网站管网,兴山县铁路建设协调指挥部网站,网站建设公司 跨界鱼科技优,主播网站开发一、DataX 简介 DataX 是阿里云 DataWorks 数据集成的开源版本#xff0c;主要就是用于实现数据间的离线同步。DataX 致力于实现包括关系型数据库#xff08;MySQL、Oracle 等#xff09;、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源#xff08;即不同的数据库#x…一、DataX 简介 DataX 是阿里云 DataWorks 数据集成的开源版本主要就是用于实现数据间的离线同步。DataX 致力于实现包括关系型数据库MySQL、Oracle 等、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源即不同的数据库 间稳定高效的数据同步功能。 为了解决异构数据源同步问题DataX将复杂的网状同步链路变成了星型数据链路DataX 作为中间传输载体负责连接各种数据源当需要接入一个新的数据源时只需要将此数据源对接到 DataX便能跟已有的数据源作为无缝数据同步。 1.DataX3.0框架设计 DataX 采用 Framework Plugin 架构将数据源读取和写入抽象称为 Reader/Writer 插件纳入到整个同步框架中。 2.DataX3.0核心架构 DataX 完成单个数据同步的作业我们称为 JobDataX 接收到一个 Job 后将启动一个进程来完成整个作业同步过程。DataX Job 模块是单个作业的中枢管理节点承担了数据清理、子任务切分、TaskGroup 管理等功能。 DataX Job 启动后会根据不同源端的切分策略将 Job 切分成多个小的 Task (子任务)以便于并发执行。 接着 DataX Job 会调用 Scheduler 模块根据配置的并发数量将拆分成的 Task 重新组合组装成 TaskGroup任务组。 每一个 Task 都由 TaskGroup 负责启动Task 启动后会固定启动 Reader -- Channel -- Writer 线程来完成任务同步工作。 DataX 作业运行启动后Job 会对 TaskGroup 进行监控操作等待所有 TaskGroup 完成后Job 便会成功退出异常退出时值非0。 3.DataX调度过程 首先 DataX Job 模块会根据分库分表切分成若干个 Task然后根据用户配置并发数来计算需要分配多少个 TaskGroup计算过程Task / Channel TaskGroup最后由 TaskGroup 根据分配好的并发数来运行 Task(任务)。 二、在Linux部署 DataX3.0 DataX下载地址 DataX源码下载地址 因为 CentOS 7 上自带 Python 2.7 的软件包所以不需要进行安装 1.Linux 上安装 DataX 软件 [root192 ~]# wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz [root192 ~]# tar -zxvf datax.tar.gz -C /usr/local/ [root192 ~]# rm -rf /usr/local/datax/plugin/*/._* # 需要删除隐藏文件 (重要) 当未删除时可能会输出[/usr/local/datax/plugin/reader/._drdsreader/plugin.json] 不存在. 请检查您的配置文件. 验证 [root192 ~]# cd /usr/local/datax/bin [root192 ~]# python datax.py ../job/job.json # 用来验证是否安装成功 输出 2022-04-24 17:21:04.845 [job-0] INFO JobContainer - 任务启动时刻 : 2022-04-24 17:20:54 任务结束时刻 : 2022-04-24 17:21:04 任务总计耗时 : 10s 任务平均流量 : 253.91KB/s 记录写入速度 : 10000rec/s 读出记录总数 : 100000 读写失败总数 : 0 三、使用 DataX3.0 实现数据同步 例如生成MySQL到MySQL同步的模板 #输出mysql配置模版 [root192 bin]# python /usr/local/datax/bin/datax.py -r mysqlreader -w mysqlwriter /usr/local/datax/job/mysql2mysql.json#根据模板编写 mysql2mysql.json文件 {job: {content: [{reader: {name: mysqlreader, parameter: {column: [id,name], #*表示所有字段connection: [{jdbcUrl: [jdbc:mysql://x.x.x.210:3306/mytest], table: [user]}], password: root, username: root }}, writer: {name: mysqlwriter, parameter: {column: [id,name], connection: [{jdbcUrl: jdbc:mysql://192.168.88.192:3306/mytest, table: [user]}], password: root, username: root, writeMode: insert}}}], setting: {speed: {channel: 6}}} } 验证 [root192 job]# python /usr/local/datax/bin/datax.py mysql2mysql.json2022-04-24 17:39:03.445 [job-0] INFO JobContainer - 任务启动时刻 : 2022-04-24 17:38:49 任务结束时刻 : 2022-04-24 17:39:03 任务总计耗时 : 14s 任务平均流量 : 0B/s 记录写入速度 : 0rec/s 读出记录总数 : 3 读写失败总数 : 0 四、DataX-WEB 安装部署1.下载DataX-Web源码 https://github.com/WeiYe-Jing/datax-web 1.IDEA编译打包 下载链接https://pan.baidu.com/s/13a8nIpz6FL8y4fdE94trjQ 提取码data 2.官方提供的版本tar版本包 https://pan.baidu.com/s/13yoqhGpD00I82K4lOYtQhg 提取码cpsk 2.解压安装包 在选定的安装目录解压安装包 [root192 ~]# tar -zxvf datax-web-2.1.2.tar.gz -C /usr/local/dataxweb 3.登录msyql建库 为接下来一键安装部署准备这里我建的库是dataxweb(自己定义就好前后保持一致) mysql create database dataxweb; 初始化数据库 # 找到 bin/db/datax_web.sql 文件进行初始化 4.执行一键安装脚本 进入解压后的目录找到bin目录下面的install.sh文件如果选择交互式的安装则直接执行 [root192 dataxweb]# cd bin/ [root192 bin]# pwd /usr/local/dataxweb/bin [root192 bin]# ./install.sh 然后按照提示操作即可。包含了数据库初始化如果你的服务上安装有mysql命令在执行安装脚本的过程中则会出现以下提醒 Scan out mysql command, so begin to initalize the database Do you want to initalize database with sql: [{INSTALL_PATH}/bin/db/datax-web.sql]? (Y/N)y Please input the db host(default: 127.0.0.1): Please input the db port(default: 3306): Please input the db username(default: root): Please input the db password(default: ): root Please input the db name(default: dataxweb) 按照提示输入数据库地址端口号用户名密码以及数据库名称大部分情况下即可快速完成初始化。 如果服务上并没有安装mysql命令则可以取用目录下/bin/db/datax-web.sql脚本去手动执行完成后修改相关配置文件 vi modules/datax-admin/conf/bootstrap.properties#Database DB_HOST127.0.0.1 DB_PORT3306 DB_USERNAMEroot DB_PASSWORDroot DB_DATABASEdataxweb 按照具体情况配置对应的值即可。 在交互模式下对各个模块的package压缩包的解压以及configure配置脚本的调用都会请求用户确认,可根据提示查看是否安装成功如果没有安装成功可以重复尝试如果不想使用交互模式跳过确认过程则执行以下命令安装 ./bin/install.sh --force 5.其他配置 1、邮件服务 在项目目录modules/datax-admin/bin/env.properties 配置邮件服务(可跳过)MAIL_USERNAME MAIL_PASSWORD 此文件中包括一些默认配置参数例如server.port具体请查看文件。 2、指定PYTHON_PATH的路径 vim modules/datax-executor/bin/env.properties### 执行datax的python脚本地址 PYTHON_PATH/usr/local/datax/bin/datax.py### 保持和datax-admin服务的端口一致默认是9527如果没改datax-admin的端口可以忽略 DATAX_ADMIN_PORT 此文件中包括一些默认配置参数例如executor.port,json.path,data.path等具体请查看文件。 6.启动服务 1、一键启动所有服务 [root192 dataxweb]# cd /usr/local/dataxweb/ [root192 dataxweb]# ./bin/start-all.sh 中途可能发生部分模块启动失败或者卡住可以退出重复执行如果需要改变某一模块服务端口号则 vi ./modules/{module_name}/bin/env.properties 找到SERVER_PORT配置项改变它的值即可。当然也可以单一地启动某一模块服务 ./bin/start.sh -m {module_name}module_name可以为datax-admin或datax-executor 2、一键停止所有服务 [root192 dataxweb]# cd /usr/local/dataxweb/ [root192 dataxweb]# ./bin/stop-all.sh 当然也可以单一地停止某一模块服务 ./bin/stop.sh -m {module_name} 3、查看服务   在Linux环境下使用JPS命令查看是否出现DataXAdminApplication和DataXExecutorApplication进程如果存在这表示项目运行成功 如果项目启动失败请检查启动日志 modules/datax-admin/bin/console.out 或者 modules/datax-executor/bin/console.out 五、DataX-WEB 运行1.前端界面 部署完成后在浏览器中输入 http://ip:port/index.html 就可以访问对应的主界面ip为datax-admin部署所在服务器ip,port为为datax-admin 指定的运行端口9527 输入用户名 admin 密码 123456 就可以直接访问系统 2.datax-web API datax-web部署成功后可以了解datax-web API相关内容网址: http://ip:port/doc.html 3.DataX-WEB 运行日志 部署完成之后在modules/对应的项目/data/applogs下(用户也可以自己指定日志修改application.yml 中的logpath地址即可)用户可以根据此日志跟踪项目实际启动情况 如果执行器启动比admin快执行器会连接失败日志报拒绝连接的错误一般是先启动admin,再启动executor,30秒之后会重连如果成功请忽略这个异常。 六、DataX-WEB 实操 1.查看执行器 查看web界面是否有注册成功的执行器另外执行器可以根据需要改名称。 2.创建项目 3.路由策略 当执行器集群部署时提供丰富的路由策略包括: FIRST第一个固定选择第一个机器 LAST最后一个固定选择最后一个机器 ROUND轮询依次分配任务 RANDOM随机随机选择在线的机器 CONSISTENT_HASH一致性HASH每个任务按照Hash算法固定选择某一台机器且所有任务均匀散列在不同机器上。 LEAST_FREQUENTLY_USED最不经常使用使用频率最低的机器优先被选举 LEAST_RECENTLY_USED最近最久未使用最久为使用的机器优先被选举 FAILOVER故障转移按照顺序依次进行心跳检测第一个心跳检测成功的机器选定为目标执行器并发起调度 BUSYOVER忙碌转移按照顺序依次进行空闲检测第一个空闲检测成功的机器选定为目标执行器并发起调度 阻塞处理策略调度过于密集执行器来不及处理时的处理策略 •单机串行调度请求进入单机执行器后调度请求进入FIFO队列并以串行方式运行 •丢弃后续调度调度请求进入单机执行器后发现执行器存在运行的调度任务本次请求将会被丢弃并标记为失败 •覆盖之前调度调度请求进入单机执行器后发现执行器存在运行的调度任务将会终止运行中的调度任务并清空队列然后运行本地调度任务 增量增新建议将阻塞策略设置为丢弃后续调度或者单机串行 设置单机串行时应该注意合理设置重试次数(失败重试的次数* 每次执行时间 任务的调度周期)重试的次数如果设置的过多会导致数据重复例如任务30秒执行一次每次执行时间需要20秒设置重试三次如果任务失败了第一个重试的时间段为1577755680-1577756680重试任务没结束新任务又开启那新任务的时间段会是1577755680-1577758680 4.任务类型 先选择DataX任务后续配置完详细任务后可以按照下图修改其它可以根据需求填写。 5. 数据源配置 根据不同数据源配置参数。 6.任务构建 构建reader 这里没按上面操作生成映射直接使用任务管理-添加手动配置 {job: {content: [{reader: {name: mysqlreader,parameter: {username: root,password: root,column: [*],where: save_time FROM_UNIXTIME(${lastTime}) and save_time FROM_UNIXTIME(${currentTime}),splitPk: id,connection: [{table: [uc_op_amazon_api_store_download],jdbcUrl: [jdbc:mysql://x.x.x.210:3306/test_system]}]}},writer: {name: mysqlwriter,parameter: {writeMode: insert,username: root,password: root,column: [*],connection: [{jdbcUrl: jdbc:mysql://192.168.88.192:3306/mytest?useUnicodetruecharacterEncodingutf8,table: [uc_op_amazon_api_store_download]}]}}}],setting: {speed: {channel: 6}}} } -DstartId%s -DendId%s# 表名 uc_op_business_reports#主键 id#id自增配置条件
http://www.hkea.cn/news/14536299/

相关文章:

  • 招聘网站源码下载做网站seo的公司
  • 旅游网站建设方案两百字免费建立手机网站
  • ps个人网站首页怎么制作网页设计的流程是什么
  • 中企动力成都分公司网站建设案例动画片是怎么制作出来的
  • 百家号和网站同步做有些网站仿出问题
  • 浙江省住房城乡建设厅官方网站做企业网站设计手机站
  • 郑州网站制作-中国互联怎么才能有自己的网站
  • .net做网站教程全国做临期进口食品的网站
  • html旅游网站模板软件企业网站建设栏目结构图
  • 长春企业网站建设高校后勤网站建设
  • 抚顺网站建设费用公众平台账号授权怎么弄
  • 网站自己做需要多少钱网站做到赣州第一名要多少钱
  • 沈阳求做商城 网站网上推广赚钱项目
  • 建设网站产品图片显示不全保险行业网站建设
  • 张槎九江网站建设兼职设计师在哪里接活
  • 郑州的网站建设公司哪家好成都公司做网站的
  • 网站开发协议书 英文版手机网站吧
  • 网站上线注意问题德阳企业网站建设
  • 厦门建站最新消息阿里巴巴电脑版
  • 专业维护网站的公司wordpress feed源
  • 手机网站开发环境搭建福州网站建设金森
  • 广州网站排名优化服务湖南有实力的关键词优化
  • 通辽网站建设招聘做介绍的英文网站
  • 住房和城乡建设部注册中心网站网站建设推广实训总结
  • 化妆品网站的建设 论文北京seo课程
  • 网站微信登录怎么做的电商入门基础知识
  • 泰州网站模板wordpress固定链接目录
  • 长沙做网站设计公司网站设计制作培训
  • 怎么建立博客网站电子购物网站建设目的
  • 创建网站需要多少资金零基础学seo要多久