1. 程式人生 > >Hive 基礎入門

Hive 基礎入門

加載 http 基礎入門 沒有 運行 轉化 自定義 函數 images

Hive的官方網站:

      https://hive.apache.org/

Hive簡介:

      Hive 是基於Hadoop 的一個數據倉庫工具,可以將結構化的數據文件映射成一張表,並提供類SQL查詢功能。

      Hive在企業中作為一種工作,可以很容易的對數據進行ETL。

      Hive可以對各種各樣的數據進行一種結構化的查詢。(按照一定結構進行查詢)。

      Hive 處理的數據都是存在 HDFS 之上,並且能夠與 HBase 進行集成。

      分析數據底層的實現都是 MapReduce ,運行都是運行在 yarn 上邊。

Hive的用途:  

      數據的查詢、數據的管理。

ETL簡介 :

      E : 提取數據

      T:轉換數據

      L:加載數據

HQL:

      HQL 就是 Hive 查詢使用的語句。

Hive本質 :

      就是將 HQL 語句轉化為 MapReduce 。

Hive 和 Hadoop 之間的關聯:

      都是使用 HDFS 進行數據存儲。

      都是使用 yarn 進行資源管理。

      都是使用 MapReduce 進行數據處理。

Hive的執行方式:

      Hive 就是將數據映射成一個關系型數據庫(RDBMS)的表。而執行方式就是 SQL 語句。

      執行SQL語句,底層就會自動的將語句翻譯為MapReduce程序,提交給 YARN 去執行。

Hive 在 Hadoop 生態系統中的地位:

      技術分享

Hive 的架構:

     技術分享

Hive的優點及使用場景

優點:

  1. 操作接口采用類SQL語法,提供快速開發的能力(簡單、容易上手);
  2. 避免了去寫MapReduce,減少開發人員的學習成本;
  3. 統一的元數據管理,可與impala/spark等共享元數據;
  4. 易擴展(HDFS+MapReduce:可以擴展集群規模;支持自定義函數

使用場景:

  1. 數據的離線處理;比如:日誌分析,海量結構化數據離線分析…
  2. Hive的執行延遲比較高,因此hive常用於數據分析的,對實時性要求不高的場合;
  3. Hive優勢在於處理大數據,對於處理小數據沒有優勢,因為Hive的執行延遲比較高。

 

Hive 基礎入門