Mysql
xtrabackup 上 –throttle 的合理值是多少?
Percona 的 xtrabackup 實用程序有一個 –throttle 選項來減少備份作業的 IO 負載。
文件說傳遞的值是每秒讀/寫對的數量。1000/sec 在現代硬體上是否合適?5個怎麼樣?對於這些值,我找不到任何有意義的參考框架。
供參考 - 我正在讀取和寫入同一個驅動器陣列(10k SAS)。–throttle=20 的 55gb 備份作業在大約一個小時內執行,在非高峰時段對系統沒有明顯壓力。但老實說,我不知道這是油門的高值還是低值。
這一切都取決於,但你可以用這種方法來猜測一些東西:看看iostat並查看磁碟上的 iops/sec。如果您有典型的數據庫,那麼您很可能受到每秒隨機搜尋次數的限制,而不是頻寬。
- 在維護視窗中 - 在不限制的情況下執行 xtrabackup 並再次查看您的系統可以生成多少 iops/sec。說是x。
- 在那之後看看在非高峰時間系統有多少 iops/sec 是典型的。說是y。
基於此,您可以估算一下您可以將多少 iops/sec 專用於備份作業。我會將其計算為 x - 2 * y 或 x - 3 * y 為尖峰留出一些空間。
我認為 xtrabackup 的參數將與 iops/sec 成線性比例,但不等於 - 所以在最後一步中使用反複試驗來調整油門值,以便 iostat 向您顯示所需的操作數/秒。
[或者使用 ionice 在這裡稍微介紹一下],給你的備份工作低優先級,並且根本不要限制它。我正在為rdiff-backup工作做這件事——效果很好。請注意,離子
$$ afaik $$僅適用於 linux 中的一些 io 調度程序。