Kết quả là nhiều công ty trong thế giới kinh doanh đã lưu trữ, tổ chức và cập nhật các bảng kiểm kê hàng hoá, lịch sử bán hàng, thông tin khách hàng,… trong một tập hợp các cơ sở dữ liệu
NỘI DUNG
Chương 1: KHO DỮ LIỆU
1.1.1 Các khái niệm cơ bản về kho dữ liệu
Data warehouse được biết đến là công nghệ được ra đời vào nửa đầu những năm 90 bởi 2 nhà nghiên cứu của IBM là Barry Devlin và Paul Murphy để giải quyết những vấn đề dữ liệu đã được đón nhận và được áp dụng vào thực tiễn Hiện nay khái niệm kho dữ liệu đã không còn quá xa lạ với mọi người, nó mô tả tập hợp các công nghệ, phương pháp, kỹ thuật có thể kết hợp với nhau thực hiện các chức năng tích hợp, lưu trữ, xử lý và phân tích dữ liệu để cung cấp thông tin cho người sử dụng Với sự phát triển kinh tế xã hội, công nghệ 4.0 ngày càng thịnh vượng, môi trường ngày càng trở nên sôi động, mức độ cạnh tranh cao và vì thế mà một kho dữ liệu thường có dung lượng lên đến hàng trăm GB thậm chí tính bằng đơn vị TB Và cũng nhờ có sự phát triển của công nghệ mà có thể giúp các nhà kinh doanh đưa ra những định hướng, tổng hợp các khía cạnh, những mặt chiến lược trên dữ liệu khổng lồ từ đó đưa tra cái nhìn về những xu thế đã và đang tồn tại ở mọi mặt hoạt động kinh doanh sau cùng là có những quyết định, xử lý đúng đắn, chuẩn xác
Về cơ bản có thể hiểu kho dữ liệu là nơi tập hợp các dữ liệu, thông tin có chung một chủ đề, được tổng hợp từ nhiều nguồn khác nhau trong nhiều mốc thời gian và không chỉnh sửa Data warehouse là một sự pha trộn có cấu trúc của nhiều công nghệ bao gồm các cơ sở dữ liệu đa chiều và mối quan hệ giữa chúng Được dùng cho việc hỗ trợ ra quyết định, phân tích dữ liệu và lập báo cáo trong công tác quản lý Và theo W.H.Inmon, một nhà kiến trúc hàng đầu trong việc xây dựng ngân hàng dữ liệu, thì kho dữ liệu được định nghĩa như một “tập hợp dữ liệu hướng đối tượng, tích hợp, có tính ổn định, thay đổi theo thời gian hỗ trợ cho xử lý, thực hiện quyết định quản trị”.’
Hai hình thức lưu trữ dữ liệu phổ biến nhất trong quản lý dữ liệu doanh nghiệp là kho dữ liệu và cơ sở dữ liệu Vậy sự khác biệt giữa cơ sở dữ liệu và kho dữ liệu là gì và cái nào là tốt nhất cho tình huống của bạn? Nhóm sẽ phân tích sự khác biệt giữa cơ sở dữ liệu và kho dữ liệu để có thể tìm ra cái nào tốt nhất cho tình huống cấu trúc dữ liệu của mình
Bảng 1: So sánh sự khác biệt giữa Cơ sở dữ liệu và Kho dữ liệu
Yếu tố Cơ sở dữ liệu Kho dữ liệu Định nghĩa Là tập hợp những dữ liệu có liên quan đến nhau được thiết kế với mục đích là lưu trữ, khả năng truy cập và truy xuất
Là một loại cơ sở dữ liệu tích hợp các bản sao dữ liệu giao dịch từ các hệ thống nguồn khác nhau và được thiết kế để sử dụng phân tích
Hiệu suât truy vấn Thấp Tốt
Tóm tắt dữ liệu Dữ liệu chi tiết được lưu trữ trong cơ sở dữ liệu Lưu trữ dữ liệu tóm tắt
Các truy vấn đơn giản Được tối ưu hóa để thực hiện nhanh chóng một số lượng các truy vấn phức tạp trên các tập dữ liệu đa chiều lớn
Lưu trữ dữ liệu,giới hạn lưu trữ
Lưu trữ dữ liệu sử dụng phương pháp tiếp cận quan hệ phẳng
Bị giới hạn trong một phạm vi hoạt động
Sử dụng các phương pháp tiếp cận chiều và chuẩn hoá cấu trúc dữ liệu được biết đến như lược đồ bông tuyết, sao Không giới hạn Định hướng Theo hướng ứng dụng Theo hướng chủ đề
Kỹ thuật xử lý Cơ sở dữ liệu sử dụng Xử lý giao dịch trực tuyến (OLTP) để xóa, chèn, thay thế và cập nhật số lượng lớn các giao dịch ngắn trực tuyến một cách nhanh chóng
Sử dụng Xử lý Phân tích Trực tuyến (OLAP) để phân tích khối lượng lớn dữ liệu một cách nhanh chóng
Cấu trúc dữ liệu Các bảng và phép nối của cơ sở dữ liệu rất phức tạp khi chúng được chuẩn hóa
Vì dữ liệu không được chuẩn hóa nên các phép nối bảng rất đơn giản
Hướng sử dụng Cơ sở dữ liệu hữu ích nhất cho dữ liệu giao dịch nhỏ
Sử dụng cho các giao dịch lớn đòi hỏi mức độ phân tích cao
1.1.2 Kiến trúc cơ bản của kho dữ liệu
1.1.2.1 Tầng đáy - nạp dữ liệu
Vai trò của tầng đáy là cung cấp dịch vụ thu thập, tích hợp dữ liệu từ nhiều nguồn khác nhau sau đó chuẩn hoá, làm sạch dữ liệu và lưu trữ dữ liệu đã được tổng hợp
1.1.2.2 Tầng giữa - OLAP (OLAP server) - Xử lý phân tích trực tuyến
OLAP là kỹ thuật sử dụng các cube (khối – dữ liệu đa chiều) nhằm cung cấp khả năng truy xuất nhanh đến dữ liệu của kho dữ liệu Tạo cube cho dữ liệu trong các bảng chiều (dimension table) và bảng sự kiện (fact table) qua đó cung cấp khả năng thực hiện các truy vấn và phân tích cho các ứng dụng client Nó cho phép các nhà quản lý và nhà phân tích có được cái nhìn sâu sắc về thông tin thông qua khả năng truy cập thông tin nhanh chóng, nhất quán và tương tác
OLAP là nền tảng mang lại thành công bời vì nó đem lại nhiều lợi ích cho người phân tích như sau:
Đưa ra các mô hình dữ liệu đa chiều trực quan giúp người dùng dễ dàng định hướng, lựa chọn và khám phá dữ liệu
Dữ liệu được tính toán trước đối với các truy vấn thường xuyên nhằm làm cho thời gian trả kết quả của các truy vấn đặc biệt trở nên nhanh chóng hơn
Cung cấp các công cụ hữu ích giúp tạo các khung nhìn mới của dữ liệu cho người dùng dựa trên các tập hàm tính toán đặc biệt
Toàn bộ thông tin dữ kiện được tổng hợp để phục vụ cho quản trị phân tích ở mức chuyên sâu
Vai trò của tầng trên cùng là chứa các câu truy vấn, báo cáo, phân tích dữ liệu cuối cùng
1.1.3 Phân tích và thiết kế kho dữ liệu
1.1.3.1 Phân tích và thiết kế kho dữ liệu theo hướng mô hình hóa nhiều chiều (Dimensional Modeling)
Cơ sở dữ liệu đa chiều là một loại hình cụ thể được cấu trúc theo một trật tự tối ưu hóa cho OLAP (xử lý phân tích trực tuyến) và kho dữ liệu Được xây dựng cấu trúc bởi sự
21 tích hợp dữ liệu từ các nguồn khác nhau mà công việc giữa các cơ sở dữ liệu đồng thời và rằng các mạng cung cấp, phân cấp, mảng và các dữ liệu khác định dạng phương pháp Các dữ liệu được trình bày thông qua các mảng đa chiều trong một cơ sở dữ liệu đa chiều và mỗi giá trị riêng biệt của dữ liệu được chứa trong một phần tử có thể được truy cập bởi nhiều chỉ số Đây là tổ chức chi tiết về dữ liệu cho các truy vấn cao cấp và phức tạp trong khi đó cung cấp hiệu năng vượt trội trong những trường hợp nhất định khi so sánh với các cấu trúc quan hệ truyền thống và cơ sở dữ liệu
Hình 1: Kiến trúc khối của kho dữ liệu
Minh họa cơ sở dữ liệu dưới đây gồm 3 chiều, mỗi chiều có các mức sau:
Chiều hàng hoá (Product), có các mức: sản phẩm (Product), loại sản phẩm (Category), công nghiệp (Industry)
Chiều thị trường có các mức: khu vực (Region), quốc gia (Country), thành phố (City), địa điểm (Office)
Chiều thời gian, có các mức: năm (Year), quý (Quarter), tháng (Month), tuần (Week), ngày (Day)
Trong kho dữ liệu, dữ liệu được thể hiện dưới dạng đa chiều gọi là khối (cube) Data cube là trung tâm phân tích, bao gồm nhiều dữ kiện (fact) và dữ kiện tạo ra nhiều chiều dữ kiện khác nhau (dimention)
1.1.3.2 Các dạng (phương pháp) tích hợp dữ liệu
Hướng chủ đề (Subject Oriented)
Cung cấp thông tin theo một chủ thể nhất định thay vì các hoạt động liên tục của cả tổ chức Minh hoạ rõ hơn về hướng chủ đề ta có ví dụ chủ đề là bán hàng, hàng hoá tồn kho,… nếu bạn muốn phân tích dữ liệu thông tín bán hàng của công ty doanh nghiệp thì bạn sẽ xây dựng kho dữ liệu thiên về bán hàng nó sẽ cung cấp những thông tin, số liệu có giá trị như “mặc hàng nào bán chạy nhất trong các mùa” hoặc “những nhóm khách hàng tiềm năng nào mang lại doanh thu tốt cho công ty” Tóm tại mục tiêu mà kho dữ liệu hướng đến là phục vụ các yêu cầu phân tích hoặc khai phá dữ liệu cụ thể gọi là chủ đề
Hướng tích hợp (Integrated Oriented)
Chương 2: MÔ HÌNH DATA PLATFORM CHO KHO DỮ LIỆU
2.1 TỔNG QUAN NỀN TẢNG DỮ LIỆU – DATA PLATFORM
Mô hình data platform hay còn được gọi là mô hình nền tảng dữ liệu thường có các chức năng như thu thập dữ liệu từ các nguồn khác nhau, lưu trữ lượng lớn dữ liệu, xử lý và chia sẻ chúng
Thu thập dữ liệu: Với chức năng thu thập dữ liệu, mô hình nền tảng dữ liệu lớn có khả năng thu thập nhiều loại dữ liệu, từ các nguồn khác nhau Về dữ liệu thời gian thực, nó có thể được truyền và xử lý theo luồng (chuỗi dữ liệu không bị ràng buộc) Trong khi dữ liệu không theo thời gian thực có thể được thu thập bằng các tệp định dạng
Lưu trữ dữ liệu: Dữ liệu có thể được chia thành hai loại là dữ liệu theo thời gian thực và không theo thời gian thực (dữ liệu lịch sử) Tại bước lưu trữ này chúng cũng được tách ra lưu trữ riêng Dữ liệu theo thời gian thực được lưu trữ trong cụm ES Loại còn lại được lưu trong hệ thống tệp phân tán HDFS
Xử lý dữ liệu: Đầu tiên, nguồn dữ liệu sẽ được kiểm tra tính toàn vẹn của tệp, định dạng tệp, đặc tả tên tệp,… Kế tiếp là làm sạch dữ liệu, loại bỏ dữ liệu không đáp ứng yêu cầu, giải mã và lưu trữ dữ liệu Vì tính chất của dữ liệu mà dữ liệu thời gian thực thường được xử lý bằng Spark và dữ liệu lịch sử được được xử lý bằng Hadoop
Chia sẻ dữ liệu: Chức năng này thường được người dùng thực hiện trên một trang web- giao diện của nền tảng dữ liệu lớn Dữ liệu có thể được truy xuất thông qua JAVA API hoặc RESTful API [1]
2.2 KHẢO SÁT CÁC NỀN TẢNG DỮ LIỆU HIỆN NAY
Databricks là một nền tảng dữ liệu chuyên về phân tích được tối ưu hóa cho nền tảng dịch vụ đám mây Microsoft Azure Azure Databricks cung cấp ba môi trường để phát triển các ứng dụng chuyên sâu về dữ liệu: Databricks SQL, Databricks Data Science & Engineering, và Databricks Machine Learning Trong đó:
Databricks SQL cung cấp dịch vụ truy vấn dữ liệu trên hồ dữ liệu, trực quan hóa dữ liệu Ngoài hai dịch vụ này, Databricks cho phép xây dựng và chia sẻ trang tổng quan dữ liệu
Databricks Data Science & Engineering: là môi trường làm việc hướng tới các đối tượng như các kỹ sư dữ liệu, nhà khoa học dữ liệu và kỹ sư máy học Nó cung cấp không gian làm việc khoa học cho họ Đối với đường ống dữ liệu lớn, dữ liệu (thô hoặc có cấu trúc) được nhập vào Azure thông qua Azure Data Factory theo lô hoặc được truyền trực tuyến gần thời gian thực bằng Apache Kafka, Event Hub hoặc IoT Hub Dữ liệu này được đưa vào một hồ dữ liệu để lưu trữ lâu dài liên tục, trong Azure Blob Storage hoặc Azure Data Lake Storage Trong một quy trình phân tích, Azure DataBricks đọc dữ liệu từ nhiều nguồn dữ liệu và Spark sẽ biến nó thành thông tin chi tiết và hữu ích
Databricks Machine Learning: là một môi trường học máy tích hợp từ đầu đến cuối kết hợp các dịch vụ được quản lý để theo dõi thử nghiệm, đào tạo mô hình, phát triển và quản lý tính năng cũng như cung cấp tính năng và mô hình
Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) Nó hỗ trợ rất nhiều công việc trong môi trường CNTT doanh nghiệp SQL Server được xây dựng dựa trên SQL - ngôn ngữ lập trình tiêu chuẩn hóa mà các quản trị viên cơ sở dữ liệu (DBA) và các chuyên gia CNTT khác sử dụng để quản lý cơ sở dữ liệu và truy vấn dữ liệu chứa trong đó
SQL Server cung cấp dịch vụ quản lý dữ liệu, BI, phân tích dữ liệu, trực quan hóa dữ liệu, tạo báo cáo, thậm chí là học máy (SQL Server 2016) Ngoài cung cấp dịch vụ, SQL Server còn quan tâm tới tính năng bảo mật, gồm ba công nghệ bảo mật:
Luôn được mã hóa, cho phép người dùng cập nhật dữ liệu đã mã hóa mà không cần phải giải mã bảo mật cấp hàng đầu tiên
Cho phép có quyền truy truy cập dữ liệu ở cấp độ hàng của bảng trong cơ sở dữ liệu
Tự động ẩn các phần dữ liệu nhạy cảm như khỏi người dùng không có đặc quyền truy cập đầy đủ
Amazon Web Services - AWS là một nền tảng trực tuyến cung cấp các giải pháp điện toán đám mây có thể mở rộng và tiết kiệm chi phí AWS là một nền tảng đám mây được chấp nhận rộng rãi, cung cấp một số hoạt động theo yêu cầu như năng lượng tính toán, lưu trữ cơ sở dữ liệu, phân phối nội dung, v.v., để giúp các doanh nghiệp mở rộng quy mô và phát triển Amazon có một danh sách các dịch vụ:
Kết nối mạng và phân phối
Những công cụ phát triển
AWS phổ biến bởi tính đa dạng, phù hợp với mọi nhu cầu phân tích dữ liệu được sử dụng với quy mô lớn Những tính năng mang lại sự hữu dụng của aws như:
Datalake có quy mô, tốc độ và linh hoạ các trên toàn phương diện phân tích và lưu trữ dữ liệu
Các dịch vụ của aws đem lại sự tối ưu hoá các hoạt đọng từ đó đem lại hiệu suất, quy mô sử dụng tốt nhất với mức chi phí phù hợp
Truy cập, bảo mật, quản lý dữ liệu hợp nhất
Tích hợp Machine Learning cho các phân tích chuyên sâu
Phi máy chủ và dễ dàng sử dụng
Hiện nay có rất nhiều công ty sử dụng AWS vì tính ứng dụng và dịch vụ của nó, chẳng hạn: Netflix, Intuit, Coinbase, Finra, Adobe
2.2.4 Hiện trạng nền tảng dữ liệu nhóm đang xây dựng
Mục tiêu đề ra khi nhóm xây dựng nền tảng dữ liệu này là cung cấp một môi trường làm việc đã dạng, nhanh, bảo mật cho người dùng khi làm việc với dữ liệu lớn Điểm khác biệt so với các nền tảng khác là nó được xây dựng hoàn toàn trên các ứng dụng mã nguồn mở, truy vấn sử dụng MapReduce nên sẽ tiết kiệm thời gian khi làm việc liên quan đến truy vấn dữ liệu lớn
Chương 3: PHÂN TÍCH THIẾT KẾ VÀ CÀI ĐẶT
3.1.1 Mục đích của phân tích thiết kế và cài đặt
Tài liệu mô tả và phác thảo yêu cầu của người dùng cuối Giúp đơn vị yêu cầu và các thành viên dự án xác định đúng và đủ yêu cầu
Tài liệu này là cơ sở và đầu vào cho các quá trình:
- Tập hợp, phân tích yêu cầu, đưa ra đặc tả yêu cầu phần mềm
- Phân tích thiết kế, lập trình
STT HẠNG MỤC MÔ TẢ
Lượng dữ liệu sinh ra ngày một tăng theo độ lớn và sự phức tạp Nhu cầu lưu trữ, quản lý, phân tích dữ liệu vì thế được sinh ra Nếu không có 1 công cụ để hỗ trợ thì người nắm dữ nguồn dữ liệu lớn sẽ tốn thời gian, tiền bạc và công sức khi sử dụng nguồn dữ liệu lớn đó
2 Mục đích chung/Giới thiệu tổng quan
Xây dựng data platform, có trang web để người dùng giao tiếp với data platform
3 Mục tiêu/Hiệu quả kỳ vọng của dự án
- Dễ dàng lưu trữ dữ liệu vào kho dữ liệu của data platform
- Dữ liệu được xử lý, làm sạch và phân tích
- Truy xuất dữ liệu qua API
- Có giao diện thân thiện cho người sử dụng
Sử dụng data platform sẽ giúp người dùng tiết kiệm nguồn lực, thời gian và chi phí trong quá trình làm việc với nguồn dữ liệu lớn của họ
Chủ thể nắm giữ nguồn dữ liệu lớn, những người có nhu cầu khai thác tiềm năng, tài nguyên trong dữ liệu
- Ngân sách (AWS Academy Learner Lab): 100$
- Tính năng: Trích xuất, biến đổi, tải, truy xuất
3.1.3 Thuật ngữ, từ ngữ viết tắt
Bảng 3: Danh sách thuật ngữ, các từ viết tắt
STT THUẬT NGỮ MÔ TẢ
1 Data Platform Nền tảng dữ liệu
2 API Application Programming Interface – Phương thức trung gian kết nối
3 Web Website – Trang web, nơi chứa các nội dung văn bản, hình ảnh,
… được lưu trữ trên máy chủ
7 DWH Data Warehouse (kho dữ liệu)
3.2.1 Tổng quan quy trình nghiệp vụ của nền tảng dữ liệu
Hình 4: Quy trình làm việc của một nền tảng dữ liệu
Bước 1 - Tích hợp dữ liệu: Thu thập dữ liệu từ người dùng
Bước 2 - Xây dựng kho dữ liệu: Lưu trữ dữ liệu trên hệ thống tệp phân tán của
Bước 3 - Chuyển đổi dữ liệu: Sử dụng các công cụ để chuyển đổi dữ liệu về cùng cấu trúc để dễ dàng quản lý
Bước 4: Lưu trữ dữ liệu đã qua xử lý về một kho dữ liệu
Bước 5: Phân tích dữ liệu theo mục đích của người sử dụng, khai thác tài nguyên tiềm ẩn bên trong dữ liệu
Metadata management: Quản lý siêu dữ liệu
Hình 5: Sơ đồ chức năng của trang web data platform
Người dùng sẽ thực hiện nhập, đăng tải dữ liệu Dữ liệu sẽ được lưu trữ trong HDFS Dữ liệu thô sau đó sẽ được chuyển đổi Nhằm phục vụ nhu cầu của người sử dụng, nền tảng dữ liệu này cho phép người dùng truy vấn, tính toán, phân tích… Và để có cái nhìn khách quan hơn, nền tảng dữ liệu này còn hỗ trợ trực quan hóa dữ liệu
3.2.4 Danh sách các chức năng
Bảng 4: Danh sách các chức năng
1 Tạo cơ sở dữ liệu Tạo cơ sở dữ liệu mới trong hệ quản trị cơ sở dữ liệu mysql,hive
2 Tạo bảng, nhập dữ liệu
Dữ liệu sẽ được lấy từ tệp dữ liệu trong HDFS hoặc từ tệp vừa mới đăng tải lên, và chuyển vào bảng mới tạo trong cơ sở dữ liệu
3 Truy vấn Thực hiện các câu lệnh truy vấn theo nhu cầu người sử dụng
4 Nhập dữ liệu Người dùng đăng tải tệp dữ liệu Dữ liệu này được lưu trữ trên hệ thống tệp phân tán HDFS
Người dùng thực hiện truy vấn dữ liệu theo nhu cầu, sau đó tải dữ liệu đã truy vấn đó theo các định dạng như csv, …
Người dùng truy vấn dữ liệu, dữ liệu được truy vấn sẽ được trực quan thành các biểu đồ dạng biểu đồ cột, biểu đồ đường
Bảng 5: Các cột mốc dự kiến trong đồ án
1 Pilot 30/6/2022 Dự kiến hoàn thành, kiểm thử sản phẩm
2 Go-live 15/7/2022 Hoàn thành sản phẩm, triển khai
3.3.1 Tạo mới cơ sở dữ liệu, nhập dữ liệu
Bảng 6: Đặc tả chức năng Tạo mới cơ sở dữ liệu Description - Người dùng tạo cơ sở dữ liệu mới cho mysql, hive
Actor - Người dùng cơ sở dữ liệu
Trigger - Chọn New Databases hoặc sử dụng câu lệnh truy vấn
- Người dùng tạo cơ sở dữ liệu, tạo bảng thành công
- Nhập dữ liệu thành công
Post-condition - Dữ liệu được lưu vào HDFS
Hình 7: Activity Diagram - Creating Database
Hình 8: Activity Diagram – Creating table and import data
Bảng 7: Đặc tả chức năng Truy vấn Description - Màn hình cho phép người dùng làm việc với hive
Actor - Người dùng cơ sở dữ liệu
Trigger - Truy cập vào “Nhập” trên thanh công cụ
- Tạo bảng và nhập dữ liệu thành công
- Tạo bảng và nhập dữ liệu thành công, ngược lại sẽ thông báo lỗi và
47 lý do khiến cho quá trình này thất bại
Hình 9: Activity Diagram - Data query
Bảng 8: Đặc tả chức năng Nhập dữ liệu
Description - Màn hình cho phép người dùng nhập dữ liệu từ tệp từ xa, cơ sở dữ liệu ngoài và nhập thủ công
Trigger - Truy cập vào File Browser trên thanh công cụ
- Tải dữ liệu và được lưu vào hdfs
Post-condition - Nếu nhập dữ liệu thành công thì tên tệp sẽ hiển thị trên hộp thoại
Hình 10: Activity Diagram – Import data
Bảng 9: Đặc tả chức năng Trích xuất dữ liệu
Description - Xuất dữ liệu đã được người dùng truy vấn theo các định dạng tùy chọn, hoặc xuất vào cơ sở dữ liệu khác
Trigger - Truy cập vào “exporter” trên thanh công cụ
- Người dùng tải dữ liệu thành công, hoặc thêm dữ liệu này vào bảng mới trong cơ sở dữ liệu khác thành công
Post-condition - Nếu xuất dữ liệu thành công thì báo quá trình hoàn thành Ngược lại thì báo lỗi
Bảng 10: Đặc tả chức năng Trực quan hóa dữ liệu Description - Hiển thị đồ thị trực quang dữ liệu
Trigger - Truy cập vào trang web superset
- Thành công thì xuất hiện đồ thị trực quan dữ liệu Không thành công thì khung này trống
Hình 11: Activity Diagram - Data visualization
3.4 CÀI ĐẶT TRÊN MÔI TRƯỜNG PHÁT TRIỂN
Mục đích hướng tới của đề tài là làm việc với Big Data và xây dựng một nền tảng dữ liệu dựa trên kiến trúc mã nguồn mở, hỗ trợ tối đa tác vụ cho người dùng cuối Hadoop và các ứng dụng phân tán của nó là 1 sự lựa chọn chọn tốt Ứng dụng phân tán chính là mấu chốt để làm việc với dữ liệu lớn
Hình 12: Kiến trúc nền tảng dữ liệu
“Một EC2 Instance chính là một máy chủ ảo trong thuật ngữ dịch vụ Web của Amazon EC2 là viết tắt của Elastic Compute Cloud Đây là một dịch vụ web nơi người đăng ký AWS có thể yêu cầu và cung cấp máy chủ tính toán trong đám mây AWS.”
Bảng 11: Cấu hình máy chủ ảo EC2 Instance Ubuntu trên Amazon AWS
Phiên bản vCPU Tín dụng CPU/giờ Bộ nhớ (GiB) Lưu trữ m6i.large 2 24 8 Chỉ EBS
Bộ xử lý có thể mở rộng Intel Xeon với tần số lên đến 3,1 GHz
Intel AVX, Intel AVX2, Intel Turbo
Kết nối mạng nâng cao
Putty Đối với người quản trị, cài đặt phần mềm kết nối, quản lí các máy ảo EC2 Ubuntu Instance Download tại https://the.earth.li/~sgtatham/putty/latest/w64/putty-64bit-0.77- installer.msi
Cài đặt ứng dụng khách, quản lý tệp từ xa trên máy chủ EC2 Ubuntu Instance Download bản mới nhất tại: https://winscp.net/eng/download.php
Bảng 12: Kiểm thử STT Mô tả testcase Các bước test Kết quả Trạng thái
1 Kiểm tra chức năng nhập dữ liệu
Thực hiện nhập nhiều dạng tệp dữ liệu, đa dạng kích cỡ Kiểm tra dữ liệu đã được đăng tải thành công không
Dữ liệu được lưu vào HDFS Đạt
2 Kiểm tra chức năng xuất dữ liệu về dạng tệp
Thực hiện xuất tệp về theo tất cả các định dạng cho phép
Kiểm tra tệp đã được tải về đúng dữ liệu đã chọn hay không Kiểm tra
Dữ liệu được tải về máy thành công Đạt
53 kích cỡ, định dạng tệp tải về đúng không
Kiểm tra chức năng xuất dữ liệu về một cơ sở dữ liệu khác
Thực hiện xuất tệp vào cơ sở dữ liệu/bảng bất kì
Kiểm tra dữ liệu có đầy đủ, chính xác không
Dữ liệu được lưu trong cơ sở dữ liệu/bảng khác Đạt
4 Kiểm tra chức năng tạo cơ sở dữ liệu
Chọn loại cơ sở dữ liệu bất kỳ Tạo cơ sở dữ liệu mới
Kiểm tra cơ sở dữ liệu mới có được tạo không
Tạo cơ sở dữ liệu mới Đạt
5 Kiểm tra chức năng tạo bảng
Chọn cơ sở dữ liệu bất kỳ Tạo bảng mới Kiểm tra bảng mới có được tạo không Dữ liệu nhập vào bảng có đầy đủ và chính xác không
Tạo bảng mới, dữ liệu được nhập đầy đủ vào bảng
Hive: Đạt Mysql: Chưa đạt Lỗi khi nhập dữ liệu
6 Kiểm tra chức năng trực quang hoá dữ liệu
Thực hiện truy vấn bất kì nhóm dữ liệu
Trực quan dữ liệu đó Kiểm tra biểu đồ trực quan chính xác được điều mà dữ liệu muốn thể hiện
Dữ liệu được trực quang được thể hiện thông qua các đồ thị trực quang dữ liệu Đạt