MySQL 5.5 - xác định ghi chính xác [đọc] _io_threads trên hệ thống cao cấp?


7

Cụ thể lõi kép 32 lõi - 128RAM - SSD 10 RAID. Máy chủ Ubuntu 64.

Tải nặng Innodb tại các thời điểm - ~ 2000+ truy vấn mỗi giây. Nặng đọc và viết.

Hiện tại chúng tôi đang chạy trên write_io_threads mặc định của 4.

Có phải chúng ta đang "nerfing" sức mạnh của máy chủ của chúng tôi? Có an toàn để chạy nó trên max write_io_threads = 64 và read_io_threads = 64 không?

Con số này được xác định như thế nào?

Câu trả lời:


6

Trở lại vào ngày 15 tháng 3 năm 2012, tôi đã trả lời câu hỏi này: MySql khuyên dùng phần cứng .

Trong câu trả lời của tôi, tôi đã đề cập đến một khách hàng vẫn còn trong công ty lưu trữ web của chủ nhân của tôi cho đến tận ngày nay. Họ hiện đang chạy 3 Máy chủ DB trong Bản sao Thông tư. Mỗi máy chủ DB có:

  • MySQL 5.5.9
  • RAM 192 GB
  • Bộ đệm InnoDB 162 GB
  • Hexacore kép (đúng vậy, 12 CPU)
  • Dung lượng đĩa 1,8TB
  • 528 cơ sở dữ liệu đa năng
  • 500 GB dữ liệu InnoDB
  • kích hoạt innodb_file_per_table

Tôi đã đặt chúng với

innodb_read_io_threads = 64
innodb_write_io_threads = 64
innodb_thread_concurrency = 0
innodb_buffer_pool_size = 162G
innodb_buffer_pool_instances = 2
innodb_log_file_size = 384M

Tóm lại: Bạn đã có lõi và RAM 128G? Bạn còn chờ gì nữa ? Crank nó lên và có một số niềm vui. Khách hàng của tôi đã hoàn toàn thất vọng với các cài đặt này đối với phần cứng đó kể từ tháng 3 năm 2011. Bạn sẽ bị thổi bay !!!

CAUPAT

Bỏ qua một bên, bạn nên cẩn thận khi làm việc với VM (VMWare, AWS, bất kỳ Trường hợp MySQL dựa trên đám mây nào khác) hoặc phần cứng hàng hóa . Tuy nhiên, với rất nhiều hỏa lực trong kim loại trần, bằng mọi cách, bạn nên khai thác các cài đặt đó bởi vì bất kỳ phiên bản nào của MySQL trước MySQL 5.5 đều hoạt động với InnoDB đơn luồng. Nếu bạn có MySQL 5.1, plugin InnoDB (bắt đầu từ MySQL 5.1,38) sẽ phải được cài đặt và sau đó được đặt. Tất cả các nhị phân Percona Server 5.1 đã có sẵn những thứ này. Vì bạn có MySQL 5.5, các cài đặt này được cài đặt nguyên bản và đã được thử nghiệm ở nhiều khía cạnh. Bạn chỉ phải chịu trách nhiệm điều chỉnh Cài đặt InnoDB mới.

Vui lòng xem các bài đăng khác của tôi về cài đặt cài đặt mới của InnoDB:

CẬP NHẬT 2013-01-18 21:51 EDT

Bạn cần phải lấy con bò bằng sừng và thiết lập một số điểm chuẩn. Hãy quay trở lại trong lịch sử. innodb_read_io_threads và innodb_writes_io_threads không đi kèm với MySQL 5.0 hoặc 5.1. Ai đó đã tạo một plugin và làm cho nó có sẵn trong MySQL 5.1,38. Mặc định là 4. Tôi cũng nhận thấy rằng Percona Server đã triển khai những điều này sớm trong MySQL 5.1 với mặc định là 8. Hầu hết những người sử dụng Percona Server đều thề với nó và thường nói rằng nó tốt hơn MySQL. Tuy nhiên, so sánh này thường được thực hiện với tweeking InnoDB. Vì vậy, tất nhiên, Percona Server, với số lượng chủ đề gấp đôi, sẽ tốt hơn.

Với cách bảo thủ này để có được hiệu suất tốt hơn (nâng cấp lên Percona), bạn sẽ không bao giờ thực sự biết InnoDB tốt, xấu hay xấu như thế nào trừ khi bạn điều chỉnh nó. Hãy ghi nhớ bài viết của tôi từ ngày 24 tháng 11 năm 2011 . Nhiều phiên bản của MySQL đã được điểm chuẩn và trong một số trường hợp, InnoDB trong MySQL 4.1 vượt trội hơn 5.x trong môi trường đơn luồng . Điều đó được đưa ra cùng một sân chơi.

Để nghiêng quy mô có lợi cho bạn, bạn phải điều chỉnh InnoDB. Thay vì cung cấp cho bạn bất kỳ hướng dẫn Pick-This-Pick-That dứt khoát duy nhất nào, bạn cần đọc về các cài đặt InnoDB ghas được đưa ra để làm cho nhiều lõi trở nên sống động. Không phải mọi môi trường đều giống như các máy chủ hexacore kép của khách hàng của tôi hoặc hexadecacore kép của bạn.

Nếu tôi phải cho bạn một điểm khởi đầu tốt, nó sẽ có được mysqlperformanceblog.com. Mọi thứ tập trung vào hiệu năng về mysql đều có để bạn đọc, chọn và điểm chuẩn.


Cảm ơn một số thông tin tốt ở đó. Vậy làm thế nào để tôi biết liệu tôi nên sử dụng write_io_threads của 4 hoặc 32 hoặc 64? Điều gì xác định (phần cứng khôn ngoan tôi sẽ đoán?) Biến này bên cạnh thử nghiệm và lỗi chuẩn rõ ràng? Tôi có thể hoàn toàn sa lầy máy chủ DB sản xuất với cài đặt không chính xác không?
Tom Geee

OMG, sao chép không đồng bộ với ba nút !!! Ai đó sẽ bị thổi bay nếu bạn mất một máy chủ.
symcbean
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.