Hive小技巧及優化

2021-10-02 04:23:34 字數 769 閱讀 2930

查詢除了ds 和 hr 之外的所有列

select `(ds|hr)?+.+` from sales

修改表生命週期(odps)

alter table table_name set lifecycle days;
正則匹配

匹配除「*n*」之外的任何單個字元。要匹配包括「*n*」在內的任何字元,請使用像「(.|\n)」的模式。

解析執行過程

explain
效率優化

資料傾斜

count(distinct ) 效率低下,資料傾斜,改用 group by 優化

遇到的坑

查詢空值

例 字段 a 有三種取值 y , n , null (空值)

我想取 n 與 null ,如果查詢條件為 <> 『y』 ,是查不出 null 的

應該這麼寫 a <> 『y』 or a is null

其他

快速編輯

vscode中

選擇多行

option + shift + 滑鼠左鍵

編輯每行的末尾或者開頭

使用正規表示式進行替換 開頭 ^ ,末尾 $

Hive知識之優化技巧

1 用group by替換distinct去重select user name from trade group by user name 2 使用mapjoinselect mapjoin table a a.b.from table a a join table b b on a.id b.id...

Oracle I O優化小技巧

重做日誌檔案與歸檔日誌檔案放到不同硬碟.資料檔案與重做日誌檔案放到不同硬碟.不同的重做日誌檔案 控制檔案 歸檔日誌檔案最好放到不同硬碟 控制檔案 重做日誌檔案放到高速硬碟。不行就放到同一硬碟高速區,即柱面號低的硬碟外部半圈。歸檔日誌可以放在低速硬碟或分割槽 單純增加硬碟大小不太管用。最好增加硬碟物理...

mysql優化小技巧

對mysql優化時乙個綜合性的技術,主要包括 a 表的設計合理化 符合3nf b 新增適當索引 index 四種 普通索引 主鍵索引 唯一索引unique 全文索引 c 分表技術 水平分割 垂直分割 d 讀寫 寫 update delete add 分離 e 儲存過程 模組化程式設計,可以提高速度 ...