专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

七十二、HBase安全批量加载

HBase安全批量加载

由于客户端必须将从MapReduce作业生成的文件的所有权转移给HBase,所以在安全模式下的批量加载比正常设置涉及更多。安全批量加载由名为SecureBulkLoadEndpoint的协处理器实现,该协处理器使用由配置属性hbase.bulkload.staging.dir配置的暂存目录,该目录默认为/tmp/hbase-staging/。

安全批量加载算法

  • 只有一次,创建一个临时目录,这个目录是全局通用的,并由运行HBase的用户拥有(模式711或rwx—x—x)。此目录的列表将类似于以下内容:
    $ ls -ld /tmp/hbase-staging
    drwx--x--x  2 hbase  hbase  68  3 Sep 14:54 /tmp/hbase-staging
  • 用户将数据写入该用户拥有的安全输出目录。例如,/user/foo/data。
  • 在内部,HBase创建一个全局可读/可写(-rwxrwxrwx, 777)的秘密的临时目录。例如,/tmp/hbase-staging/averylongandrandomdirectoryname。该目录的名称和位置不会公开给用户。HBase管理这个目录的创建和删除。
  • 用户使数据具有全局可读性和可写性,将其移入随机的临时目录,然后调用该SecureBulkLoadClient#bulkLoadHFiles方法。

安全的优势在于秘密目录的长度和随机性。

要启用安全批量加载,请将以下属性添加到hbase-site.xml。

<property>
  <name>hbase.security.authorization</name>
  <value>true</value>
</property>
<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>

文章永久链接:https://tech.souyunku.com/12566

干货推荐

未经允许不得转载:搜云库技术团队 » 七十二、HBase安全批量加载

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们