大資料學習19 hive元資料庫一些查詢和分割槽

2021-08-09 00:10:20 字數 2318 閱讀 3995

有時根據需求,需要對hive中的表批量處理,這時可以到元資料庫中進行一些查詢操作,操作請慎重!! 【mysql】

1、查詢某錶的分割槽

在spark-sql查詢hive表時,會由於元資料中檔案與hdfs檔案不一致而出現treenodeexception的異常。

比如說,在hive中show partitions時有分割槽pt=20160601,但是對應hdfs路徑下並沒有這個子資料夾時,在spark-sql中就會出現該異常。

這時如果需要查詢某錶的分割槽,就可以使用如下語句:

select p.* from partitions p

join tbls t

on t.tbl_id=p.tbl_id

where t.tbl_id='6'

and part_name like

'%deptno=10%';

#依靠tbl_id 和 分割槽名確認

2、查詢指定庫中stored as textfile型別的所有表名

select 

d.name,

t.tbl_name,

s.input_format,

s.output_format

from tbls t

join dbs d

join sds s

where t.db_id = d.db_id

and t.sd_id = s.sd_id

and d.name='test'

and s.input_format like

'%textinputformat%';

#test是庫名

3、查詢指定庫中的分割槽表

select

db.name,

tb.tbl_name,

pk.pkey_name

from tbls tb

join dbs db

join partition_keys pk

where tb.db_id = db.db_id

and tb.tbl_id=pk.tbl_id

and db.name='test';

#test是庫名

4、查詢指定庫的非分割槽表

select

db.name,

tb.tbl_name

from tbls tb

join dbs db

where tb.db_id = db.db_id

and db.name='test'

and tb.tbl_id not

in (

select

distinct tbl_id from partition_keys

) ;#test是庫名

5、查詢指定庫中某種儲存型別的分割槽表

select

db.name,

tb.tbl_name,

pk.pkey_name,

s.input_format,

s.output_format

from tbls tb

join dbs db

join partition_keys pk

join sds s

where tb.db_id = db.db_id

and tb.tbl_id=pk.tbl_id

and tb.sd_id = s.sd_id

and db.name='test'

and s.input_format like

'%textinputformat%';

#test是庫名

6、查詢指定庫中某種儲存型別的非分割槽表

select

db.name,

tb.tbl_name,

s.input_format,

s.output_format

from tbls tb

join dbs db

join sds s

where tb.db_id = db.db_id

and tb.sd_id = s.sd_id

and db.name='test'

and s.input_format like

'%textinputformat%'

and tb.tbl_id not

in (select

distinct tbl_id from partition_keys)

#test是庫名

**:

hive 元資料庫表描述

表名作用 bucketing cols 儲存bucket欄位資訊,通過sd id與其他表關聯 cds乙個欄位cd id,與sds表關聯 columns v2 儲存字段資訊,通過cd id與其他表關聯 database params 空dbs 儲存hive的database資訊 deleteme141...

Hive配置mysql作為元資料庫

安裝mysql,具體操作參考 安裝hive 複製hive default.xml.template和hive env.sh.template,重新命名為hive env.sh和hive site.xml hive default.xml的內容和hive site.xml一樣,系統預設先載入defau...

大資料學習之Hive

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 1 hive處理的資料儲存在hdfs 2 hive分析資料底層的實現是mapreduce 3 執行程式執行在yarn上 hive的優缺點 帶...