hbase数据源连接不通,报错ErrorMessage:[java.lang.IllegalAccessError: tried to access method com.google.common.base.Stopwatch.()V from class org.apache.hadoop.hbase.zookeeper.MetaTableLocator] Request id: 0a981b3a16808303144192668e1a1f
这个错误是由于HBase客户端和DataWorks中的HBase版本不兼容导致的。可能是由于HBase客户端使用的是Google Guava库的1.0版本,而DataWorks中使用的是2.0版本。
解决方法如下:
确认HBase客户端的版本是否与DataWorks中的HBase版本兼容。
如果版本不兼容,则需要升级HBase客户端的Google Guava库版本或降级DataWorks中的HBase版本。
如果升级或降级不可行,则可以使用HBase REST API或Phoenix JDBC连接HBase数据源。
如果以上方法都无法解决问题,则可以尝试联系阿里云技术支持,获取更多帮助。
以下是一些关于阿里云大数据开发治理DataWorks和HBase的链接:
阿里云DataWorks官方文档:https://help.aliyun.com/product/43121.html
阿里云HBase官方文档:https://help.aliyun.com/product/27477.html
阿里云HBase REST API文档:https://help.aliyun.com/document_detail/160482.html
阿里云Phoenix JDBC文档:https://help.aliyun.com/document_detail/74882.html
这个错误提示是因为HBase依赖的Guava版本不兼容所导致的。HBase 2.0.0及以上版本使用的是Guava 21.0版本,而一些旧版本的HBase使用的是Guava 14.0.1版本。当使用旧版本的HBase连接新版本的Guava时,就会出现这个错误。
解决方法如下:
1.升级HBase版本:如果你的HBase版本比较旧,可以尝试升级到2.0.0及以上版本,这样就可以与新版本的Guava兼容。
2.降低Guava版本:如果你的HBase版本不能升级,可以尝试降低Guava版本,使其与HBase版本兼容。在pom.xml文件中指定Guava的版本号,例如:
com.google.guava guava 14.0.1 3.排除Guava依赖:如果你的项目中已经使用了新版本的Guava,可以在HBase的依赖中排除Guava,避免版本冲突。例如:
org.apache.hbase hbase-client 2.0.0 com.google.guava guava 以上三种方法中,推荐使用第一种方法升级HBase版本,这样可以避免一些其他的兼容性问题。
这个看起来是权限校验异常 确认一下是否开启了认证。此答案整理自钉群“DataWorks交流群(答疑@机器人)”
echo ruok | nc zookeeper-hostname zookeeper-port
如果返回"imok",则表示Zookeeper正常工作。否则,需要检查Zookeeper的错误日志以了解有关故障的更多信息。
此外,还要确保使用的HBase客户端版本与集群中使用的HBase版本兼容。如果版本不兼容,则可能会出现类似的错误。
最后,如果HBase集群使用了安全配置,需要验证HBase客户端是否已正确配置进行身份验证和授权。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。