[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数

这篇具有很好参考价值的文章主要介绍了[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、背景

二、报错

三、定位原因

四、解决办法

1.修改文件datax/conf/core.json

2.json内容中删除总限速的配置

五、参数说明

六、DataX提速优化

1.提升每个channel的速度

2.提升job内Channel并发有三种配置方式

3.提高JVM堆内存 


一、背景

使用datax从pg同步数据到hive发生报错

datax自定义json内容如下:

{
  "job": {
    "setting": {
      "speed": {
        "channel": 3,
        "byte": 1048576
      },
      "errorLimit": {
        "record": 0,
        "percentage": 0.02
      }
    },
    "content": [
      {
        "reader": {
          "name": "postgresqlreader",
          "parameter": {
            "username": "username",
            "password": "password",
            "column": [
              "\"id\"",
              "\"timestamp\""
            ],
            "splitPk": "",
            "connection": [
              {
                "table": [
                  "table_name"
                ],
                "jdbcUrl": [
                  "jdbc:ip:port/db"
                ]
              }
            ]
          }
        },
        "writer": {
          "name": "hdfswriter",
          "parameter": {
            "defaultFS": "hdfs://ip:port",
            "fileType": "orc",
            "path": "/user/hive/warehouse/db_name.db/table_name",
            "fileName": "table_name",
            "writeMode": "append",
            "fieldDelimiter": "\t",
            "encoding": "utf-8",
            "column": [
              {
                "name": "id",
                "type": "bigint"
              },
              {
                "name": "timestamp",
                "type": "bigint"
              }
            ]
          }
        }
      }
    ]
  }
}

二、报错

[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .].  - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数

datax引擎配置错误,踩坑记录,hive,hadoop,数据仓库

 

三、定位原因

很明显,error信息里面也说了,DataX的配置有问题,单个channel的bps值不能为空,也不能为非正数

四、解决办法

1.修改文件datax/conf/core.json

修改core -> transport -> channel -> speed -> "byte": -1

"core": {
        "dataXServer": {
            "address": "http://localhost:7001/api",
            "timeout": 10000,
            "reportDataxLog": false,
            "reportPerfLog": false
        },
        "transport": {
            "channel": {
                "class": "com.alibaba.datax.core.transport.channel.memory.MemoryChannel",
                "speed": {
                    "byte": -1,
                    "record": -1
                },
                "flowControlInterval": 20,
                "capacity": 512,
                "byteCapacity": 67108864
            },
            "exchanger": {
                "class": "com.alibaba.datax.core.plugin.BufferedRecordExchanger",
                "bufferSize": 32
            }
        },
}

2.json内容中删除总限速的配置

偷懒的方法,小白可以这么用

"setting": {
      "speed": {
        "channel": 3
      }

 

五、参数说明

关键参数

  • job.setting.speed.channel : channel并发数

  • job.setting.speed.record : 全局配置channel的record限速

  • job.setting.speed.byte:全局配置channel的byte限速

  • core.transport.channel.speed.record:单个channel的record限速

  • core.transport.channel.speed.byte:单个channel的byte限速

六、DataX提速优化

1.提升每个channel的速度

2.提升job内Channel并发有三种配置方式

  • bps限速:配置全局Byte限速以及单Channel Byte限速(Channel个数 = 全局Byte限速 / 单Channel Byte限速)
    总bps限速通过job.setting.speed.byte设置,在job.json中。
    
    单个channel的bps值通过core.transport.channel.speed.byte设置,在core.json中,默认为-1。
    
    如果设置了总bps限速,那单个channel的bps值不能为空,也不能为非正数。
    
    channel的数量=总bps限速/单个channel的bps值。
    
    比如总bps限速为100,单个channel的bps为10,那channel的数量就是100/10=10个
  • tps限速:配置全局Record限速以及单Channel Record限速(Channel个数 = 全局Record限速 / 单Channel Record限速)
    总tps限速通过job.setting.speed.record设置,在job.json中。
    
    单个channel的tps值通过core.transport.channel.speed.record设置,在core.json中,默认为-1。
    
    如果设置了总tps限速,那单个channel的tps值不能为空,也不能为非正数。
    
    channel的数量=总tps限速/单个channel的tps值。
    
    比如总tps限速为200,单个channel的tps为40,那channel的数量就是200/40=5个。
  • 直接配置Channel个数
    通过job.setting.speed.channel直接设置。
    
    比如这个值设置为5,那channel的数量就是5个。

3.提高JVM堆内存 

python datax/bin/datax.py --jvm="-Xms8G -Xmx8G" XXX.json

优先级

如果以上三个都设置了,那以哪个为主呢?

如果bps限速和tps限速没有设置,那channel的数量默认都是Integer.MAX_VALUE。

如果bps限速和tps限速都设置了,那谁比较小,以哪个为主。

比如上面的例子,tps的channel个数5小于bps的channel个数10,那channel的个数最终为5。

如果bps限速和tps限速只设置了一个,那以设置的那个为准,因为没设置的那个默认Integer.MAX_VALUE,肯定大于设置的那个,所以取小的数就是设置的那个。

如果bps限速和tps限速都没有设置,那才读取直接设置的值,也就是说,直接设置的优先级最低。

如果都没有设置,那直接抛异常,也就是说,必须设置Job运行速度。文章来源地址https://www.toymoban.com/news/detail-640966.html

到了这里,关于[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • xshell.exe 系统错误:由于找不到mfc140u.dll,无法继续执行代码。重新安装程序可能会解决此问题。

    重装系统后,运行xshell弹窗显示: 由于找不到mfc140u.dll,无法继续执行代码。重新安装程序可能会解决此问题。 既然你提示找不到这个dll文件,那找下是不是没有这个文件,使用everything工具搜索一下: 可以看到,系统是有这个文件的,那直接复制这个文件到安装目录下试试,

    2024年02月06日
    浏览(61)
  • IDEA翻译插件Translation配置翻译引擎解决翻译错误的问题

    1.问题 :在安装好translation插件并重启IDEA之后翻译单词发生 翻译失败:未知错误 。 2.原因 :IDEA默认的翻译引擎是Google 翻译,而Google 翻译服务已经在中国停止提供,原本的网址 translate.google.cn 已经换成了普通的 Google Search 搜索页面,上述转变影响到中国用户在使用 Chrome 浏

    2024年02月12日
    浏览(26)
  • docker 安装 datax和datax-web 之 datax-web登录时提示账号或密码错误

    https://www.cnblogs.com/leihongnu/p/16612273.html 根据该博客的教程安装成功后,登录页面能打开,但是所提供的账户密码一直报错,这个就需要根据日志一步步去寻找原因了。 该镜像包含三个模块:datax, datax-web, datax-exector,日志路径分别为: /home/datax/datax-web-2.1.2/bin/console.out /home/data

    2024年02月10日
    浏览(28)
  • Python中常见的一个问题是“ModuleNotFoundError: No module named ‘yaml‘”,这个错误提示通常表示你的代码中缺少了名

    Python中常见的一个问题是“ModuleNotFoundError: No module named ‘yaml’”,这个错误提示通常表示你的代码中缺少了名为yaml的python模块。如果你的项目中需要使用到yaml模块,那么你需要确保已经安装了这个模块。接下来,我们将介绍如何解决这个问题。 第一步:确定错误的原因 在

    2024年02月16日
    浏览(27)
  • [问题解决][edge]你现在无法访问 XXX.com,因为网站使用的是 HSTS。网络错误和攻击通常是暂时的,因此该页面以后可能会恢复正常。

    用 edge 今天访问公司的测试产品,出现 这样的问题。 HSTS:HSTS 是 HTTP 严格传输安全(HTTP Strict Transport Security) 的缩写。 这是一种网站用来声明他们只能使用安全连接(HTTPS)访问的方法。 如果一个网站声明了 HSTS 策略,浏览器必须拒绝所有的 HTTP 连接并阻止用户接受不安全

    2024年02月12日
    浏览(37)
  • 记录由于未关闭加速器就关机而导致的再次启动后DNS配置错误

    先直接给出解决方案: cmd输入 netsh winsock reset 这段时间在同学的推荐下入坑了鹅鹅鸭(Goose Goose Duck),一款紧张刺激的狼人杀类型的游戏。如果想顺畅的进行游戏,则需要使用加速器。 不久问题出现了:在周六上午和周二上午两次在教学楼打开电脑都发现没有网络,第一次

    2024年02月11日
    浏览(32)
  • centos7-datax和datax-web安装以及安装中问题的解决

    一、下载这些软件(见)   系统变量设置(安装 maven和jdk略) vi /etc/profile JAVA_HOME=/usr/local/jdk1.8.0_40 CLASSPATH=$JAVA_HOME/lib/ PATH=$PATH:$JAVA_HOME/bin DATAX_HOME=/usr/local/datax PATH=$PATH:$DATAX_HOME/bin   export MAVEN_HOME=/usr/local/apache-maven-3.6.3 export PATH=$PATH:$MAVEN_HOME/bin   生效系统变量 source /etc/p

    2024年02月10日
    浏览(30)
  • Hive产生大量Info日志的问题(由Flink On Yarn配置引起的)

    当时,hive安装部署好,并没有这个问题,后面部署了 Flink On Yarn,就没有使用过hive了。 (1)使用 bin/hive 的时候,会打印大量的INFO日志,不停的刷日志,sql语句这些能够正常执行(MR引擎或者Tez引擎都可以),但是其实无法正常使用。 (2)info日志如下所示: (3)而后想通

    2024年02月11日
    浏览(32)
  • DATAX的安装和使用上遇到的问题和解决方案

    1.datax-web安装流程: https://github.com/WeiYe-Jing/datax-web/blob/master/doc/datax-web/datax-web-deploy.md 2.安装和使用遇到的问题 1.在运行json数据的时候有如下报错 /usr/bin/python: can’t find ‘ main ’ module in ‘’ 原因:datax-web找不到datax启动文件(datax.py) 解决方案: 1.在安装datax-web的时候需要先

    2024年02月15日
    浏览(36)
  • Error code: 128 通常是Git返回的错误代码

    这个错误信息表明在从GitHub克隆存储库时发生了问题。 导致错误的原因可能是网络或, 未初始化为 Git 仓库 者是其他原因。 我采用解决方法:直接clone到目标仓库,然后重新运行终端就可以了。 git clone https://github.com/Stability-Al/stablediffusion.git \\\"D:AIstable-diffusion-webuirepositori

    2024年03月18日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包