Apache Hive走向記憶體計算,效能提公升26倍

2021-07-24 06:46:59 字數 1128 閱讀 2847

apache hive 2.1

已於幾個月前發布,它引入了記憶體計算,這使得hive計算效能得到極大提公升,這將會影響sql on hadoop

目前的競爭局面。據測試,其效能提高約26倍。

apache hive 2.1新引入了6大效能,包括:

(1)llap。apache hive 2.0引入了llap(live long and process),而2.1則對其進行了極大的優化,相比於apache hive 1,其效能提公升約25倍;

(2)更魯邦的sql acid支援;

(3)2x etl效能提公升。引入更智慧型的cbo(cost based optimizer),更快的型別轉換以及動態分割槽優化;

(4)支援儲存過程。加大簡化了從edw遷移到hive的流程。這是通過開源專案hpl/sql(apache開源協議,實現的,hpl/sql的目的是為apache hive,sparksql, impala 以及其他sql-on-hadoop 實現, 任何 nosql和 rdbms增加儲存過程的實現;

(5)對文字格式資料增加向量化計算的支援;

(6)引入新的診斷和監控工具,包括新的hiveserver2 ui,llapui和改進的tez ui。

接下來詳細介紹對apache hive 2.1效能提公升至關重要的優化:llap。llap是「live long and process」的簡寫,它引入了分布式持久化查詢服務,並結合經優化的資料快取機制,可快速啟動查詢計算作業並避免無需的磁碟io操作。

簡而言之,llap是下一代分布式計算架構,它能夠智慧型地將資料快取到多台機器記憶體中,並允許所有客戶端共享這些快取的資料,同時保留了彈性伸縮能力。

相比於hive 1 + tez,hive2+ tez+llap效能提公升約26倍,測試結果如下圖所示(測試結果是通過得到的):

hive2 llap的引入,標誌著apache hive進入記憶體計算時代。總結起來,記憶體計算型別可分為以下三類:

其中,type1已被apache hadoop生態系統證明其效能不會太高,因而hive直接進入type2,目前對type2中所有特性均支援地很好,包括分布式記憶體管理和優化,記憶體資料共享等。此外,apache hive正進一步優化效能,包括支援新型儲存介質flash,擴充套件llap能力,使其可以直接處理壓縮資料而無需事先解壓。

大小端模式和直接向記憶體賦值

一 大小端模式 大端模式 資料的低位儲存於記憶體的高位位址,資料的高位儲存於記憶體的低位位址。小端模式 資料的低位儲存於記憶體的地位位址,資料的高位儲存於記憶體的高位位址。在32位處理器中,儲存int型資料需要4個位元組。資料0x12345678 大端模式和小端模式儲存示意圖如下。需要注意的是 無論...

171103 逆向 記憶體與外掛程式(培訓提綱)

1625 5 王子昂 總結 2017年11月3日 連續第399天總結 a.協會記憶體與外掛程式培訓提綱 b.後天給協會培訓,於是先寫一下提綱記錄一發,順便自己也複習一下相關的東西 記憶體和偵錯程式 學習c 的時候老師一定說過,變數都是儲存在記憶體中的 每個變數獨佔一塊空間,在宣告的時候系統為其分配 ...

向記憶體中快取 知識點 記憶體與外存的關鍵區別

it168 編譯 計算機記憶體和外部儲存之間的主要區別是易失性和非易失性,以及效能和容量之間的差別。易失性vs非易失性。記憶體,例如隨機訪問記憶體 ram 是具有易失性的。這意味著當系統斷電時,資料就會丟失。與之相反,外部儲存是非易失性的,因此即使沒有電源,它也能儲存資料。效能和容量。在大多數情況下...