1. 程式人生 > >002-Apache Hive

002-Apache Hive

Apache Hive

Apache Hive 資料倉庫軟體幫助在分散式儲存中讀取、寫入和管理大型資料集,並使用SQL語法查詢。

Hive是在Apache Hadoop之上構建的,它提供了以下特性:

  • 是一個能夠通過SQL輕鬆訪問資料的工具,從而支援資料倉庫任務,如提取/轉換/載入(ETL)、報告和資料分析等。
  • 一種將結構強加於各種資料格式的機制
  • 對儲存在 Apache HDFS 或其他資料儲存系統中的檔案的訪問,如 Apache HBase™
  • 通過 Apache Tez™
    Apache Spark™MapReduce™ 執行查詢
  • HPL-SQL 程式語言
  • 通過 Hive LLAPApache YARNApache Slider 進行次秒查詢檢索

Hive 提供了標準的 SQL 功能,包括許多後來的 SQL:2003 和 SQL:2011 的分析功能。
使用者也可以通過自定義函式(udf)、聚合(UDAFs)和表函式(udf)來擴充套件 Hive 的 SQL 。

Hive 不能使用 “Hive format” 來指定資料儲存。Hive 內建了逗號和文字檔案製表符值(CSV/TSV) ,Apache Parquet™, Apache ORC™

, 和其他格式的聯結器。(Hive comes with built in connectors for comma and tab-separated values (CSV/TSV) text files, Apache Parquet™, Apache ORC™, and other formats. )
使用者也可以為 Hive 擴充套件其他格式的聯結器。詳細資訊請參考 Developer GuideFile Formats and Hive SerDe

Hive 不是為聯機事務處理工作負載而設計的。它最好用於傳統的資料倉庫任務。
Hive 是為了最大化可伸縮性scalability (在 Hadoop 叢集中動態新增更多的機器),效能、可擴充套件性extensibility、容錯和與輸入格式的鬆耦合而設計的。

Hive 包括 HCatalog 和 WebHCat 元件:

  • HCatalog:作為 Hadoop 的一個表和儲存管理層,它允許使用者使用不同的資料處理工具(包括 Pig and MapReduce — 能夠更好的讀寫表格資料)。
  • WebHCat:WebHCat 提供了一個服務,用來執行 Hadoop MapReduce(or YARN)、Pig、Hive jobs or 使用一個 HTTP(REST style)介面來執行 Hive 元資料操作。