Khi kiểm tra hiệu suất lưu trữ, hãy tránh số 0!

Chuẩn mực lưu trữ

Thỉnh thoảng, khách hàng của Dell Technologies sẽ muốn chạy thử nghiệm hiệu suất lưu trữ của riêng họ để đảm bảo rằng lưu trữ của họ có thể đáp ứng được nhu cầu của khối lượng công việc. Các đối tác của Dell Technologies như Microsoft công bố hướng dẫn về cách sử dụng các công cụ đánh giá chuẩn như Diskspd để kiểm tra nhiều khối lượng công việc khác nhau. Khi chạy các công cụ này trên các thiết bị lưu trữ thông minh như những thiết bị do Dell Technologies cung cấp, đừng quên theo dõi cách các tệp thử nghiệm của bạn được điền vào!

Bước đầu tiên trong việc sử dụng các công cụ chuẩn hiệu suất là tạo một hoặc nhiều tệp thử nghiệm để sử dụng khi thử nghiệm. Sau đó, công cụ chuẩn sẽ ghi và đọc dữ liệu vào và ra khỏi các tệp này, thực hiện các phép đo để đánh giá hiệu suất. Một chi tiết quan trọng thường bị bỏ qua là cách các tệp thử nghiệm được điền dữ liệu. Nếu các tệp không được điền đúng cách, điều này có thể dẫn đến kết quả gây hiểu lầm và kết luận không chính xác.

Chúng tôi sẽ sử dụng Diskspd làm ví dụ, tuy nhiên xin lưu ý rằng hầu hết các công cụ đều có cùng hành vi mặc định. Theo mặc định, khi bạn chạy thử nghiệm Diskspd, bạn cần chỉ định một số tham số, chẳng hạn như vị trí và kích thước tệp thử nghiệm, kích thước khối IO, tỷ lệ đọc/ghi, độ sâu hàng đợi, v.v.

Nếu chúng ta mở một tệp thử nghiệm được tạo bằng các tham số mặc định và kiểm tra nó bằng trình soạn thảo thập lục phân, thì nó sẽ trông như thế này:

Ảnh chụp màn hình của một tệp thử nghiệm được tạo bằng các tham số mặc định đang được kiểm tra trong trình soạn thảo thập lục phân. Toàn bộ tệp được điền 00.

Hình 1. Tệp thử nghiệm với các tham số mặc định trong trình soạn thảo thập lục phân

 

Nó không có gì cả, 0x00 xuất hiện trong toàn bộ tệp – toàn là “số không”!

Được thôi, vậy vấn đề là gì?

Khi các công cụ đánh giá chuẩn lưu trữ tạo tệp thử nghiệm, tất cả chúng đều sử dụng dữ liệu tổng hợp để thử nghiệm. Điều này ổn khi thực hiện IO tới thiết bị lưu trữ không có “trí thông minh” tích hợp sẵn vì nó sẽ thực hiện IO không thay đổi trực tiếp tới bộ lưu trữ mà không quan trọng đến nội dung dữ liệu. Trước đây, các thiết bị lưu trữ rất đơn giản và sẽ đọc và ghi dữ liệu theo lệnh, do đó nội dung dữ liệu không liên quan.

Tuy nhiên, các thiết bị lưu trữ thông minh như những thiết bị do Dell Technologies cung cấp lại xem xét dữ liệu theo cách khác. Các sản phẩm này được xây dựng để đạt hiệu quả và hiệu suất. Nén, loại bỏ trùng lặp, phát hiện bằng không và các tối ưu hóa khác có thể được sử dụng để tiết kiệm không gian và hiệu suất. Vì một tệp rỗng rõ ràng sẽ nén và loại bỏ trùng lặp tốt, nên hầu hết IO này sẽ không truy cập vào đĩa theo cùng cách mà một tệp dữ liệu thực tế sẽ truy cập. Cũng có khả năng các thành phần khác trong đường dẫn dữ liệu sẽ hoạt động khác so với bình thường khi được trình bày nhiều lần với một phần dữ liệu giống hệt nhau.

Có thể cho rằng những tối ưu hóa này có thể tồn tại trên dữ liệu được lưu trữ trên đám mây. Nhiều nhà cung cấp đám mây sử dụng các thiết bị lưu trữ thông minh hoặc đã phát triển phần mềm độc quyền để tối ưu hóa lưu trữ.

Tóm lại là bài kiểm tra của bạn có thể không chính xác và có thể không phản ánh hiệu suất lưu trữ của bạn trong các điều kiện thực tế hơn. Mặc dù không có bài kiểm tra tổng hợp nào có thể tái tạo khối lượng công việc thực tế 100%, nhưng bạn nên cố gắng làm cho nó thực tế nhất có thể.

Giảm nhẹ

Một số công cụ có thể khởi tạo các tệp thử nghiệm bằng dữ liệu ngẫu nhiên. Ví dụ, Diskspd có các tham số có thể được thêm vào để tạo bộ đệm dữ liệu ngẫu nhiên để sử dụng ghi vào các tệp hoặc chỉ định tệp dữ liệu nguồn. Bất kể phương pháp nào được sử dụng, bạn nên kiểm tra các tệp thử nghiệm để đảm bảo rằng ít nhất, dữ liệu ngẫu nhiên đang được sử dụng. Nên tránh các tệp được điền số 0 và các mẫu lặp lại.

Dữ liệu ngẫu nhiên cũng có thể không đạt được hành vi mong đợi khi sử dụng khả năng nén và loại bỏ trùng lặp. Các công cụ kiểm tra tiên tiến hơn như vdbench có thể sử dụng khả năng nén và loại bỏ trùng lặp mục tiêu một cách độc lập.  

Mẹo

Sau đây là một số mẹo nữa khi đánh giá hiệu suất lưu trữ để cố gắng làm cho nó thực tế nhất có thể:

  • Sử dụng các tập dữ liệu có kích thước tương đương với khối lượng công việc dữ liệu thực . Các tập dữ liệu nhỏ hơn có thể vừa hoàn toàn trong bộ nhớ đệm và làm lệch kết quả.
  • Sử dụng kích thước IO và tỷ lệ đọc/ghi phù hợp với khối lượng công việc của bạn . Nếu bạn không chắc chắn về khối lượng công việc của mình, đại diện Dell Technologies có thể hỗ trợ bạn.
  • Kiểm tra với “nhiều ”. Lưu trữ thông minh giả định nhiều tệp, khối lượng và máy chủ. Ít nhất, hãy sử dụng nhiều tệp và khối lượng. Khi kiểm tra kích thước khối lớn hơn, bạn có thể cần sử dụng nhiều máy chủ và nhiều bộ điều hợp bus máy chủ để tạo đủ IO ​​để kiểm tra khả năng băng thông đầy đủ của bộ lưu trữ.
  • Bắt đầu với tải nhẹ và mở rộng quy mô . Bắt đầu với một tệp, một luồng công nhân và độ sâu hàng đợi là một. Nhìn chung, lưu trữ hiện đại được thiết kế cho đồng thời. Một số lượng đồng thời sẽ được yêu cầu để sử dụng đầy đủ tài nguyên hệ thống lưu trữ. Khi bạn mở rộng quy mô, hãy quan sát hành vi. Chú ý đến độ trễ được đo. Tại một số thời điểm khi bạn mở rộng quy mô thử nghiệm, độ trễ sẽ bắt đầu tăng nhanh chóng.
  • Độ trễ quá mức cho thấy có nút thắt cổ chai . Khi độ trễ quá mức, bạn đã gặp phải nút thắt cổ chai ở đâu đó. “Quá mức” là một thuật ngữ tương đối khi nói đến độ trễ lưu trữ và được xác định bởi khối lượng công việc và nhu cầu kinh doanh của bạn. Chỉ mở rộng thử nghiệm đến điểm mà độ trễ được đo nằm trong phạm vi chấp nhận được của bạn hoặc cao hơn. Việc tăng thêm tải thử nghiệm sẽ dẫn đến lợi nhuận giảm dần.
  • Đảm bảo toàn bộ môi trường thử nghiệm có thể thúc đẩy hiệu suất mong muốn . Mạng lưu trữ và cấu hình máy chủ phải có khả năng đạt được mức hiệu suất mong muốn và được cấu hình đúng cách.
  • Hãy cẩn thận với hướng dẫn lỗi thời . Vẫn còn những bài viết trực tuyến đã hơn một thập kỷ tuổi tham khảo các phương pháp thử nghiệm và các biện pháp thực hành tốt nhất được phát triển khi lưu trữ dựa trên đĩa quay. Những giả định đó có thể không chính xác trên các thiết bị lưu trữ và giao thức mạng lưu trữ mới nhất.

Bản tóm tắt

Đánh giá hiệu suất lưu trữ có thể thú vị và cung cấp các điểm dữ liệu hữu ích. Tuy nhiên, điều quan trọng nhất là cách lưu trữ hỗ trợ khối lượng công việc kinh doanh thực tế và—quan trọng nhất—khối lượng công việc riêng của bạn. Do đó, không có sự thay thế thực sự nào cho việc thử nghiệm với khối lượng công việc thực tế của bạn.