從零自學Hadoop(14):Hive介紹及安裝

sinodzh發表於2015-12-07

閱讀目錄

本文版權歸mephisto和部落格園共有,歡迎轉載,但須保留此段宣告,並給出原文連結,謝謝合作。

文章是哥(mephisto)寫的,SourceLink

 

  本系列已經有一個多月沒更新了,期間涉及到找相關對應的工作,所幸的事,得到了幾個offer,後來綜合考慮來到了目前這家工作。希望在接下來的時間裡,能融入整個社群中去,做出自己略微的貢獻。

     上一篇,我們列舉了hadoop常用的命令,本應該給大家實戰下命令的使用的,後來還是想大家自己下去試驗試驗,接下來開始初略介紹hadoop生態圈中的hive。

   下面我們開始介紹hive的介紹及安裝。

介紹

一:定義

  Hive是建立在 Hadoop 上的資料倉儲基礎構架。它提供了一系列的工具,可以用來進行資料提取轉化載入(ETL),這是一種可以儲存、查詢和分析儲存在 Hadoop 中的大規模資料的機制。Hive 定義了簡單的類 SQL 查詢語言,稱為 HQL,它允許熟悉 SQL 的使用者查詢資料。同時,這個語言也允許熟悉 MapReduce 開發者的開發自定義的 mapper 和 reducer 來處理內建的 mapper 和 reducer 無法完成的複雜的分析工作。

二:適用場景

  Hive 構建在基於靜態批處理的Hadoop 之上,Hadoop 通常都有較高的延遲並且在作業提交和排程的時候需要大量的開銷。因此,Hive 並不能夠在大規模資料集上實現低延遲快速的查詢,例如,Hive 在幾百MB 的資料集上執行查詢一般有分鐘級的時間延遲。

  因此,Hive 並不適合那些需要低延遲的應用,例如,聯機事務處理(OLTP)。Hive 查詢操作過程嚴格遵守Hadoop MapReduce 的作業執行模型,Hive 將使用者的HiveQL 語句通過直譯器轉換為MapReduce 作業提交到Hadoop 叢集上,Hadoop 監控作業執行過程,然後返回作業執行結果給使用者。Hive 並非為聯機事務處理而設計,Hive 並不提供實時的查詢和基於行級的資料更新操作。Hive 的最佳使用場合是大資料集的批處理作業,例如,網路日誌分析。

三:設計特徵

  Hive 是一種底層封裝了Hadoop 的資料倉儲處理工具,使用類SQL 的HiveQL 語言實現資料查詢,所有Hive 的資料都儲存在Hadoop 相容的檔案系統(例如,Amazon S3、HDFS)中。Hive 在載入資料過程中不會對資料進行任何的修改,只是將資料移動到HDFS 中Hive 設定的目錄下,因此,Hive 不支援對資料的改寫和新增,所有的資料都是在載入的時候確定的。Hive 的設計特點如下。

● 支援索引,加快資料查詢。

● 不同的儲存型別,例如,純文字檔案、HBase 中的檔案。

● 將後設資料儲存在關聯式資料庫中,大大減少了在查詢過程中執行語義檢查的時間。

● 可以直接使用儲存在Hadoop 檔案系統中的資料。

● 內建大量使用者函式UDF 來操作時間、字串和其他的資料探勘工具,支援使用者擴充套件UDF 函式來完成內建函式無法實現的操作。

● 類SQL 的查詢方式,將SQL 查詢轉換為MapReduce 的job 在Hadoop叢集上執行。

 

安裝

一:進入ambari

  輸入ambari地址,登陸。

二:點選Services

三:新加hive服務

四:Pig

  我們先沒有勾選Pig,提示pig也需要安裝。

五:分配安裝節點

  將待裝服務分到到節點中去。

 

六:Hive配置

  設定hive的配置,紅的是必填的,資料庫的密碼。

七:安裝,測試,啟動

  開始安裝了,我們耐心的等待。

八:完成

  

--------------------------------------------------------------------

  到此,本章節的內容講述完畢。

系列索引

  【源】從零自學Hadoop系列索引

 

 

 

 

本文版權歸mephisto和部落格園共有,歡迎轉載,但須保留此段宣告,並給出原文連結,謝謝合作。

文章是哥(mephisto)寫的,SourceLink

 

相關文章