12/08/2018, 17:20

BIG DATA NHÌN TỪ GÓC ĐỘ THỬ NGHIỆM

Ngày nay, trong lĩnh vực CNTT rất hay nhắc tới Big Data, đại khái thì có thể hiểu Big Data là dữ liệu lớn. Big data là thuật ngữ được sử dụng cho số lượng lớn dữ liệu có cấu trúc hoặc không có cấu trúc có tiềm năng đưa ra một số thông tin. Khi nói về big data, chúng ta không thể nói số lương ...

Ngày nay, trong lĩnh vực CNTT rất hay nhắc tới Big Data, đại khái thì có thể hiểu Big Data là dữ liệu lớn.

Big data là thuật ngữ được sử dụng cho số lượng lớn dữ liệu có cấu trúc hoặc không có cấu trúc có tiềm năng đưa ra một số thông tin.

Khi nói về big data, chúng ta không thể nói số lương cụ thể của dữ liệu, nhưng nói chung là lên tới petabytes và exabyte. Số lượng lớn dữ liệu không thể được tích hợp một cách dễ dàng. Các dữ liệu lớn, chuyển động nhanh rất hữu ích trong việc tăng sự phát triển của các doanh nghiệp bằng cách hiểu khách hàng và sản phẩm tốt hơn. Mặc dù có rất nhiều kỹ thuật nhưng các nhà công nghệ vẫn còn khó khăn để tìm ra bắt đầu từ đâu

Big Data có nhiều tính năng khác nhau. Tuy nhiên có ba tính năng quan trọng là:

  1. Số lượng lớn dữ liệu
  2. Các loại dữ liệu khác nhau
  3. Tốc độ xử lý dữ liệu lớn

Tại sao kiểm thử một cách kỹ lưỡng lại quan trọng đối với các ứng dụng dữ liệu lớn?

Lý đo là có một số trở ngại trong ứng dụng dữ liệu lớn khiến cho các ứng dụng dữ liệu lớn phải được kiểm tra một cách cẩn thận, đó là:

1. Tích hợp trực tiếp thông tin Vì thông tin được lấy ra từ các nguồn khác nhau, cần phải tạo điều kiện tích hợp trực tiếp thông tin. Thông qua việc kiểm tra cuối cùng của các nguồn dữ liệu và các nhà tích hợp liên tục làm rõ ràng và đảm bảo dữ liệu đáng tin cậy.

2. Thách thức khả năng mở rộng thời gian thực

Lỗi trong thiết kế của các ứng dụng dữ liệu lớn có thể dẫn đến những vấn đề lớn. Vì vậy, các kỹ thuật kiểm tra như lấy mẫu dữ liệu, kỹ thuật lập danh mục theo đó cần phải kiểm tra hiệu năng để giải quyết các vấn đề về khả năng mở rộng của ứng dụng.

3. Các giải pháp Thu thập Dữ liệu tức thì

Khả năng dự đoán và đưa ra quyết định tức thời đã buộc các ứng dụng dữ liệu lớn phải áp dụng giải pháp tức thì. Nó tạo ra tác động kinh doanh đáng chú ý tác động trong bộ dữ liệu lớn.

4. Triển khai dữ liệu tức thì

Ngày nay, do nhu cầu triển khai ngay các giải pháp để đáp ứng nhu cầu thay đổi của doanh nghiệp. Các ứng dụng phải được kiểm tra kỹ lưỡng và đảm bảo triển khai trực tiếp vì nó là rất quan trọng cho từng hoạt động.

Cho dù đó là một ứng dụng Kho dữ liệu hoặc một ứng dụng dữ liệu lớn, từ quan điểm thử nghiệm, điều quan trọng nhất cho người kiểm tra là dữ liệu.

Về cơ bản, việc xác nhận dữ liệu trong Các ứng dụng dữ liệu lớn liên quan đến việc xác nhận dữ liệu theo yêu cầu nghiệp vụ. Nghĩ rằng việc thử nghiệm các ứng dụng kho dữ liệu và các ứng dụng dữ liệu lớn là như nhau là hoàn toàn sai.

1. Dữ liệu trong các ứng dụng Big Data.

Khối lượng dữ liệu, đa dạng dữ liệu, vận tốc dữ liệu và giá trị dữ liệu giữa kho dữ liệu và các ứng dụng dữ liệu lớn là khác nhau. Trong các ứng dụng kho dữ liệu, dữ liệu có thể có khối lượng gigabyte còn trong trường hợp các ứng dụng dữ liệu lớn dữ liệu có thể mở rộng lên đến petabyte

  • Sự đa dạng dữ liệu trong các ứng dụng kho dữ liệu chỉ là "Dữ liệu có cấu trúc". Các ứng dụng kho dữ liệu có thể lưu trữ và xử lý dữ liệu có cấu trúc. -> Trong khi các ứng dụng dữ liệu lớn không có ràng buộc về lưu trữ và xử lý loại dữ liệu.

  • Các ứng dụng kho dữ liệu xử lý dữ liệu thông qua xử lý hàng loạt -> Trong khi các ứng dụng dữ liệu lớn thì dữ liệu cũng có thể được xử lý thông qua luồng dữ liệu.

  • Trong các ứng dụng kho dữ liệu, người kiểm tra chỉ cần làm việc trên dữ liệu có cấu trúc -> Trong khi các ứng dụng dữ liệu lớn thì người kiểm tra có thể cần đào sâu vào cấu trúc không có cấu trúc của dữ liệu có cấu trúc.

Từ quan điểm thử nghiệm, người kiểm tra cần làm việc với các nhóm nghiệp vụ và phát triển để hiểu làm thế nào để lấy được cấu trúc từ các nguồn dữ liệu nhất định.

  • Trong các ứng dụng kho dữ liệu, phương pháp thử nghiệm được sử dụng là "Lấy mẫu" khi có phương pháp xác minh đầy đủ. -> Trong khi ứng dụng Dữ liệu lớn, lý thuyết này không hoạt động. Trong những bộ dữ liệu lớn như vậy, cách tốt nhất để kiểm tra là thông qua nghiên cứu và phát triển. Đồng thời nó là cơ hội tốt cho những người kiểm thử, Người muốn tiến thêm một bước trong việc tăng phạm vi kiểm tra của các ứng dụng dữ liệu lớn và đồng thời tăng năng suất thử nghiệm.

2. Cơ sở hạ tầng của các ứng dụng dữ liệu lớn.

  • Kho lưu trữ dữ liệu ứng dụng dựa trên hệ thống quản lý cơ sở dữ liệu liên quan -> Trong khi lưu trữ các ứng dụng dữ liệu lớn dựa trên Hệ thống tệp. Các ứng dụng dữ liệu lớn có khả năng lưu trữ dữ liệu trong nhiều nhóm. Các ứng dụng này sử dụng Apache Hadoop mà không có bất kỳ hạn chế nào nếu lưu trữ dữ liệu. Hệ thống tệp phân phối hadoop là một hệ thống lưu trữ chia sẻ có thể được phân tích thông qua công nghệ MapReduce.

  • Với hệ thống Hadoop, khách hàng có thể lưu trữ khối lượng lớn dữ liệu và xử lý những dữ liệu đó bằng cách sử dụng các truy vấn trên bộ dữ liệu lớn và thu được kết quả trong một khoảng thời gian ngắn. Không có hạn chế về số lượng dữ liệu có thể được lấy ra.
  • Đối với người kiểm tra, việc kiểm tra có thể được thực hiện trên môi trường thử nghiệm hadoop. Vì vậy, các xét nghiệm cần phải học cách làm việc trên hệ thống hadoop vì nó khác với hệ thống tập tin thông thường.

3. Kiểm tra các ứng dụng sử dụng các công cụ xác nhận

Đối với các ứng dụng dữ liệu lớn không có công cụ cụ thể. Hệ thống hadoop có các công cụ như MapReduce Technology. Phần mềm lập trình như HIVE QL và PIGlatin được xây dựng trên MapReduce. Nếu người ta có kiến thức về SQL, thì dễ dàng hơn để học HIVE Q / HIVE QL được sử dụng để truy cập vào các cấu trúc dữ liệu đơn giản và không có khả năng xử lý cấu trúc dữ liệu phức tạp lồng nhau. Nó không có tất cả các cấu trúc để truy cập dữ liệu từ hệ thống Hadoop cho mục đích xác nhận. PIGlatin là một công cụ khác mà không đòi hỏi mã hóa phức tạp. Cả hai đều được phát triển do đó viết các chương trình MapReduce để thực hiện thử nghiệm không thể đạt được. Đó là một thách thức lớn cho người kiểm thử vì họ cần phải làm việc về kỹ năng viết code hoặc họ cần phải cần được giúp sức từ các công cụ tự động hóa từ các nhà cung cấp hoặc các nhóm nội bộ cung cấp một giao diện dễ dàng hơn để kiểm tra xác nhận dữ liệu trong các cấu trúc hadoop.

  • Trong các ứng dụng dữ liệu lớn, việc kiểm tra nhiều hơn là xác nhận dữ liệu thay vì kiểm tra từng sản phẩm phần mềm.
  • Trong ứng dụng Big Data, người kiểm tra xác minh việc xử lý dữ liệu của khối lượng lớn dữ liệu bằng cách sử dụng phương pháp phân cụm và các thành phần khác
  • Việc kiểm tra dữ liệu lớn đòi hỏi người kiểm tra phải rất khéo léo vì quá trình xử lý dữ liệu rất nhanh. Chủ yếu là nhóm QA thực hiện kiểm tra chức năng và hiệu suất đối với các ứng dụng dữ liệu lớn.
  • Dữ liệu có thể được xử lý trong thời gian thực hoặc xử lý tương tác hoặc nó có thể là một xử lý hàng loạt là lựa chọn tốt nhất
  • Điều quan trọng là phải kiểm tra chất lượng dữ liệu trước khi thử nghiệm ứng dụng. Kiểm tra chất lượng dữ liệu thường được coi là một phần của kiểm tra cơ sở dữ liệu. Nó bao gồm kiểm tra tính nhất quán, tính hợp lệ, độ chính xác của dữ liệu ...

1. Xác nhận dữ liệu:

Đây là bước đầu tiên của thử nghiệm ứng dụng dữ liệu lớn, còn được gọi là thử nghiệm trước khi bắt đầu. Đây là bước xác nhận dữ liệu. Bước này bao gồm kiểm tra xem liệu dữ liệu chính xác từ nhiều nguồn khác nhau như Media blogs, cơ sở dữ liệu, được kéo vào hệ thống hay không. Dữ liệu này được đẩy vào hệ thống hadoop và bây giờ kiểm tra với dữ liệu nguồn để chúng khớp với hệ thống hadoop. Ngoài ra nó được xác nhận nếu dữ liệu đúng được trích xuất và đẩy đúng vị trí hadoop chính xác. Chúng ta có thể sử dụng các công cụ như Talend để thực hiện xác nhận dữ liệu.

2. Xác nhận logic nghiệp vụ

Trong phần này, kiểm tra xác nhận sự hợp lý của nghiệp vụ trên mỗi nút và sau đó nó được xác nhận hợp lệ đối với nhiều nút. Đó là xác nhận của “Map Reduce”. Trong bước này, tính đúng đắn của quá trình “Map Reduce” sẽ được kiểm tra, dữ liệu được xác nhận sau khi phân chia nhỏ khối lượng, việc tổng hợp và phân tách dữ liệu được kiểm tra

3. Xác nhận đầu ra:

Đây là giai đoạn cuối cùng của quá trình xử lý dữ liệu lớn. Các tệp dữ liệu đầu ra đã được tạo ra đã sẵn sàng để chuyển đến kho dữ liệu hoặc bất kỳ hệ thống nào khác. Trong bước này chúng ta kiểm tra, tính toàn vẹn dữ liệu và dữ liệu được nạp thành công vào hệ thống đích, kiểm tra rằng không có dữ liệu tham nhũng bằng cách so sánh dữ liệu đích với hệ thống tệp HDFS.

Thử nghiệm hiệu suất của các ứng dụng dữ liệu lớn được thực hiện như sau:

  • Chuẩn bị một nhóm dữ liệu lớn để thực hiện việc kiểm tra.
  • Xác định các khối lượng công việc tương ứng
  • Tạo kịch bản.
  • Thực hiện các bài kiểm tra và quan sát kết quả. Nếu kết quả không được đáp ứng thì cấu hình lại và thực hiện các phép thử. Có nhiều tham số kiểm tra hiệu suất trong ứng dụng dữ liệu lớn như: cách dữ liệu được lưu trữ trong các nút khác nhau, đồng thời, bộ nhớ đệm, thời gian trôi, tỷ lệ tin nhắn, kích cỡ tin nhắn, hiệu suất của dữ liệu

Tóm lược: Vì các ứng dụng dữ liệu lớn có thể xử lý dữ liệu có khối lượng lớn hơn nhiều so với việc lưu trữ dữ liệu, vì vậy giá trị nghiệp vụ của ứng dụng dữ liệu lớn hơn nhiều so với các ứng dụng kho dữ liệu.

0