Druid集群导入hadoop数据问题
Druid集群导入hadoop数据问题
哭哭吓唬你 发表于8个月前
Druid集群导入hadoop数据问题
  • 发表于 8个月前
  • 阅读 30
  • 收藏 1
  • 点赞 0
  • 评论 0

【腾讯云】新注册用户域名抢购1元起>>>   

摘要: 1. Druid版本:0.10.0 2. Hadoop集群:2.6(CDH-)

与hadoopjar包冲突

Druid java.lang.OutOfMemoryError: unable to create new native thread

解决方案参考:Working with different versions of Hadoop

调整Druid集群所在机器的ulimit
参考:CentOS修改ulimit

io.druid.java.util.common.ISE: Job[class io.druid.indexer.IndexGeneratorJob] failed!

该问题存在两个方面的问题:

  1. druid所用的hadoop版本与hadoop集群的jar包冲突,尤其是CDH版本构建的hadoop集群。

解决方案1. 参考:Working with different versions of Hadoop
在每个数据定义文件中指定: demo:

"tuningConfig" : {
      "type" : "hadoop",
      "partitionsSpec" : {
        "type" : "hashed",
        "targetPartitionSize" : 5000000
      },
      "jobProperties" : {
        "mapreduce.job.classloader": "true",
         "mapreduce.job.classloader.system.classes": "-javax.validation.,java.,javax.,org.apache.commons.logging.,org.apache.log4j.,org.apache.hadoop."
        },
        "ignoreInvalidRows" : true
    }
  }

解决方案2:参考Druid.io 部署&使用文档

druid.indexer.runner.javaOpts=-server -Xmx2g -Duser.timezone=UTC -Dfile.encoding=UTF-8 -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager -Dhadoop.mapreduce.job.classloader=true
  1. 文件的路径错误。
    在各个节点启动时,其jvm.config中的-Djava.io.tmpdir=/tmp需要一个本地可访问的目录即可。

chmod error : 11

  1. 保证hdfs文件可读;
  2. 保证druid集群账户与hdfs账户一致
  3. 保证hdfs账户目录权限>=755
  4. 保证hdfs宿主机的账户权限>=755(这个好像没用)

数据文件位置

数据文件需要放置在HDFS中

参考

Druid集群配置
druid.io 从本地批(batch)导入数据与从hdfs 批导入数据的index task配置
druid.io问题记录

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 3
博文 91
码字总数 39003
×
哭哭吓唬你
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: