Kiểm tra khối lượng là gì? Học với các ví dụ

⚡ Tóm tắt thông minh

Kiểm thử khối lượng (Volume Testing) là phương pháp sử dụng một lượng dữ liệu rất lớn để xem dung lượng lưu trữ, các truy vấn và thời gian phản hồi hoạt động như thế nào khi cơ sở dữ liệu tăng lên. Phương pháp này còn được gọi là kiểm thử tràn (flood testing), và nó mở rộng quy mô dữ liệu chứ không phải số lượng người dùng.

  • 💾 Định nghĩa cốt lõi: Dung lượng dữ liệu tăng lên trong khi tải người dùng vẫn ở mức bình thường.
  • 🔍 Kiểm tra sơ bộ: Mất dữ liệu, ghi đè ngầm, độ chính xác lưu trữ và thời gian phản hồi dưới tập dữ liệu lớn.
  • 📈 Điểm suy thoái: Bài kiểm tra này xác định mức âm lượng mà tại đó độ ổn định và hiệu năng bắt đầu suy giảm.
  • ⚖️ Không kiểm tra tải: Volume điều chỉnh theo số hàng và kích thước tệp; Load điều chỉnh theo số người dùng đồng thời. Hai công cụ này tìm ra các lỗi khác nhau.
  • 🧪 Chủ nghĩa hiện thực dữ liệu: Dữ liệu được tạo ra phải tuân thủ các khóa và tính toàn vẹn quan hệ, đây là phần khó nhất của bài kiểm tra.
  • 💰 Trường hợp kinh doanh: Các giới hạn về năng lực được phát hiện trước khi phát hành có chi phí thấp hơn nhiều so với các giới hạn tương tự được phát hiện trong quá trình sản xuất.

Kiểm thử số lượng là gì?

Kiểm tra khối lượng là gì?

Kiểm tra khối lượng là một loại Kiểm thử phần mềm, trong đó phần mềm phải chịu một lượng dữ liệu khổng lồ. Nó cũng được gọi là thử nghiệm lũ lụt. Kiểm tra khối lượng được thực hiện để phân tích hiệu suất hệ thống bằng cách tăng khối lượng dữ liệu trong cơ sở dữ liệu.

Với sự trợ giúp của Kiểm tra khối lượng, có thể nghiên cứu tác động đến thời gian phản hồi và hoạt động của hệ thống khi tiếp xúc với khối lượng dữ liệu lớn.

Ví dụ, một dịch vụ phát nhạc trực tuyến có thể được thử nghiệm với kho nhạc gồm 50 triệu bài hát. tracks và một bảng lịch sử nghe chứa hàng tỷ hàng, để xem liệu các truy vấn tìm kiếm và đề xuất có còn trả về kết quả trong thời gian chấp nhận được hay không.

Hãy lưu ý sự khác biệt này: Việc kiểm tra số lượng lớn làm tăng... Số lượng dữ liệu Hệ thống vẫn hoạt động. Việc tăng cường số lượng người dùng đồng thời Đó là thử nghiệm tải, một loại thử nghiệm khác với mục tiêu khác.

Lợi ích của việc kiểm tra khối lượng

  • Việc xác định sớm các vấn đề về năng lực sản xuất sẽ giúp tránh được chi phí khắc phục cao hơn nhiều trong quá trình sản xuất.
  • Nó giúp khởi đầu nhanh hơn cho các kế hoạch mở rộng
  • Xác định sớm các nút thắt
  • Nó đảm bảo hệ thống của bạn hiện có khả năng sử dụng trong thế giới thực

Tại sao cần kiểm tra số lượng lớn?

Mục đích của việc thực hiện kiểm tra khối lượng là để

  • Kiểm tra hiệu suất hệ thống với khối lượng dữ liệu ngày càng tăng trong cơ sở dữ liệu
  • Xác định những vấn đề có thể phát sinh khi tập dữ liệu trở nên lớn.
  • Để tìm ra điểm mà tại đó sự ổn định của hệ thống bị suy giảm
  • Kiểm tra khối lượng sẽ giúp xác định dung lượng của hệ thống hoặc ứng dụng – khối lượng bình thường và nặng

Cách thực hiện kiểm tra khối lượng

Trong thử nghiệm khối lượng, những điều sau đây cần được thử nghiệm

  • Kiểm tra xem có mất dữ liệu không
  • Kiểm tra thời gian phản hồi của hệ thống
  • Kiểm tra xem dữ liệu có được lưu trữ chính xác hay không
  • Xác minh xem dữ liệu có bị ghi đè mà không có bất kỳ thông báo nào không
  • Hãy kiểm tra xem các cảnh báo và thông báo lỗi có thực sự xuất hiện khi đạt đến giới hạn dung lượng hay không.
  • Kiểm tra xem dữ liệu dung lượng lớn có ảnh hưởng đến tốc độ xử lý không
  • Xác nhận hệ thống có đủ bộ nhớ và dung lượng lưu trữ mà ổ đĩa yêu cầu.
  • Hãy xác nhận rằng bài kiểm tra âm lượng bao phủ toàn bộ hệ thống chứ không chỉ một thành phần riêng lẻ.
  • Có bất kỳ rủi ro nào nếu khối lượng dữ liệu lớn hơn quy định
  • Xác định xem có bất kỳ sự đảm bảo nào về việc dung lượng dữ liệu sẽ không vượt quá mức tối đa đã quy định hay không.

Các phương pháp tốt nhất cho việc kiểm tra số lượng lớn

Một số phương pháp dưới đây tương tự với kiểm thử tải, vì cả hai thường được thực hiện trên cùng một môi trường. Các phương pháp cụ thể liên quan đến dung lượng lưu trữ là:

  • Dừng tất cả các máy chủ và kiểm tra tất cả nhật ký
  • Trước khi kiểm tra tải, hãy thực hiện kịch bản ứng dụng theo cách thủ công
  • Để có được kết quả hữu ích nhất, hãy sắp xếp xen kẽ số lượng người dùng
  • Để khắc phục những hạn chế về giấy phép, hãy cân bằng thời gian suy nghĩ
  • Thận trọng với công trình mới
  • Phân tích trường hợp sử dụng để cải thiện khi đường cơ sở đã được thiết lập
  • Việc lặp lại các phần cụ thể của kiểm tra khối lượng là điều không thể tránh khỏi trong trường hợp có điểm nghẽn về hiệu suất

Kiểm tra khối lượng so với kiểm tra tải

Kiểm tra khối lượng Kiểm tra Tải
  • Kiểm thử khối lượng (Volume testing) kiểm tra cách ứng dụng hoạt động khi cơ sở dữ liệu chứa một lượng dữ liệu rất lớn.
  • Trong khi kiểm tra tải, ứng dụng phải chịu mức tải nhất định để phân tích hành vi của ứng dụng
  • Kiểm tra khối lượng dữ liệu giúp xác minh hệ thống vẫn phản hồi chính xác ở một khối lượng dữ liệu nhất định. Thông thường, nó sẽ tăng kích thước của các tập tin và bảng.
  • Kiểm thử tải giúp đánh giá hiệu năng khi số lượng người dùng đồng thời tăng lên. Thông thường, nó sẽ tăng số lượng yêu cầu đồng thời.

Những thách thức trong việc kiểm tra khối lượng

  • Sự phân mảnh bộ nhớ khó tạo ra
  • Tạo khóa động
  • Quan hệ Integrity của dữ liệu được tạo

So sánh kết quả bài kiểm tra này với các bài kiểm tra hiệu năng khác

Kiểm thử hiệu năng là một nhóm các bài kiểm thử khác nhau về dạng tải được áp dụng, đó là lý do tại sao chúng rất dễ bị nhầm lẫn.

Loại thử nghiệm Điều gì đã tăng lên Câu hỏi nó trả lời
Kiểm tra tải Số người dùng đồng thời, đạt mức cao nhất dự kiến Liệu nó có đạt được mục tiêu trong điều kiện lưu lượng giao thông cao điểm bình thường không?
Kiểm tra khối lượng Dữ liệu được lưu trữ trong cơ sở dữ liệu Liệu nó có đáp ứng được khi tập dữ liệu tăng lên không?
Bài kiểm tra về áp lực Tải vượt quá khả năng cho phép, dẫn đến hỏng hóc. Nó bị hỏng ở đâu và như thế nào?
thử nghiệm tăng đột biến Tải, ngay lập tức và cực kỳ nhanh chóng Liệu nó có sống sót và hồi phục sau cú sốc không?
kiểm tra độ bền Thời gian, ở tải trọng bình thường Hiệu năng có giảm dần theo thời gian không?
thử nghiệm ngâm Thời lượng, tài nguyên xem Có rò rỉ bộ nhớ hoặc xử lý không?
Kiểm tra độ ổn định Điều kiện khác nhau Liệu nó có còn đáng tin cậy khi điều kiện thay đổi?

Điểm khác biệt quan trọng nhất ở đây là: Kiểm thử khối lượng (volume testing) điều chỉnh quy mô dữ liệu, còn kiểm thử tải (load testing) điều chỉnh quy mô người dùng. Một báo cáo chạy trong hai giây với mười nghìn dòng dữ liệu và hai phút với mười triệu dòng dữ liệu cho thấy vấn đề nằm ở khối lượng dữ liệu chứ không phải vấn đề về tải, và việc tăng thêm dung lượng máy chủ cũng không thể khắc phục được.

Cách tạo dữ liệu thử nghiệm cho kiểm thử khối lượng lớn

Phần thách thức lưu ý rằng việc tạo ra dữ liệu thực tế là phần khó khăn nhất trong thử nghiệm khối lượng lớn. Có bốn phương pháp được sử dụng trong thực tế, và mỗi phương pháp đều có sự đánh đổi riêng.

Phương pháp tiếp cận chủ nghĩa hiện thực Nhược điểm chính
Bản sao dữ liệu sản xuất Cao nhất rủi ro về quyền riêng tư và tuân thủ
Bản sao sản xuất được che giấu Cao Việc che giấu có thể phá vỡ tính toàn vẹn tham chiếu
Thế hệ tổng hợp Trung bình Sự phân bố có thể không khớp với thực tế.
Lưu lượng truy cập sản xuất được phát lại Cao Cần có cơ sở hạ tầng thu thập dữ liệu

Dù bạn chọn con đường nào, ba điều kiện phải được thỏa mãn, nếu không bài kiểm tra sẽ không đo lường được điều gì hữu ích.

  • Tính toàn vẹn tham chiếu. Mọi khóa ngoại đều phải được giải quyết. Hàng triệu hàng dữ liệu mồ côi sẽ kiểm tra công cụ lưu trữ nhưng không bao giờ kiểm tra các đường dẫn kết nối mà ứng dụng thực sự sử dụng.
  • Số lượng thực tế. Nếu bảng dữ liệu sản xuất có mười triệu hàng trải rộng trên hai trăm khách hàng, việc tạo ra mười triệu hàng trải rộng trên mười triệu khách hàng sẽ tạo ra các kế hoạch truy vấn hoàn toàn khác nhau.
  • Phân phối thực tế. Dữ liệu thực tế thường bị sai lệch. Dữ liệu ngẫu nhiên đồng nhất che giấu các phân vùng bị lỗi và xung đột chỉ mục gây ra sự cố trong môi trường sản xuất.

Một lời cảnh báo thiết thực về quyền riêng tư. Việc sao chép dữ liệu sản xuất vào môi trường thử nghiệm là nguyên nhân phổ biến nhất gây ra rò rỉ dữ liệu trong quá trình thử nghiệm. Hãy che giấu các trường thông tin cá nhân trước khi sao chép ra khỏi môi trường sản xuất, chứ không phải sau đó.

Câu Hỏi Thường Gặp

Kiểm thử khối lượng (Volume testing) làm tăng lượng dữ liệu trong hệ thống trong khi tải người dùng vẫn ở mức bình thường. Kiểm thử tải (Load testing) làm tăng số lượng người dùng đồng thời trong khi tập dữ liệu vẫn ở mức bình thường. Chúng bộc lộ các điểm nghẽn khác nhau, vì vậy cả hai đều cần thiết.

Hãy bắt đầu từ khối lượng dữ liệu dự kiến ​​vào cuối kỳ kế hoạch năng lực, thường là hai đến ba năm tăng trưởng, sau đó tiến hành kiểm tra ở con số đó và gấp đôi con số đó để tìm ra điểm bắt đầu suy giảm.

Các vấn đề bao gồm: thiếu hoặc chỉ mục không hiệu quả, các truy vấn có khả năng mở rộng không tuyến tính, cạn kiệt bộ nhớ, việc tự động cắt bớt các trường dữ liệu và các tác vụ xử lý theo lô có thời gian chạy vượt quá khoảng thời gian cho phép.

Các mô hình AI học phân bố thống kê và mối quan hệ của dữ liệu sản xuất, sau đó tạo ra các bản ghi tổng hợp giữ nguyên các đặc tính đó mà không làm lộ bất kỳ hồ sơ khách hàng thực nào.

Đúng vậy, ở một mức độ nào đó. Các mô hình được xây dựng dựa trên đường cong suy giảm đo được sẽ ngoại suy điểm hỏng hóc, nhưng dự báo này cần được xác nhận bằng một lần vận hành thực tế trước khi được sử dụng để đưa ra quyết định về công suất.

Tóm tắt bài viết này với: