- HCatalog 教程
- HCatalog - 主頁
- HCatalog - 簡介
- HCatalog - 安裝
- HCatalog - CLI
- HCatalog CLI 命令
- HCatalog - 建立表
- HCatalog - 更改表
- HCatalog - 檢視
- HCatalog - 顯示錶
- HCatalog - 顯示分割槽
- HCatalog - 索引
- HCatalog API
- HCatalog - 讀寫器
- HCatalog - 輸入輸出格式
- HCatalog - 載入器和儲存器
- HCatalog 實用資源
- HCatalog - 快速指南
- HCatalog - 實用資源
- HCatalog - 討論
HCatalog - 索引
建立索引
索引不過是表中某一特定列上的一個指標。建立索引意味著建立表中某一特定列上的一個指標。其語法如下 -
CREATE INDEX index_name ON TABLE base_table_name (col_name, ...) AS 'index.handler.class.name' [WITH DEFERRED REBUILD] [IDXPROPERTIES (property_name = property_value, ...)] [IN TABLE index_table_name] [PARTITIONED BY (col_name, ...)][ [ ROW FORMAT ...] STORED AS ... | STORED BY ... ] [LOCATION hdfs_path] [TBLPROPERTIES (...)]
示例
我們舉一個例子來理解索引的概念。使用我們先前用過的具有欄位 Id、名稱、工資、職稱和部門的相同員工表。在員工表的工資列上建立一個名為index_salary的索引。
以下查詢建立索引 -
./hcat –e "CREATE INDEX inedx_salary ON TABLE employee(salary) AS 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler';"
它是一個指向工資列的指標。如果列被修改,則使用索引值儲存這些更改。
刪除索引
以下語法用於刪除索引 -
DROP INDEX <index_name> ON <table_name>
以下查詢刪除索引 index_salary -
./hcat –e "DROP INDEX index_salary ON employee;"
廣告