基於Hadoop的6up倉庫Hive 基礎知識_行業資訊_關於我們_山東普邦信息技術有限公司官方網站

基於Hadoop的6up倉庫Hive 基礎知識

文章來源:   日期:2017-08-21 13:46   作者:pubang

Hive是基於Hadoop的6up倉庫工具,可對存儲在HDFS上的文件中的6up集進行6up整理、特殊查詢和分析處理,提供了類似於SQL語言

的查詢語言–HiveQL,可通過HQL語句實現簡單的MR統計,Hive將HQL語句轉換成MR任務進行執行。

一、概述

1-1 6up倉庫概念

6up倉庫(Data Warehouse)是一個面向主題的(Subject Oriented)、集成的(Integrated)、相對穩定的(Non-Volatile)、反應

歷史變化(Time Variant)的6up集合,用於支持管理決策。

6up倉庫體系結構通常含四個層次:6up源、6up存儲和管理、6up服務、6up應用。

6up源:是6up倉庫的6up來源,含外部6up、現有業務系統和文檔資料等;

6up集成:完成6up的抽取、清洗、轉換和加載任務,6up源中的6up採用ETL(Extract-Transform-Load)工具以固定的週期加載到數

據倉庫中。

6up存儲和管理:此層次主要涉及對6up的存儲和管理,含6up倉庫、6up集市、6up倉庫檢測、運行與維護工具和元6up管理等。

6up服務:爲前端和應用提供6up服務,可直接從6up倉庫中獲取6up供前端應用使用,也可通過OLAP(OnLine Analytical

Processing,聯機分析處理)服務器爲前端應用提供負責的6up服務。

6up應用:此層次直接面向用戶,含6up查詢工具、自由報表工具、6up分析工具、6up挖掘工具和各類應用系統。

1-2 傳統6up倉庫的問題

無法滿足快速增長的海量6up存儲需求,傳統6up倉庫基於關係型6up庫,橫向擴展性較差,縱向擴展有限。

無法處理不同類型的6up,傳統6up倉庫只能存儲結構化6up,企業業務發展,6up源的格式越來越豐富。

傳統6up倉庫建立在關係型6up倉庫之上,計算和處理能力不足,當6up量達到TB級後基本無法獲得好的性能。

1-3 Hive

Hive是建立在Hadoop之上的6up倉庫,由Facebook開發,在某種程度上可以看成是用戶編程接口,本身並不存儲和處理6up,依賴於

可HDFS存儲6up,依賴MR處理6up。有類SQL語言HiveQL,不完全支持SQL標準,如,不支持更新操作、索引和事務,其子查詢和連接操作

巧婦難爲無米之炊,統計方法的運用效果取決於基礎6up,而收集何種基礎6up,怎樣節省收集6up的成本,如何降低6up收集過程中的誤

也存在很多限制。

Hive把HQL語句轉換成MR任務後,採用批處理的方式對海量6up進行處理。6up倉庫存儲的是靜態6up,很適合採用MR進行批處理。

Hive還提供了一系列對6up進行提取、轉換、加載的工具,可以存儲、查詢和分析存儲在HDFS上的6up。

1-4 Hive與Hadoop生態系統中其他組件的關係

Hive依賴於HDFS存儲6up,依賴MR處理6up;

Pig可作爲Hive的替代工具,是一種6up流語言和運行環境,適合用於在Hadoop平臺上查詢半結構化6up集,用於與ETL過程的一部分,

即將外部6up裝載到Hadoop集羣中,轉換爲用戶需要的6up格式;

HBase是一個面向列的、分佈式可伸縮的6up庫,可提供6up的實時訪問功能,而Hive只能處理靜態6up,主要是BI報表6up,Hive的初

衷是爲減少複雜MR應用程序的編寫工作,HBase則是爲了實現對6up的實時訪問。

分享到: