實(shí)例規(guī)格越高代表實(shí)例的性能越強(qiáng),本文介紹了選擇實(shí)例規(guī)格的方法。
PolarDB-X實(shí)例主要由計(jì)算節(jié)點(diǎn)和存儲(chǔ)節(jié)點(diǎn)聯(lián)合提供服務(wù),單個(gè)節(jié)點(diǎn)按照CPU或內(nèi)存來(lái)劃分實(shí)例的多種規(guī)格,多個(gè)節(jié)點(diǎn)一起組成PolarDB-X實(shí)例。實(shí)例規(guī)格請(qǐng)參見(jiàn)規(guī)格說(shuō)明。
實(shí)例規(guī)格和類(lèi)型
系列 | 實(shí)例規(guī)格碼 | CPU和內(nèi)存 | 最大存儲(chǔ)容量 | 最大連接數(shù) | 最大IOPS | 特點(diǎn) |
---|---|---|---|---|---|---|
通用 | polarx.x4.medium.2e | 2核8 GB | 3072 GB | 20000 | 4000 | 定位入門(mén)級(jí),用于測(cè)試、體驗(yàn)和極小負(fù)載的場(chǎng)景。 |
polarx.x4.large.2e | 4核16 GB | 3072 GB | 20000 | 7000 | CPU和MEM配比為1:4,復(fù)用計(jì)算資源享受規(guī)模紅利,性?xún)r(jià)比高。 | |
polarx.x4.xlarge.2e | 8核32 GB | 3072 GB | 20000 | 12000 | ||
polarx.x4.2xlarge.2e | 16核64 GB | 3072 GB | 20000 | 14000 | ||
獨(dú)享 | polarx.x8.large.2e | 4核32 GB | 3072 GB | 20000 | 9000 | CPU和MEM配比為1:8,獨(dú)占分配到的計(jì)算資源(如CPU),性能表現(xiàn)更加穩(wěn)定。 |
polarx.x8.xlarge.2e | 8核64 GB | 3072 GB | 20000 | 18000 | ||
polarx.x8.2xlarge.2e | 16核128 GB | 3072 GB | 20000 | 36000 | ||
polarx.x8.4xlarge.2e | 32核128 GB | 3072 GB | 20000 | 36000 | ||
polarx.x8.4xlarge.2e | 32核256 GB | 3072 GB | 20000 | 72000 | ||
獨(dú)占 | polarx.st.8xlarge.25 | 60核470 GB | 6144 GB | 20000 | 120000 | 獨(dú)占物理機(jī)規(guī)格,可以有更好的資源使用保障。 |
polarx.st.12xlarge.25 | 90核720 GB | 6144 GB | 20000 | 140000 |
實(shí)例規(guī)格=節(jié)點(diǎn)數(shù)×節(jié)點(diǎn)規(guī)格
舉例如下:
polarx.x8.xlarge.2e獨(dú)享規(guī)格,節(jié)點(diǎn)數(shù)為2個(gè),性能數(shù)據(jù)如下:存儲(chǔ)6 TB (3072 GB×2)、連接數(shù)40000 (20000×2)、最大IOPS 36000 (18000×2)。
按照存儲(chǔ)容量選擇
按照業(yè)務(wù)的存儲(chǔ)空間估算:
- 業(yè)務(wù)的數(shù)據(jù)存儲(chǔ)會(huì)隨著時(shí)間持續(xù)增加,可以預(yù)估1~2年內(nèi)的業(yè)務(wù)增長(zhǎng)量,判斷需要的最大存儲(chǔ)空間。
- PolarDB-X的數(shù)據(jù)存儲(chǔ)分為:數(shù)據(jù)空間、系統(tǒng)文件空間、日志空間等,建議單節(jié)點(diǎn)的存儲(chǔ)使用量保持在70%以下。
示例:
當(dāng)前業(yè)務(wù)的存儲(chǔ)空間為1500 GB,每天新增約10 GB,按照1年的業(yè)務(wù)預(yù)估來(lái)看,總計(jì)約5150 GB的存儲(chǔ)。按照使用量70%來(lái)計(jì)算,預(yù)估需要5150 GB / 0.7 = 7357 GB的存儲(chǔ)空間訴求,如果按照獨(dú)享規(guī)格polarx.x8.xlarge.2e(節(jié)點(diǎn)存儲(chǔ)上限3 TB),最后判斷需要CEILING(7357 GB/3072 GB)= CEILING(2.39)= 3個(gè)節(jié)點(diǎn)。
按照并發(fā)量選擇
- PolarDB-X的節(jié)點(diǎn)規(guī)格資源限制,包含CPU、內(nèi)存、連接數(shù)、IOPS等。在面向事務(wù)型場(chǎng)景下,一般比較常見(jiàn)是以CPU瓶頸為主,可通過(guò)業(yè)務(wù)的QPS預(yù)期進(jìn)行估算。
- 按照常見(jiàn)的偏交易混合讀寫(xiě)場(chǎng)景,單核估算可支持的QPS為1000~3000,按照獨(dú)享規(guī)格polarx.x8.xlarge.2e單節(jié)點(diǎn)預(yù)估可支持1~2萬(wàn)的QPS。
說(shuō)明 業(yè)務(wù)的流量模型和通用benchmark會(huì)有比較多的差異,單節(jié)點(diǎn)的QPS僅供估算參考,建議基于業(yè)務(wù)流量進(jìn)行實(shí)際壓測(cè)。
- 常規(guī)的峰值流量,PolarDB-X建議單節(jié)點(diǎn)的資源使用量保持在70%以下。
示例:
當(dāng)前業(yè)務(wù)的QPS峰值預(yù)估為10萬(wàn)QPS,預(yù)留70%的資源余量,預(yù)計(jì)需要支持14萬(wàn)QPS的資源,按照PolarDB-X單節(jié)點(diǎn)支持2萬(wàn)的能力來(lái)估算,預(yù)估需要7個(gè)節(jié)點(diǎn)。
按照多維度組合選擇
示例:
當(dāng)前業(yè)務(wù)的QPS峰值預(yù)估為10萬(wàn)QPS,當(dāng)前業(yè)務(wù)的存儲(chǔ)空間為1500 GB,每天新增約10 GB,按照1年的業(yè)務(wù)預(yù)估來(lái)看,總計(jì)約5150 GB的存儲(chǔ)。
建議的選擇邏輯:
- 分布式數(shù)據(jù)庫(kù)由多個(gè)節(jié)點(diǎn)組成,會(huì)有類(lèi)似的木桶效應(yīng),比如突發(fā)流量導(dǎo)致個(gè)別節(jié)點(diǎn)達(dá)到資源瓶頸,會(huì)引起整體實(shí)例出現(xiàn)部分慢SQL的現(xiàn)象。因此,節(jié)點(diǎn)規(guī)格推薦獨(dú)享型,建議生產(chǎn)環(huán)境8核64 GB起步,默認(rèn)存儲(chǔ)空間有3072 GB(3 TB)。
- 按照存儲(chǔ)容量和并發(fā)量分別估算需要的節(jié)點(diǎn)數(shù)和CPU規(guī)格,比如例子中需要CPU 56核、存儲(chǔ)7357 GB,可以按照最小覆蓋原則進(jìn)行計(jì)算。存儲(chǔ)空間最小需要3個(gè)節(jié)點(diǎn)覆蓋,PolarDB-X提供了存儲(chǔ)包的按量付費(fèi)模式,存儲(chǔ)需要的節(jié)點(diǎn)數(shù)可以作為上限,下限可以選擇CPU核數(shù)的最小覆蓋,可以選擇7個(gè)節(jié)點(diǎn)的8核64 GB或4個(gè)節(jié)點(diǎn)的16核128 GB。
- 業(yè)務(wù)流量如果包含報(bào)表分析的場(chǎng)景,因涉及更多數(shù)據(jù)計(jì)算的代價(jià),建議選擇4個(gè)節(jié)點(diǎn)的16核128 GB,優(yōu)先大節(jié)點(diǎn)規(guī)格,提高木桶邊的上限。其他場(chǎng)景下,建議選擇7個(gè)節(jié)點(diǎn)的8核64 GB,更多的節(jié)點(diǎn)數(shù)可以支撐更大的存儲(chǔ)空間,未來(lái)實(shí)例規(guī)格的升配也優(yōu)先建議升配單個(gè)節(jié)點(diǎn)規(guī)格。