首页 > 其他分享 >datax使用及优化

datax使用及优化

时间:2022-10-18 12:00:57浏览次数:46  
标签:限速 record job datax 使用 byte 优化 channel

datax概述
    datax定位:离线同步工具
    datax优势:
        1.单进程多线程,单机压力大
        2.理论上可以打满带宽
链接
    文档链接:https://github.com/alibaba/DataX
    下载地址:https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202209/datax.tar.gz
datax组件概念:
    Reader:数据采集模块,负责采集数据,将数据发送给Framework
    Write:数据写入模块,负责向Framework取数据,将数据写入到目的端
    Framework:用于连接Reader、Write,作为两者数据的传输通道
        并处理缓冲、控流、并发、数据转换等问题
    Job:单个任务的管理节点,负责数据清理,子任务划分,task监控管理等
    Task:由job切分来,是最小作业单元,每个task负责一部分数据的同步工作
    Schedule:将Task组成TaskGroup,单个TaskGroup的并发数据为5
    TaskGroup:启动task
生成模板json
    cd /opt/datax/datax/bin/
    python3 ./datax.py -r streamreader -w streamwriter

    reader 列表:
        cassandrareader、datahubreader、drdsreader、ftpreader、gdbreader、
        hbase094xreader、hbase11xreader、hbase11xsqlreader、hbase20xsqlreader、
        hdfsreader、kingbaseesreader、loghubreader、mongodbreader、mysqlreader、
        oceanbasev10reader、odpsreader、opentsdbreader、oraclereader、ossreader、
        otsreader、otsstreamreader、postgresqlreader、rdbmsreader、sqlserverreader、
        starrocksreader、streamreader、tdenginereader、tsdbreader、txtfilereader
    writer 列表:
        adbpgwriter、adswriter、cassandrawriter、clickhousewriter、datahubwriter、
        drdswriter、elasticsearchwriter、ftpwriter、gdbwriter、hbase094xwriter、
        hbase11xsqlwriter、hbase11xwriter、hbase20xsqlwriter、hdfswriter、hologresjdbcwriter、
        kingbaseeswriter、kuduwriter、loghubwriter、mongodbwriter、mysqlwriter、
        oceanbasev10writer、ocswriter、odpswriter、oraclewriter、oscarwriter、
        osswriter、otswriter、postgresqlwriter、rdbmswriter、sqlserverwriter、
        starrockswriter、streamwriter、tdenginewriter、tsdbwriter、txtfilewriter
datax优化
    可修改配置:
        job.setting.speed.channel:channel并发数
        job.setting.speed.record:全局channel的record速率
        job.setting.speed.byte:全局channel的byte速率
            record、byte都设置以最小的为准,record、byte都没设置,以channel(优先级最低)为准
        core.transport.channel.speedrecord:单个channel的record限速
        core.transport.channel.speedbyte:单个channel的byte限速
    1.提升每个channel速度:
    2.datax内job的并发
        并发数=taskGroup数量*每个TaskGroup并发执行的Task数(5)
        方式一:channel个数=全局Byte限速/单Channel Byte限速
        方式二:channel个数=全局Record限速/单Channel Record限速
        方式三:直接限制channel个数=5
    3.提高JVM堆内存(4-8G)
        python3 ./datax.py --jvm="-Xms8G -Xmx8G"   //初始值和最大值相同避免内存抖动

标签:限速,record,job,datax,使用,byte,优化,channel
From: https://www.cnblogs.com/wuxiaolong4/p/16802158.html

相关文章

  • mysql sql优化相关[更新中]
    1.慢sql查询。select*frominformation_schema.processlistwherecommandnotin('Sleep')andusernotin('mydba','event_scheduler','repl','binlogbak','syst......
  • docker使用
    一、基于Linux安装Docker1、下载关于Docker的依赖环境yum-yinstallyum-utilsdevice-mapper-persistent-datalvm212、设置镜像下载Docker的镜像源yum-config-manager-......
  • tinymce富文本编辑器的简单使用及OSS直传
    1.安装tinymce依赖我的是vue2项目,指定版本"@tinymce/tinymce-vue":"^2.0.0","tinymce":"^5.0.3",npminstall@tinymce/tinymce-vue@2.0.0-Snpminstalltinymc......
  • Beyond Compare4 使用 SSH 登录问题记录
    服务器场景服务器未安装ftp软件,仅允许通过sftp登录,已开启防火墙,放行端口40022/TCP,不允许使用密码登录问题记录错误消息1:Connectionfailed:connectionerror(-1)原......
  • kubernetes中使用filebeat收集单独应用日志
    ---apiVersion:v1kind:ConfigMapmetadata:name:filebeat-confignamespace:defaultlabels:app:filebeatdata:filebeat.yml:|-filebeat.inp......
  • C#操作CPU内存时 winIO32位,64位的使用(运行时要用管理员身份)注意事项
    一、WinIo说明WinIO程序库允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作。通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,它绕过了Wi......
  • 使用@Param标识参数
    可以通过@Param注解标识mapper接口中的方法参数此时,会将这些参数放在map集合中,以@Param注解的value属性值为键,以参数为值;以param1,param2...为键,以参数为值;只需要通过${......
  • 数据库连接池-c3p0-基本使用、配置演示
    数据库连接池-c3p0-基本使用步骤:导入jar包(3个)c3p0-0.9.5.2.jar  mchange-commons-java-0.2.11.jar  mysql-connector-java-5.1.47.jar定义配置文件:......
  • 2022-10-18 h5端使用高德地图获取定位报错:INVALID_USER_SCODE
    解决方案:在html头部那里放你的高德安全密钥:<scripttype="text/javascript">window._AMapSecurityConfig={securityJsCode:"你的高德安全密......
  • NProgress使用教程
    GitHub地址https://github.com/rstacruz/nprogres 演示网站https://ricostacruz.com/nprogress/ 安装NProgress.JS(1)外链引入方式<scriptsrc='nprogress.js'......