1. 程式人生 > >Hive入門知識

Hive入門知識

不支持 應用設計 行數 數據 常用 net 倉庫 oal 報錯

Hive 是建立在 Hadoop 上的數據倉庫基礎構架,它提供了一系列的工具,可以用來進行數據提取轉化加載(ETL),這是一種可以存儲、查詢和分析存儲在 Hadoop 中的大規模數據的機制。由於 Hive 是針對數據倉庫應用設計的,而數據倉庫的內容是讀多寫少的。因此,Hive 中不支持對數據的改寫和添加。

Hive的相關寫法(與SQL Server的差別) 第一次使用Hadoop遇到的問題

1. ISNULL(field,‘‘) ——> COALESCE(field,‘‘)

2. CAST(field AS DATE) ——>TO_DATE(field)

3. hive裏有tab符號運行不了

4. insert null值報錯(TSocket read 0 bytes)

5. BETWEEN AND 不能用於ON後面,必須用在WHERE後面

解決方法:可以在join的兩個表裏創建兩個毫無意義的字段1 link_name,用這兩個字段on,然後把需要用到between的條件寫到where條件下。

6. hive裏用not in很容易報錯,而且效率差,正常用LEFT JOIN

Hive入門知識