我正在尝试在Hbase中批量上传。我正在读取文本文件并从中创建Hfile,然后将该Hfile加载到Hbase。所有这些都是使用我的map-reduce工作完成的。我能够创建Hfile,我可以看到我的输出目录/_SUCCESS也包含数据。但是Hbase中的数据无法加载,出现以下异常
hadoop.io.MultipleIOException): org.apache.hadoop.io.MultipleIOException: 2 exceptions [org.apache.hadoop.security.AccessControlException: Permission denied: user=hbase, access=EXECUTE, inode="/user/m6034690":m6034690:supergroup:drwx------
为了启用安全的批量加载,我刚刚在hbase-site.xml中添加了以下属性:
<property>
<name>hbase.bulkload.staging.dir</name>
<value>/tmp/hbase-staging</value>
</property>
<property>
<name>hbase.coprocessor.region.classes</name>
<value>org.apache.hadoop.hbase.security.token.TokenProvider,
org.apache.hadoop.hbase.security.access.AccessController,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint</value>
</property>
并为我的输出目录添加了可遍历的tmp/hbase-staging