日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HBase常用操作之namespace

發布時間:2024/1/17 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HBase常用操作之namespace 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、介紹

在HBase中,namespace命名空間指對一組表的邏輯分組,類似RDBMS中的database,方便對表在業務上劃分。Apache HBase從0.98.0, 0.95.2兩個版本開始支持namespace級別的授權操作,HBase全局管理員可以創建、修改和回收namespace的授權。

2、namespace

HBase系統默認定義了兩個缺省的namespace
  • hbase:系統內建表,包括namespace和meta表
  • default:用戶建表時未指定namespace的表都創建在此

創建namespace[java]?view plaincopy
  • hbase>create_namespace?'ai_ns'??
  • 刪除namespace[java]?view plaincopy
  • hbase>drop_namespace?'ai_ns'??
  • 查看namespace[java]?view plaincopy
  • hbase>describe_namespace?'ai_ns'??
  • 列出所有namespace[java]?view plaincopy
  • hbase>list_namespace??
  • 在namespace下創建表[java]?view plaincopy
  • hbase>create?'ai_ns:testtable',?'fm1'??
  • 查看namespace下的表
    [java]?view plaincopy
  • hbase>list_namespace_tables?'ai_ns'??

  • 3、授權

    具備Create權限的namespace Admin可以對表創建和刪除、生成和恢復快照具備Admin權限的namespace Admin可以對表splits或major compactions
    授權tenant-A用戶對ai_ns下的寫權限[ruby]?view plaincopy
  • hbase>grant?'tenant-A'?'W'?'@ai_ns'??
  • 回收tenant-A用戶對ai_ns的所有權限[ruby]?view plaincopy
  • hbase>revoke?'tenant-A''@ai_ns'??
  • 當前用戶:hbase[java]?view plaincopy
  • hbase>namespace_create?'hbase_perf'??
  • hbase>grant?'mike',?'W',?'@hbase_perf'??
  • 當前用戶:mike[java]?view plaincopy
  • hbase>create?'hbase_perf.table20',?'family1'??
  • hbase>create?'hbase_perf.table50',?'family1'??
  • mike創建了兩張表table20和table50,同時成為這兩張表的owner,意味著有'RWXCA'權限此時,mike團隊的另一名成員alice也需要獲得hbase_perf下的權限,hbase管理員操作如下當前用戶:hbase[ruby]?view plaincopy
  • hbase>grant?'alice',?'W',?'@hbase_perf'??
  • 此時alice可以在hbase_perf下創建表,但是無法讀、寫、修改和刪除hbase_perf下已存在的表當前用戶:alice[ruby]?view plaincopy
  • hbase>scan?'hbase_perf:table20'??
  • 報錯AccessDeniedException如果希望alice可以訪問已經存在的表,則hbase管理員操作如下當前用戶:hbase[java]?view plaincopy
  • hbase>grant?'alice',?'RW',?'hbase_perf.table20'??
  • hbase>grant?'alice',?'RW',?'hbase_perf.table50'??

  • 在HBase中啟用授權機制 hbase-site.xml [html]?view plaincopy
  • <property>??
  • ?????<name>hbase.security.authorization</name>??
  • ?????<value>true</value>??
  • </property>??
  • <property>??
  • ?????<name>hbase.coprocessor.master.classes</name>??
  • ?????<value>org.apache.hadoop.hbase.security.access.AccessController</value>??
  • </property>??
  • <property>??
  • ?????<name>hbase.coprocessor.region.classes</name>??
  • ?????<value>org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.AccessController</value>??
  • </property>??
  • 配置完成后需要重啟HBase集群


    授權相關JIRA HBASE-8409
    HBASE-9206

    4、總結

    HBase namespace特性是對表資源進行隔離的一種技術,隔離技術決定了HBase能否實現資源統一化管理的關鍵,提高了整體的安全性。

    總結

    以上是生活随笔為你收集整理的HBase常用操作之namespace的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。