便宜網(wǎng)站設(shè)計(jì)杭州網(wǎng)站建設(shè)
文章目錄
- 導(dǎo)讀
- 01 SMP
- 1. SMP 的典型特征
- 2. SMP的優(yōu)缺點(diǎn)
- 02 分布式MPP計(jì)算架構(gòu)
- 1. MPP 架構(gòu)核心原理
- 2. MPP 典型特征
- 3. MPP優(yōu)缺點(diǎn)
- 寫作末尾
導(dǎo)讀
當(dāng)今數(shù)據(jù)計(jì)算領(lǐng)域主要的應(yīng)用程序和模型可大致分為在線事務(wù)處理(On-line Transaction Processing ,OLTP)、決策支持系統(tǒng)(Decision-making Support System ,DSS)和企業(yè)信息通信(Business Communication)三大類。計(jì)算平臺(tái)的體系結(jié)構(gòu)通常有小型獨(dú)立服務(wù)器、SMP (Symmetrical Multi-Processing, 對(duì)稱多處理)、MPP(大規(guī)模并行處理)和 NUMA(Non Uniform Memory Access,非均勻存儲(chǔ)器存取)結(jié)構(gòu)。
這里,本篇文章重點(diǎn)講一下 SMP 與 MPP。
01 SMP
SMP 是指在一個(gè)計(jì)算機(jī)上匯集了一組處理器(多核 CPU),各 CPU 之間共享內(nèi)存子系統(tǒng)以及總線結(jié)構(gòu)。代表數(shù)據(jù)庫(kù)有 Oracle 、MySQL 。SMP 架構(gòu)原理圖如圖1所示。
1. SMP 的典型特征
-
每個(gè)處理器共享操作系統(tǒng)的一個(gè)副本 。
-
支持共享架構(gòu)。
-
多任務(wù)并行架構(gòu),是一個(gè)緊耦合的多處理器系統(tǒng)。
-
多個(gè)處理器之間共享整個(gè)工作。
-
沒有單獨(dú)的緩存池或鎖表,全部共享。
-
通過購(gòu)買更大的系統(tǒng)來(lái)實(shí)現(xiàn)擴(kuò)展。
-
容易出現(xiàn)資源爭(zhēng)用等問題。
-
創(chuàng)建分布式架構(gòu)需要復(fù)雜的設(shè)計(jì),并且只能部分實(shí)現(xiàn)。
-
軟件提供的內(nèi)存可用量完全取決于 RAM 和負(fù)載的數(shù)量。
2. SMP的優(yōu)缺點(diǎn)
在 SMP 中,每個(gè) CPU 都有自己的緩存,無(wú)論雙核還是四核,其余資源都是共享的。SMP 的優(yōu)點(diǎn)如下。
-
共享單一操作系統(tǒng)副本。
-
應(yīng)用程序編程模式簡(jiǎn)便。
-
管理成本低,易于維護(hù)管理。
SMP 的缺點(diǎn)如下。
-
伸縮擴(kuò)展能力非常有限。對(duì) SMP 服務(wù)器進(jìn)行擴(kuò)展的方式包括增加內(nèi)存、使用更快 的 CPU、增加 CPU、擴(kuò)充 I/O(槽口數(shù)與總線數(shù))以及添加更多的外部設(shè)備(通常是磁盤存 儲(chǔ)設(shè)備)。這樣的架構(gòu)模式直接導(dǎo)致內(nèi)存上線受限制。
-
CPU 利用率低。由于每個(gè) CPU 必須通過相同的內(nèi)存總線訪問相同的內(nèi)存資源,因 此隨著 CPU 數(shù)量的增加,內(nèi)存訪問沖突將迅速增加,最終造成 CPU 資源的浪費(fèi),大大降 低 CPU 性能的有效性。
-
總線有瓶頸。當(dāng)大型程序的處理要求大于共享總線時(shí),總線就沒有能力進(jìn)行處理 了,這時(shí)共享的總線就成為性能瓶頸。
-
容錯(cuò)性和效率較低。
SMP 的典型應(yīng)用場(chǎng)景是托管小型網(wǎng)站和電子郵件服務(wù)器等。
02 分布式MPP計(jì)算架構(gòu)
MPP(Massively Parallel Processing,大規(guī)模并行分析處理)架構(gòu)模式,是典型的分布 式計(jì)算模式。MPP 的各節(jié)點(diǎn)不共享資源,每個(gè)執(zhí)行節(jié)點(diǎn)可以獨(dú)自完成數(shù)據(jù)的讀取和計(jì)算。
1. MPP 架構(gòu)核心原理
將數(shù)據(jù)集分布在許多機(jī)器或節(jié)點(diǎn)上,以處理大量數(shù)據(jù)。
-
每個(gè)節(jié)點(diǎn)都有獨(dú)立的磁盤存儲(chǔ)系統(tǒng)和內(nèi)存系統(tǒng)。
-
業(yè)務(wù)數(shù)據(jù)根據(jù)數(shù)據(jù)庫(kù)模型和應(yīng)用特點(diǎn)劃分到各個(gè)節(jié)點(diǎn)上。
-
每個(gè)數(shù)據(jù)節(jié)點(diǎn)通過專用網(wǎng)絡(luò)或者商業(yè)通用網(wǎng)絡(luò)互相連接,彼此協(xié)同計(jì)算,作為整體 提供數(shù)據(jù)庫(kù)服務(wù)。
在 MPP 架構(gòu)中,各節(jié)點(diǎn)都包含自己的存儲(chǔ)和計(jì)算功能,可以獨(dú)立執(zhí)行查詢的一部分。 最后,在內(nèi)存里進(jìn)行數(shù)據(jù)合并,并將結(jié)果返回客戶端。MPP 具有可伸縮、高可用、高性能、 資源共享等優(yōu)勢(shì)。
MPP 由許多松耦合的處理單元組成。注意,這里是指處理單 元而不是處理器。每個(gè)單元內(nèi)的 CPU 都有自己私有的資源,如總線、內(nèi)存、硬盤等。每個(gè) 單元內(nèi)都有操作系統(tǒng)和管理數(shù)據(jù)庫(kù)實(shí)例。這種結(jié)構(gòu)最大的特點(diǎn)在于不共享資源。代表數(shù)據(jù)庫(kù) 有 ClickHouse 、Snowflake 、Azure Synapse Analytics 、Impala 、Greenplum 、Elasticsearch、 Presto 。MPP 架構(gòu)原理圖如圖2所示。
2. MPP 典型特征
-
每個(gè)處理器都使用自己的操作系統(tǒng)和內(nèi)存。
-
支持無(wú)共享架構(gòu)。
-
多個(gè)處理器對(duì)單個(gè)任務(wù)進(jìn)行協(xié)調(diào)處理。每個(gè)處理器處理任務(wù)的不同部分。
-
每個(gè)節(jié)點(diǎn)只負(fù)責(zé)處理自己磁盤上的任務(wù)。
-
每個(gè)節(jié)點(diǎn)維護(hù)自己的一組鎖表和緩存池,增加了內(nèi)存功能的可用性。
-
只需添加機(jī)架即可輕松實(shí)現(xiàn)可擴(kuò)展性,支持 TB 到 PB 數(shù)據(jù)量級(jí)的水平擴(kuò)展。
-
完全不共享資源,所以不存在資源爭(zhēng)用。
-
被設(shè)計(jì)為分布式架構(gòu)。
-
數(shù)據(jù)被水平分區(qū),壓縮率高,以最佳方式使用內(nèi)存。
-
處理器使用消息進(jìn)行通信。
3. MPP優(yōu)缺點(diǎn)
MPP 的優(yōu)點(diǎn)如下。
-
每個(gè)處理器都使用自己的操作系統(tǒng)和內(nèi)存。
-
性能好。大規(guī)模數(shù)據(jù)并行處理能力優(yōu)秀,適合于復(fù)雜的大型數(shù)據(jù)分析與處理場(chǎng)景。
-
可伸縮。在 MPP 增加節(jié)點(diǎn)時(shí),MPP 的性能可以線性擴(kuò)展。MPP 在數(shù)據(jù)倉(cāng)庫(kù)決策支持和數(shù)據(jù)挖掘方面占據(jù)優(yōu)勢(shì)。
-
低成本。基于 MPP 的數(shù)據(jù)倉(cāng)庫(kù)解決方案旨在廉價(jià)的商用硬件上運(yùn)行,不需要可能 包含成本的企業(yè)級(jí)雙冗余組件。
-
高可用。使用自動(dòng)數(shù)據(jù)復(fù)制來(lái)提高系統(tǒng)彈性并確保高可用性。
-
高吞吐量。MPP 可以實(shí)現(xiàn)非常高的吞吐量,因?yàn)樽x寫操作可以在集群中的獨(dú)立節(jié)點(diǎn) 上并行執(zhí)行。
MPP 的缺點(diǎn)如下。
-
管理成本高。MPP 需要一種復(fù)雜的機(jī)制來(lái)調(diào)度和平衡各個(gè)節(jié)點(diǎn)的負(fù)載和并行處理過 程,通信復(fù)雜。當(dāng)通信時(shí)間長(zhǎng)時(shí), MPP 性能會(huì)變差。目前一些基于 MPP 技術(shù)的服務(wù)器一般 通過系統(tǒng)級(jí)軟件(如數(shù)據(jù)庫(kù))來(lái)屏蔽這種復(fù)雜性。
-
短板效應(yīng):如果遇到“短板”節(jié)點(diǎn),整個(gè)引擎的性能將下降到該短板節(jié)點(diǎn)的能力(木桶的短板)。MPP 架構(gòu)不適合異構(gòu)的機(jī)器,它要求各節(jié)點(diǎn)配置相同。
MPP 的典型應(yīng)用場(chǎng)景是數(shù)據(jù)倉(cāng)庫(kù)、大規(guī)模數(shù)據(jù)處理和數(shù)據(jù)挖掘等。
關(guān)于作者:陳光劍,資深大數(shù)據(jù)專家、后端技術(shù)專家和架構(gòu)師,擁有超過10年的技術(shù)研發(fā)和管理經(jīng)驗(yàn),一線實(shí)戰(zhàn)經(jīng)驗(yàn)豐富?,F(xiàn)就職于字節(jié)跳動(dòng),曾就職于阿里巴巴,主要從事企業(yè)智能數(shù)字化經(jīng)營(yíng)管理、電商智能數(shù)字化運(yùn)營(yíng)等系統(tǒng)架構(gòu)設(shè)計(jì)和研發(fā)工作。
圖片
本文摘編于《ClickHouse入門、實(shí)戰(zhàn)與進(jìn)階》(書號(hào):9787111727170),經(jīng)出版方授權(quán)發(fā)布,轉(zhuǎn)載請(qǐng)標(biāo)明文章出處。
推薦理由:字節(jié)跳動(dòng)大數(shù)據(jù)專家撰寫,集大成之作,4個(gè)維度全面展開,上百個(gè)案例,入門標(biāo)準(zhǔn)參考書,日常工作案頭必備。
寫作末尾
🌻《ClickHouse入門、實(shí)戰(zhàn)與進(jìn)階》免費(fèi)包郵送出
🌴根據(jù)博客閱讀量本次活動(dòng)一共贈(zèng)書若干本,評(píng)論區(qū)抽取若干位小伙伴免費(fèi)送出
500-1000 贈(zèng)書2本
1000-1500 贈(zèng)書3本
1500-2000 贈(zèng)書4本
2000+ 贈(zèng)書5本
🌵參與方式:關(guān)注博主、點(diǎn)贊、收藏、評(píng)論區(qū)任意評(píng)論(不低于10個(gè)字,被折疊了無(wú)法參與抽獎(jiǎng))”(切記要點(diǎn)贊+收藏,否則抽獎(jiǎng)無(wú)效,每個(gè)人最多評(píng)論三次)
🌼活動(dòng)截止時(shí)間:2023-09-19 12:00:00
🍒開獎(jiǎng)時(shí)間:2023-09-19 14:00:00
🍀中獎(jiǎng)通知方式:私信通知
🍉兌獎(jiǎng)方式:截圖證明