数据仓库Hive
數據倉庫概念
數據倉庫是一個面向主題的、集成的、相對穩定的、反映歷史變化的數據集合,用于支持管理決策。
根本目的 是為了支持企業內部的商業分析和決策,基于數據倉庫的分析結果,做出相關的經營決策.
數據倉庫的體系結構
數據倉庫與數據庫的區別
數據倉庫中的數據比較穩定,保留了大量歷史數據;
而數據庫只保存某一時刻的數據.
Hive
對于傳統數據倉庫來說,既是數據存儲產品也是分析產品,但Hive并不提供這些功能,它提供了類似關系數據庫SQL語言的查詢語言HiveQL,可以通過HiveQL語句快速實現簡單的MapReduce統計,Hive自身將HiveQL語句轉換為MapReduce任務進行運行.
兩個方面特性
(1)采用批處理方式處理海量數據
(2)Hive提供了一系列對數據進行提取,轉換,加載ETL的工具
Hive與其他組件的關系
Hive在企業中的應用
Mahout 是 Apache Software Foundation(ASF) 旗下的一個開源項目,提供一些可擴展的機器學習領域經典算法的實現,旨在幫助開發人員更加方便快捷地創建智能應用程序。Mahout包含許多實現,包括聚類、分類、推薦過濾、頻繁子項挖掘。
BI(Business Intelligence) 即商務智能,它是一套完整的解決方案,用來將企業中現有的數據進行有效的整合,快速準確地提供報表并提出決策依據,幫助企業做出明智的業務經營決策。
Hive系統架構
- 用戶接口模塊
包括CLI、HWI (HiveWebInterface)、JDBC、ODBC、Thrift Server - 驅動模塊
- 包括編譯器、優化器、執行器,負責把HiveQL轉化為一系列MapReduce作業
- 元數據存儲模塊
SQL轉換成MapReduce基本原理
(1)join的實現原理
(2) group by的實現原理
Hive安裝
http://dblab.xmu.edu.cn/blog/1080-2/
Hive數據類型
總結
- 上一篇: 文件系统调用示例
- 下一篇: 操作系统OS-分页、页表