日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線(xiàn)咨詢(xún)客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

作者:Vadim Tkachenko

翻譯:管長(zhǎng)龍

本文來(lái)源:https://www.percona.com/blog/2020/08/13/how-many-innodb_buffer_pool_instances-do-you-need-in-MySQL-8/

我曾經(jīng)在文章《MySQL 5.7 安裝后的性能調(diào)優(yōu)》(文末鏈接)和《MySQL 101:調(diào)整 MySQL 性能的參數(shù)》(文末鏈接)中談到過(guò) innodb_buffer_pool_instances 這個(gè)參數(shù) ,建議使用值為“8”,但我不能說(shuō)這個(gè)值是否足夠好。因此,讓我們看看在以下情況下,使用不同的 innodb_buffer_pool_instances 值將獲得什么結(jié)果。

我將使用 sysbench oltp_read_write 基準(zhǔn)測(cè)試顯示為帕累托圖。我將為大小為 100 GB 的數(shù)據(jù)庫(kù)設(shè)置 innodb_buffer_pool_size = 25GB,因此在 buffer_pool 空間上會(huì)有競(jìng)爭(zhēng),這將是 IO 密集型情景情況。

基準(zhǔn)測(cè)試

硬件配置列表:

System | Supermicro; SYS-F619P2-RTN; v0123456789 (Other)

Platform | linux

Release | Ubuntu 18.04.4 LTS (bionic)

Kernel | 5.3.0-42-generic

Architecture | CPU = 64-bit, OS = 64-bit

Threading | NPTL 2.27

SELinux | No SELinux detected

Virtualized | No virtualization detected

# Processor ##################################################

Processors | physical = 2, cores = 40, virtual = 80, hyperthreading = yes

Models | 80xIntel(R) Xeon(R) Gold 6230 CPU @ 2.10GHz

Caches | 80x28160 KB

# Memory #####################################################

Total | 187.6G

通過(guò) SATA SSD INTEL SSDSC2KB960G8(英特爾企業(yè)級(jí) SSD D3-S4510)上的存儲(chǔ)。

簡(jiǎn)短的設(shè)置概述:

  • 數(shù)據(jù)無(wú)法存儲(chǔ)到內(nèi)存中(數(shù)據(jù)大小為?100GB,服務(wù)器上的內(nèi)存為 188GB,我們使用 O_DIRECT 為 MySQL innodb_buffer_pool_size 分配了 25GB,因此即使服務(wù)器上有很多內(nèi)存,也不會(huì)超過(guò)指定的 25GB 使用)。
  • 存儲(chǔ)上工作主要為讀寫(xiě)密集型(將從存儲(chǔ)中進(jìn)行讀?。?,并且在 MySQL 中進(jìn)行了完全的 ACID 兼容和數(shù)據(jù)安全設(shè)置。
  • 對(duì)于 SATA SSD 存儲(chǔ),innodb_io_capacity 將設(shè)置為 2000,而 innodb_io_capacity_max 為 4000。
  • 將 innodb_buffer_pool_instances 測(cè)試以下值:1、2、4、8、16、32、64。
  • innodb_buffer_pool_instances = 64,也是 MySQL 允許的最大值。

測(cè)試命令:

sysbench oltp_read_write --threads=150 --time=10000

--tables=40 --table_size=10000000 --mysql-host=127.0.0.1

--mysql-user=sbtest --mysql-password=sbtest

--max-requests=0 --report-interval=1 --mysql-db=sbtest

--mysql-ssl=off --create_table_options=DEFAULT CHARSET=utf8mb4

--report_csv=yes --rand-type=pareto run

基準(zhǔn)測(cè)試將運(yùn)行三個(gè)小時(shí),每 1 秒報(bào)告一次吞吐量。

SATA SSD 上的結(jié)果

讓我們看看每個(gè) innodb_buffer_pool_instances 分別有什么結(jié)果:

innodb_buffer_pool_instances=1

innodb_buffer_pool_instances=2

innodb_buffer_pool_instances=4

innodb_buffer_pool_instances=8

innodb_buffer_pool_instances=16

innodb_buffer_pool_instances=32

innodb_buffer_pool_instances=64

似乎顯而易見(jiàn)的是,隨著我們?cè)黾?innodb_buffer_pool_instances 的值,它對(duì)吞吐量的變化產(chǎn)生了積極的影響。我們可以將結(jié)果壓縮到一個(gè)圖表中,以便仔細(xì)查看:

如果要比較吞吐量和偏差,請(qǐng)比較最近 2500 秒的結(jié)果:

因此,實(shí)際上 innodb_buffer_pool_instances = 64 顯示出最佳的吞吐量和較小的可變性。從可變性的角度來(lái)看,建議的 innodb_buffer_pool_instances = 8 似乎比 1-4 的值更好,但不會(huì)產(chǎn)生最佳的吞吐量。

最后的想法

對(duì)于這種特殊情況,innodb_buffer_pool_instances = 64 是最佳選擇,但我仍然不建議一種可靠的方法來(lái)找到最佳值。較小的 1-4 似乎會(huì)產(chǎn)生很大的可變性甚至停滯,因此從 8 開(kāi)始是一個(gè)不錯(cuò)的選擇。

分享到:
標(biāo)簽:MySQL
用戶(hù)無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定