成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據倉庫Hive vs 準實時分析系統Impala

大數據 數據倉庫
Impala是用于處理存儲在Hadoop集群中的大量數據的MPP(大規模并行處理)SQL查詢引擎。它是一個用C++和Java編寫的開源軟件。與其他Hadoop的SQL引擎相比,它提供了高性能和低延遲。

[[342552]]

一、什么是Hive?

Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供完整的SQL查詢功能,可以將SQL語句轉換為MapReduce任務進行運行。Hive支持HSQL,是一種類SQL。

也由于這種機制導致Hive最大的缺點是慢。MapReduce調度本身只適合批量,長周期任務,類似查詢這種要求短平快的業務,代價太高。

二、什么是Impala?

Impala是用于處理存儲在Hadoop集群中的大量數據的MPP(大規模并行處理)SQL查詢引擎。它是一個用C++和Java編寫的開源軟件。與其他Hadoop的SQL引擎相比,它提供了高性能和低延遲。

換句話說,Impala是性能最高的SQL引擎(提供類似RDBMS的體驗),它提供了訪問存儲在Hadoop分布式文件系統中的數據的最快方法。

三、Hive vs Impala

Impala與Hive都是構建在Hadoop之上的數據查詢工具,各有不同的側重適應面,但從客戶端使用來看Impala與Hive有很多的共同之處,如數據表元數據、ODBC/JDBC驅動、SQL語法、靈活的文件格式、存儲資源池等。Impala與Hive在Hadoop中的關系如下圖所示。

 

數據倉庫Hive vs 準實時分析系統Impala

Hive適合于長時間的批處理查詢分析,而Impala適合于實時交互式SQL查詢,Impala給數據分析人員提供了快速實驗、驗證想法的大數據分析工具。可以先使用Hive進行數據轉換處理,之后使用Impala在Hive處理后的結果數據集上進行快速的數據分析。

Impala沒有使用 MapReduce進行并行計算,雖然MapReduce是非常好的并行計算框架,但它更多的面向批處理模式,而不是面向交互式的SQL執行。與 MapReduce相比:Impala把整個查詢分成一執行計劃樹,而不是一連串的MapReduce任務。在分發執行計劃后,Impala使用拉式獲取數據的方式獲取結果,把結果數據組成按執行樹流式傳遞匯集,減少了把中間結果寫入磁盤的步驟,再從磁盤讀取數據的開銷。Impala使用服務的方式避免每次執行查詢都需要啟動的開銷,即相比Hive沒了MapReduce啟動時間。

四、處理數據的方式

(1)Hive處理數據的方式

HiveQL通過CLI/Web UI或者thrift 、odbc 或 jdbc接口的外部接口提交,經過complier編譯器,運用Metastore中的元數據進行類型檢測和語法分析,生成一個邏輯計劃(logical plan),然后通過簡單的優化處理,產生一個以有向無環圖DAG數據結構形式展現的MapReduce任務。

 

數據倉庫Hive vs 準實時分析系統Impala

(2)Impala處理數據的方式

每當用戶使用提供的任何接口發起查詢時,集群中的Impalads之一就會接受該查詢。 此Impalad被視為該特定查詢的協調程序。

在接收到查詢后,查詢協調器使用Hive元存儲中的表模式驗證查詢是否合適。 然后,它從HDFS名稱節點(NameNode)收集關于執行查詢所需的數據的位置的信息,并將該信息發送到其他Impalad以便執行查詢。

所有其他Impala守護程序讀取指定的數據塊并處理查詢。 一旦所有守護程序完成其任務,查詢協調器將收集結果并將其傳遞給用戶。

 

數據倉庫Hive vs 準實時分析系統Impala

黃色部分是 Imapla模塊,藍色部分為運行 Impala 依賴的其他模塊。Impala 整體分為兩部分:StateStore 和 Impalad。

StateStore 是 Impala 的一個子服務,用來監控集群中各個節點的健康狀況,提供節點注冊,錯誤檢測等功能。

Impala Daemon 進程是運行在集群每個節點上的守護進程,每個節點上這個進程名稱為Impalad。

 

[[342553]]

Impalad 運行在 DataNode 節點上,主要有兩個作用 :

  • 一是協調Client提交的 Query 的執行,給其他Impalad分配任務,收集其他Impalad的執行結果進行匯總;
  • 二是這個Impalad也會執行其他Impalad給其分配的任務,執行這部分任務主要就是對本地HDFS和HBase中的數據進行操作。

Impala中表的元數據存儲借用的是Hive的,也就是表的元數據信息存儲在Hive的Metastore中。

位于HDFS數據節點DataNode上的每個Impalad進程,都具有如下幾個模塊:

  • Query Planner;
  • Query Coordinator;
  • Query Exec Engine;

Query Planner 接收來自SQL APP和ODBC的SQL語句,解釋成功執行計劃。Query Coordinator將執行計劃進行優化和拆分,形成執行計劃片段,調度這些片段分發到各個節點上,由各個節點上的Query Exec Engine 負責執行,最后返回中間結果,這些中間結果經過聚集之后,最終返回給用戶。

 

[[342554]]

 

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2021-04-15 07:40:44

數據倉庫Hive環境搭建

2013-12-03 10:20:35

開源SQL查詢系統

2019-05-24 11:51:18

BI數據倉庫數據分析

2016-11-08 09:16:54

數據倉庫優化

2019-08-19 14:24:39

數據分析Spark操作

2016-08-31 14:41:31

大數據實時分析算法分類

2018-03-15 08:50:46

Hive-數據存儲

2019-06-06 14:08:37

數據倉庫數據分析數據報表

2024-12-16 08:00:00

Snowflake數據平臺

2017-02-28 09:21:56

HadoopHive數據倉庫

2016-12-21 12:46:47

數據倉庫SQLHive

2021-09-01 10:03:44

數據倉庫云數據倉庫數據庫

2023-08-23 15:33:15

數據倉庫數據分析

2014-01-22 11:22:44

華為HANA一體機FusionCube大數據分析

2016-06-13 14:38:46

開源Skydive

2025-03-25 10:49:24

2022-06-28 09:47:05

數據倉庫

2025-02-06 08:54:54

2023-01-09 07:55:43

Rust開源數據倉庫

2024-10-18 08:17:09

Doris數據倉庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久精品久久久 | 一级黄色片在线看 | 日韩精品极品视频在线观看免费 | 一区二区三区视频在线 | 午夜久久久久久久久久一区二区 | 九九福利| 亚洲国产成人精品女人 | 97国产超碰 | 一区二区三区四区毛片 | 久久久久国产精品午夜一区 | 亚洲一区成人 | 色一级 | 日本三级在线视频 | 亚洲成人免费视频在线观看 | 国产亚洲欧美另类一区二区三区 | 欧美一区二区视频 | 国产第一页在线观看 | 91精品一区二区三区久久久久 | 色视频在线观看 | 超碰人人做 | 亚洲精品一区二区三区蜜桃久 | 日韩在线视频观看 | 青青久草| 亚洲精品一 | 羞羞视频网站 | 日韩中文字幕视频 | 日韩一二区 | 国产自产c区| 国产激情一区二区三区 | 久久69精品久久久久久久电影好 | 国产精品影视 | 亚洲交性 | 久久久久久久国产精品视频 | 福利片在线看 | 精品日韩在线观看 | 一级日批片 | 可以免费观看的av | 国产91丝袜在线播放 | 国产露脸对白88av | www.亚洲精品 | 天天躁日日躁狠狠的躁天龙影院 |