1. 程式人生 > >大資料分析學習之路——Hive

大資料分析學習之路——Hive

大資料

  • 什麼是大資料?  大資料是指無法在一定時間內用常規軟體工具對其內容進行抓取、管理和處理的資料集合。換句話資料量在TB,PB,甚至更大的多元化資料集合。多,雜的資料

  • 當今資料處理模式:離線處理(先收集資料,再處理)----Hadoop;流式處理(實時處理)---spark

Hadoop

1,The Apache Hadoop project develops open-source software for reliable, scalable, distributed computing.Hadoop是一個由Apache基金會所開發的分散式系統基礎架構。

2,特點:reliable, scalable, distributed

3,核心元件及功能

  • Command:底層依賴庫
  • HDFS:分散式的資料儲存
  • Yarn:任務排程和資源管理
  • Mapresource:處理海量資料

    功能:

          HDFS:namenode: 儲存元資料資訊(元資料:誰建立,什麼時間建立,建立在什麼節點),管理者

                       datanode:真正儲存資料的節點,執行者

           Yarn:resourcemanager: 管理平臺資源

                      nodemanager: 機器真正對應的資源—每個機器具體的節點

          MapReduce:分散式計算框架

                     map端:將任務分配到不同的機器節點上(拆分任務)

                    shuffle:中間橋樑(內容拆分)

                    reduce端:map結果彙總

4,Hadoop框架的優缺點:

    優點:效率高,適合離線處理

   缺點:啟動開銷大(所以只能是資料量很大才適合用了)

Hive

1,Hive 將結構化的資料對映成表格,是資料倉庫,使用類SQL語句,進行資料的讀寫管理

2,與資料庫的異同點:

  • 資料處理方面:Hive使用MapReduce, 資料庫使用自己的引擎, 語句上與sql語句類似
  • 資料格式:hive使用分隔符
  • hive執行的時候會有延遲,因為hive沒有索引,需要整張表進行掃描
  • hive具有可擴張性

3,Hive與hadoop的關係

hive是建立在大資料平臺Hadoop框架之上的大資料倉庫,以HQL語句為實現形式,底層轉化為經過MapRdeuce處理的,HDFS檔案

概念的東西,構架方面的東西,及底層的工作,還需加深理解。微笑