Lên cấu hình phần cứng cho SQL server

Một trong những việc quan trọng nhất của hạ tầng là chuẩn bị cấu hình của server. Nhưng công việc này không đơn giản như người ta vẫn nghĩ. Làm sao bạn có thể lên một cấu hình chạy tốt, ổn định tối ưu chi phí là vấn đề không hệ đơn giản. Trong bài này, tôi sẽ giới thiệu cách tính cấu hình cơ bản cho SQL Server và chú trọng chủ yếu vào thông số RAM và CPU.

Sau khi tham khảo một số tài liệu về SQL, tôi xin chia sẻ lại như sau:

Đối server là máy  vật ly:

  • CPU

Đối với cơ sở dữ liệu dưới 50 GB, dưới 1.000 query/ngày, dưới 40 người dùng đồng thời, một CPU lõi tứ đơn sẽ đủ. Nếu cùng một máy chủ được sử dụng cho cả transactions và reporting hoặc nếu tổng kích thước cơ sở dữ liệu, transaction load hoặc người dùng vượt quá mức trên, hãy sử dụng ít nhất 2 CPU lõi tứ hoặc nhiều hơn.

  • RAM:

Có ít nhất 2 GB cho Hệ điều hành. Để xử lý SQL Services transaction, hãy sử dụng 20% * kích thước của tất cả các cơ sở dữ liệu + 20% * kích thước của tập dữ liệu lớn nhất + 25% * số người dùng. Đối với reporting, sử dụng 20% * số liệu báo cáo lớn nhất * số người dùng. Làm tròn mọi thứ đến số nguyên gần nhất.

Đối với server là máy ảo:

  • CPU:

Đối với cơ sở dữ liệu dưới 50 GB, ít hơn 1000 query/ngày, dưới 40 người dùng đồng thời, tương đương với 1 CPU lõi tứ đơn sẽ đủ. Nếu cùng một máy chủ được sử dụng cho cả transactions và reporting hoặc nếu tổng kích thước cơ sở dữ liệu, transaction load hoặc người dùng vượt quá mức trên, hãy sử dụng tương đương ít nhất 2 CPU lõi tứ hoặc tốt hơn. Ví dụ, trong môi trường Hyper-V, điều này sẽ dùng đến 4 CPU ảo lõi kép

  • RAM:

Có ít nhất 2 GB cho Hệ điều hành. Để xử lý SQL Services transaction, hãy sử dụng 20% * kích thước của tất cả các cơ sở dữ liệu + 20% * kích thước của tập dữ liệu lớn nhất + 25% * số người dùng. Cho reporting, sử dụng 20% * kích thước dữ liệu báo cáo lớn nhất * số lượng người dùng. Làm tròn mọi thứ đến số nguyên gần nhất.

Trên đây, là cách tính cơ bản sử dụng cho các trường hợp chung, bạn có thể áp dụng cho SQL từ 2008 trở về sau này. Tât nhiên, khi lên cấu hình nó còn phụ thuộc vào bạn dùng nó cho ứng dụng nào:

  • Giả định rằng, bạn dùng để lấy dữ liệu chấm công từ các máy chấm công vân tay với tần suất 1 tuần 1 lần và sau đó xuất dữ liệu 1 tháng 1 lần để tính lương thì bạn sẽ cần cấu hình không cao.
  • Giả định rặng, bạn đang dùng ứng dụng bán hàng hoặc phần mềm có khả năng tương tác cao theo thời gian thực và liên tục như ERP thì đó lại là một câu chuyện khác. Nó tùy thuộc vào phần mềm bạn sử dụng và cách mà lập trình viên đã tạo ra phân mềm đó như thế nào, có tối ưu việc sử dụng phần cứng hay không nữa.

Một vấn đề bạn cần chú ý nữa đó là license của SQL. Cấu hình càng cao có thể sẽ ảnh hưởng đến chi phí license. Ví dụ bản SQL Enterprise có thể sẽ được bán license theo core hoặc theo CPU mà bạn sẽ sử dụng cho server. Vì vậy, bạn phải cân đối chi phí cho vấn đề này.

Trên đây là một số vấn đề cơ bản bạn có thể tham khảo khi chuẩn bị cho việc triển khai SQL server.  Để đảm bảo tốc độ xử lý tốt, bạn cần còn cần phải lưu ý đến tốc độ đọc ghi dữ liệu của ổ cứng. Tôi sẽ đề cặp vấn đề ổ cứng trong những bài viết tới.

Sharing is caring!

Bài có liên quan