hive入門(一)、什麽是hive
阿新 • • 發佈:2018-01-15
作業 strong 包括 麻煩 倉庫 離線 享元 tor 減少
元數據包括:表名、表所屬的數據庫(默認是default)、表的擁有者、列/
分區字段、表的類型(是否是外部表)、表的數據所在目錄等;
默認存儲在自帶的derby數據庫中,推薦使用采用MySQL存儲Metastore;
Hadoop
使用HDFS進行存儲,使用MapReduce進行計算;
1、Hive 基本概念
Hive是基於Hadoop的一個 數據倉庫工具,可以將結構化的數據文件映射
成一張表,並提供類SQL查詢功能;
Hive是構建在Hadoop 之上的數據倉庫;
使用HQL作為查詢接口;
使用HDFS存儲;
使用MapReduce計算;
簡單來說,Hive就是在Hadoop上架了一層SQL接口,可以將SQL翻譯成MapReduce去Hadoop上執行,這樣就使得數據開發和分析人員很方便的使用SQL來完成海量數據的統計和分析,而不必使用編程語言開發MapReduce那麽麻煩。
2、hive優缺點
優點: 入門簡單,避免了去寫MapReduce,減少開發人員的學習成本;
統一的元數據管理,可與impala/spark等共享元數據;
靈活性和擴展性比較好:支持UDF,自定義存儲格式等;
適合離線數據處理
缺點: Hive的效率比較低,由於hive是基於hadoop,Hadoop本身是一個批處理,高延遲的計算框架
其計算是通過MapReduce來作業,具有高延遲性
Hive適合對非實時的、離線的、對響應及時性要求不高的海量數據批量計算,即查詢,統計分析
3、Hive 架構
用戶接口: Client
CLI(hive shell)、JDBC/ODBC(java訪問hive),WEBUI(瀏覽器訪問hive)
元數據: Metastore
元數據包括:表名、表所屬的數據庫(默認是default)、表的擁有者、列/
分區字段、表的類型(是否是外部表)、表的數據所在目錄等;
默認存儲在自帶的derby數據庫中,推薦使用采用MySQL存儲Metastore;
Hadoop
使用HDFS進行存儲,使用MapReduce進行計算;
hive入門(一)、什麽是hive