MPP(大規模並行處理)簡介
1、 什麼是MPP?
MPP (Massively Parallel Processing),即大規模並行處理,在資料庫非共享叢集中,每個節點都有獨立的磁碟儲存系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連線,彼此協同計算,作為整體提供資料庫服務。非共享資料庫叢集有完全的可伸縮性、高可用、高效能、優秀的價效比、資源共享等優勢。
簡單來說,MPP是將任務並行的分散到多個伺服器和節點上,在每個節點上計算完成後,將各自部分的結果彙總在一起得到最終的結果(與Hadoop相似)。
2、MPP(大規模並行處理)架構
(MPP架構)
3、 MPP架構特徵
● 任務並行執行;
● 資料分散式儲存(本地化);
● 分散式計算;
● 私有資源;
● 橫向擴充套件;
● Shared Nothing架構。
4、 MPP伺服器架構
它由多個SMP伺服器通過一定的節點網際網路絡進行連線,協同工作,完成相同的任務,從使用者的角度來看是一個伺服器系統。其基本特徵是由多個SMP伺服器(每個SMP伺服器稱節點)通過節點網際網路絡連線而成,每個節點只訪問自己的本地資源(記憶體、儲存等),是一種完全無共享(Share Nothing)結構,因而擴充套件能力最好,理論上其擴充套件無限制。
5、MPPDB
MPPDB是一款 Shared Nothing 架構的分散式並行結構化資料庫叢集,具備高效能、高可用、高擴充套件特性,可以為超大規模資料管理提供高價效比的通用計算平臺,並廣泛地用於支撐各類資料倉儲系統、BI 系統和決策支援系統
6、MPPDB架構
MPP 採用完全並行的MPP + Shared Nothing 的分散式扁平架構,這種架構中的每一個節點(node)都是獨立的、自給的、節點之間對等,而且整個系統中不存在單點瓶頸,具有非常強的擴充套件性。
MPPDB架構
7、 MPPDB特徵
MPP 具備以下技術特徵:
1) 低硬體成本:完全使用 x86 架構的 PC Server,不需要昂貴的 Unix 伺服器和磁碟陣列;
2) 叢集架構與部署:完全並行的 MPP + Shared Nothing 的分散式架構,採用 Non-Master 部署,節點對等的扁平結構;
3) 海量資料分佈壓縮儲存:可處理 PB 級別以上的結構化資料,採用 hash分佈、random 儲存策略進行資料儲存;同時採用先進的壓縮演算法,減少儲存資料所需的空間,可以將所用空間減少 1~20 倍,並相應地提高 I/O 效能;
4) 資料載入高效性:基於策略的資料載入模式,叢集整體載入速度可達2TB/h;
5) 高擴充套件、高可靠:支援叢集節點的擴容和縮容,支援全量、增量的備份/恢復;
6) 高可用、易維護:資料通過副本提供冗餘保護,自動故障探測和管理,自動同步後設資料和業務資料。提供圖形化工具,以簡化管理員對資料庫的管理工作;
7) 高併發:讀寫不互斥,支援資料的邊載入邊查詢,單個節點併發能力大於 300 使用者;
8) 行列混合儲存:提供行列混合儲存方案,從而提高了列存資料庫特殊查詢場景的查詢響應耗時;
9) 標準化:支援SQL92 標準,支援 C API、ODBC、JDBC、ADO.NET 等介面規範。
8、 常見MPPDB
● GREENPLUM(EMC)
● Asterdata(Teradata)
● Nettezza(IBM)
● Vertica(HP)
● GBase 8a MPP cluster(南大通用)
9、 MPPDB、Hadoop與傳統資料庫技術對比與適用場景
MPPDB與Hadoop都是將運算分佈到節點中獨立運算後進行結果合併(分散式計算),但由於依據的理論和採用的技術路線不同而有各自的優缺點和適用範圍。兩種技術以及傳統資料庫技術的對比如下:
特徵 | Hadoop | MPPDB | 傳統資料倉儲 |
平臺開放性 | 高 | 低 | 低 |
運維負責度 | 高 | 中 | 中 |
擴充套件能力 | 高 | 中 | 低 |
擁有成本 | 低 | 中 | 高 |
系統和資料管理成本 | 高 | 中 | 中 |
應用開發維護成本 | 高 | 中 | 中 |
SQL支援 | 中(低) | 高 | 高 |
資料規模 | PB級別 | 部分PB | TB級別 |
計算效能 | 對非關係型操作效率高 | 對關係型操作效率高 | 對關係型操作效率中 |
資料結構 | 機構化、半結構化和非機構化資料 | 結構化資料 | 結構化資料 |
綜合而言,Hadoop和MPP兩種技術的特定和適用場景為:
● Hadoop在處理非結構化和半結構化資料上具備優勢,尤其適合海量資料批處理等應用要求。
● MPP適合替代現有關係資料機構下的大資料處理,具有較高的效率。
MPP適合多維度資料自助分析、資料集市等;Hadoop適合海量資料儲存查詢、批量資料ETL、非機構化資料分析(日誌分析、文字分析)等。
由上述對比可預見未來大資料儲存與處理趨勢:MPPDB+Hadoop混搭使用,用MPP處理PB級別的、高質量的結構化資料,同時為應用提供豐富的SQL和事物支援能力;用Hadoop實現半結構化、非結構化資料處理。這樣可以同時滿足結構化、半結構化和非結構化資料的高效處理需求。
版權宣告:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結和本宣告。
原文連結:https://blog.csdn.net/qq_42189083/article/details/80610092
相關文章
- MPP大規模並行處理架構詳解並行架構
- 處理海量資料的模式MapReduce,大規模資料集的並行運算模式並行
- 南大通用+英特爾 GBase 8a大規模分散式並行數處理(MPP)資料庫叢集系統解決方案3.0分散式並行資料庫
- 資料倉儲之大規模並行處理架構原理NY並行架構
- 達夢資料庫(DM8)大規模並行叢集MPP 2節點安裝部署資料庫並行
- Vaex助力高效處理大規模資料集
- Serverless 在大規模資料處理的實踐Server
- MPP架構和批處理架構
- 大規模 Transformer 模型 8 位元矩陣乘簡介ORM模型矩陣
- 使用R和Apache Spark處理大規模資料 [session]ApacheSparkSession
- 利用opencv進行簡易的拍照並處理照片OpenCV
- 違規行為處理
- Java 中的並行處理Java並行
- 並行處理 Parallel Processing並行Parallel
- Hadoop大資料分散式處理系統簡介Hadoop大資料分散式
- 大規模資料處理實戰-蔡元楠-極客時間
- 使用RabbitMQ訊息佇列來處理大規模的資料流MQ佇列
- 簡單批處理內部命令簡介
- nodejs“並行”處理嘗試NodeJS並行
- 用 ParallelJS 並行處理 JavaScriptParallelJS並行JavaScript
- java讀取大檔案並處理Java
- 事件流處理 (ESP) 與 Kafka 簡介事件Kafka
- 微處理器效能簡介(8086)
- pythonPIL影像處理庫簡介(一)Python
- CSS 和 CSS 前處理器簡介CSS
- ArcGIS Desktop 工具的並行處理並行
- Google 和 Facebook 如何大規模處理 IT 事件管理 —— 2016 SRE 大會之我見Go事件
- 模擬一則ORA-600 [4194][][]故障並處理
- js dom元素事件處理簡單介紹JS事件
- 人工智慧--自然語言處理簡介人工智慧自然語言處理
- 開多個JVM進行並行處理是否可行?JVM並行
- PyTorch中的多程序並行處理PyTorch並行
- PHP多程式處理並行處理任務例項(轉,備用)PHP並行
- 規模化執行敏捷:三大挑戰敏捷
- 如何在Kafka中將嚴格順序與大規模並行性結合? - EmilKafka並行
- 推特大規模應用的流處理框架:Apache Heron框架Apache
- Go語言的 序列處理 和 並行處理 有什麼區別 ?Go並行
- 首個GPU高階語言,大規模並行就像寫Python,已獲8500 StarGPU並行Python