在關係數據庫系統中,命名空間namespace指的是一個表的邏輯分組,同一組中的表有類似的用途。hbase命名空間的概念爲即將到來的多組合特性打下基礎:
- 配額管理:限制一個namespace可以使用的資源,包括region和table
- 命名空間安全管理:提供了另一個層面的多租戶安全管理
- Region服務器組:一個命名或一張表,可以被固定到一組RegionServers上,從而保證了數據隔離性
namespace相關操作
# 創建namespace
create_namespace 'my_ns'
# 在namespace下創建表,cf是列族
create 'my_ns:my_table', 'cf'
# 刪除namespace
drop_namespace
# 修改namespace屬性
alter_namespace 'my_ns', {METHOD => 'set', 'PROPERTY_NAME' => 'PROPERTY_VALUE'}
預定義的命名空間
hbase中有兩個內置的預定義的命名空間:
- hbase:系統命名空間,用於包含hbase的內部表
- default:所有未指定命名空間的表都自動進入該namespace