閱讀目錄
本文版權歸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的配置,紅的是必填的,數據庫的密碼。
七:安裝,測試,啟動
開始安裝了,我們耐心的等待。
八:完成
--------------------------------------------------------------------
到此,本章節的內容講述完畢。
系列索引
本文版權歸mephisto和博客園共有,歡迎轉載,但須保留此段聲明,並給出原文鏈接,謝謝合作。
文章是哥(mephisto)寫的,SourceLink