1. 程式人生 > >資料引擎- 主流SQL計算引擎

資料引擎- 主流SQL計算引擎

1.先了解一下SQL的執行過程

詞法分析就是將SQL語句分解成一個個詞和符號,語法分析就是識別SQL關鍵字和SQL成分結構,邏輯執行計劃就是分析獲取資料的邏輯步驟,優化執行計劃就是優化和簡化獲取資料的步驟,物理執行計劃就是分解可執行的任務,計劃執行就是按照步驟執行分解後的任務獲取資料結果。




2.瞭解一下資料引擎的工作流程

使用者通過使用者介面提交SQL查詢,驅動接收到SQL查詢請求後,向編譯器請求SQL查詢的執行計劃,在獲取到物理執行計劃後,將物理查詢計劃提交給執行引擎。在Hive中物理執行計劃是一系列的Map任務和Reduce任務,任務依次執行完成後將獲取的HDFS中的資料,返回給使用者。


3.現在主流的資料引擎的結構

HDFS提供了分散式檔案系統,RDD提供了分散式的記憶體系統,這兩個了個基本的資料訪問抽象,極大了簡化了計算程式設計模型。特別提一下Catalyst中基於規則的優化引擎,藉助Scala的模式匹配等函式式語言特性,開發執行計劃優化策略非常的簡潔。


4.資料引擎的起源

最初的MapReduce使得處理大資料處理成為可能。後來又發現了MR的抽象過於簡單,於是Tez和Spark提供了更加豐富單是也更復雜的分散式任務模型。但是SQL的處理依然不方便,效率不好,於是Pig和Hive出現了,讓更多了資料分析和處理人員可以處理大資料任務。但是基於任務的SQL處理模式很難滿足互動資料分析的場景,於是更輕量的,更專注SQL任務優化的Impala,Presto,Drill出現了。



相關推薦

資料引擎- 主流SQL計算引擎

1.先了解一下SQL的執行過程 詞法分析就是將SQL語句分解成一個個詞和符號,語法分析就是識別SQL關鍵字和SQL成分結構,邏輯執行計劃就是分析獲取資料的邏輯步驟,優化執行計劃就是優化和簡化獲取資料的步驟,物理執行計劃就是分解可執行的任務,計劃執行就是按照步驟執行分解後

資料SQL互動查詢 presto/spark/mapreduce 計算引擎對比

presto/spark/mapreduce 計算引擎對比 對比的表結構為146列, 15920816 行資料,資料壓縮前的大小15G。 對於執行語句的效率,單位秒 TextFile格式 執行的SQL presto spark mr SELECT COUNT

拋棄Spark?Flink會是下一代大資料計算引擎嗎?

Apache Spark是目前應用最廣泛、最流行的大資料計算平臺之一,在2.X版本中,Apache Spark已經開始摒棄RDD的資料模型,採用Spark SQL的Dataset作為統一的資料模型來構建更加高效的計算框架。然而,2015年成為Apache頂級專案的Apache Flink卻被很多人認

國內雲數倉排行獨佔一檔,揭祕阿里雲EB級大資料計算引擎MaxCompute

日前,全球權威諮詢與服務機構Forrester釋出了《The Forrester WaveTM: Cloud Data Warehouse, Q4 2018》報告。這是Forrester Wave首次釋出關於雲數倉解決方案(Cloud Data Warehouse,簡稱CDW)的測評。報告對雲數倉的當前產品功

資料spark計算引擎快速入門

spark快速入門   spark框架是用scala寫的,執行在Java虛擬機器(JVM)上。支援Python、Java、Scala或R多種語言編寫客戶端應用。   下載Spark  訪問http://spark.apache.org/downloads.html   選擇預編譯的版本進行

下一代大資料計算引擎之爭,你更看好 Spark 還是 Flink?

一提到大資料,多半繞不開Spark 和 Flink。Spark用一個統一的引擎支援批處理、流處理、互動式查詢、機器學習等常見的資料處理場景,適應性極廣,但資料流計算上表現稍弱,而Flink的出現很好地彌補了這一不足。本文對 Spark 和 Flink 的技術與場景進行了全面分析與對比,且看下一代大資

揭祕阿里雲EB級大資料計算引擎MaxCompute

日前,全球權威諮詢與服務機構Forrester釋出了《The Forrester WaveTM: Cloud Data Warehouse, Q4 2018》報告。這是Forrester Wave首次釋出關於雲數倉解決方案(Cloud Data Warehouse,簡稱CDW)的測評。報告對雲數倉的當前產品功

餓了麼大資料計算引擎實踐與應用

餓了麼BDI-大資料平臺研發團隊目前共有20人左右,主要負責離線&實時Infra和平臺工具開發。其中6人的離線團隊需要維護大資料叢集規模如下: Hadoop叢集規模1300+ HDFS存量資料40+PB,Read 3.5 PB+/天,Write 500TB+/天

資料學習筆記之spark及spark streaming----快速通用計算引擎

導語 spark 已經成為廣告、報表以及推薦系統等大資料計算場景中首選系統,因效率高,易用以及通用性越來越得到大家的青睞,我自己最近半年在接觸spark以及spark streaming之後,對spark技術的使用有一些自己的經驗積累以及心得體會,在此分享給大家。 本文依

Spark大資料計算引擎介紹

                          Spark大資料計算引擎介紹 大資料生態的兩個主要部分是Hadoop軟體框架和Spark記憶體級計算引擎。Hado

spark大資料計算引擎原理深剖(優缺點)-spark簡介

用spark,你僅僅只是呼叫spark的API肯定是很low的。今天來講講spark的原理,並且會針對部分原始碼進行講解,如有不同意見請聯絡本人交流探討。目前大資料生態主要部分是Hadoop軟體框架和Spark記憶體級計算引擎。Hadoop包含四個專案:Hadoop comm

分散式大資料sql查詢引擎Presto初識

1、背景: Hive使用MapReduce作為底層計算框架,是專為批處理設計的。但隨著資料越來越多,使用Hive進行一個簡單的資料查詢可能要花費幾分到幾小時,顯然不能滿足互動式查詢的需求。Presto是一個分散式SQL查詢引擎,它被設計為用來專門進行高速、實時的資料分析。它

Spark 比拼 Flink:下一代大資料計算引擎之爭,誰主沉浮?

下一代大資料計算引擎 自從資料處理需求超過了傳統資料庫能有效處理的資料量之後,Hadoop 等各種基於 MapReduce 的

資料計算引擎之Flink Flink狀態管理和容錯

這裡將介紹Flink對有狀態計算的支援,其中包括狀態計算和無狀態計算的區別,以及在Flink中支援的不同狀態型別,分別有 Keyed State 和 Operator State 。另外針對狀態資料的持久化,以及整個 Flink 任務的資料一致性保證,Flink 提供了 Checkpoint 機制處理和持久化

資料計算引擎之Flink Flink CEP複雜事件程式設計

原文地址: 大資料計算引擎之Flink Flink CEP複雜事件程式設計 複雜事件程式設計(CEP)是一種基於流處理的技術,將系統資料看作不同型別的事件,通過分析事件之間的關係,建立不同的時事件系序列庫,並利用過濾、關聯、聚合等技術,最終有簡單事件產生高階事件,並通過模式規則的方式對重要資訊進行跟蹤和分析

入門大資料---Hive計算引擎Tez簡介和使用

# 一、前言 Hive預設計算引擎時MR,為了提高計算速度,我們可以改為Tez引擎。至於為什麼提高了計算速度,可以參考下圖: ![image-20200719151044959](https://blog-1259495827.cos.ap-beijing.myqcloud.com/Hive/image-

java 企業站源碼 自適應響應式 兼容手機平板PC SSM freemaker 靜態引擎主流框架

圖片 支持 連接 速度 合作 3.3 href 案例 導出excel 前臺: 支持四套模版, 可以在後臺切換系統介紹:1.網站後臺采用主流的 SSM 框架 jsp JSTL,網站後臺采用freemaker靜態化模版引擎生成html2.因為是生成的html,所以訪問速度快,輕

SQL 計算全部資料的行數並LIMIT輸出資料

有時候會遇到資料過多需要分頁的情形(如論壇的樓蓋太高),通常是SQL_1先做COUNT,接著SQL_2做SELECT和LIMIT;此外還有一種方法是LIMIT的同時一起計算總資料量(沒有被LIMIT的數量),效率略低於前述SQL_2但優於SQL_1 + SQL_2的總和。 MySQL SEL

白喬原創:solr cloud的sql查詢引擎solr-sql

SolrCloud介紹   在我們應用還很渺小的時候,一臺Solr伺服器能完全勝任這份工作,隨著我們應用慢慢長大,訪問也越來越多,一臺Solr伺服器的弊病也逐漸顯現如查詢變慢了,機器宕機就無法繼續提供服務,於是乎我們引入了Solr叢集,通過前端負載均衡和索引Replica

資料實時流式處理引擎比較

從流處理的核心概念,到功能的完備性,再到周邊的生態環境,全方位對比了目前比較熱門的流處理框架:Spark,Flink,Storm和 Gearpump。結合不同的框架的設計,為大家進行深入的剖析。與此同時,從吞吐量和延時兩個方面,對各個框架進行效能評估。 主要技術點:流失資料處理,Spark,