Khóa luận tốt nghiệp: Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo tại HCMUTE năm 2023

Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo xử lý dữ liệu lớn tại HCMUTE. Giải pháp tối ưu hóa hiệu năng, độ trễ và mở rộng hệ thống Big Data.

Trường đại học

Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh

Chuyên ngành

Kỹ thuật phần mềm

Tác giả

Nguyễn Thanh Phát, Trần Đức Tuấn

Thể loại

Khóa luận tốt nghiệp

2023

64
0
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng quan về kiến trúc Lambda trong xử lý Big Data

Kiến trúc Lambda là mô hình xử lý dữ liệu lớn được Nathan Marz đề xuất. Mô hình giải quyết bài toán xử lý khối lượng dữ liệu khổng lồ theo thời gian thực lẫn theo lô. Kiến trúc gồm ba lớp chính: Batch Layer, Speed Layer và Serving Layer. Mỗi lớp đảm nhận vai trò riêng biệt, phối hợp nhịp nhàng để đảm bảo độ chính xác và tốc độ phản hồi cao.

Nhóm sinh viên Nguyễn Thành Phát và Trần Đức Tuân tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (HCMUTE) đã nghiên cứu và xây dựng ứng dụng demo áp dụng kiến trúc này. Đề tài thuộc chương trình Kỹ thuật Phần mềm, thực hiện dưới sự hướng dẫn của ThS. Quách Đình Hoàng. Dự án sử dụng tập dữ liệu bất động sản Connecticut giai đoạn 2001–2020 để minh họa khả năng xử lý và trực quan hóa dữ liệu. Kết quả cuối cùng là một pipeline hoàn chỉnh kết hợp streaming, batch processing và dashboard hiển thị số liệu thống kê theo thời gian thực. Đây là minh chứng thực tế cho khả năng ứng dụng kiến trúc Lambda trong bài toán phân tích dữ liệu quy mô lớn tại môi trường học thuật Việt Nam.

1.1. Định nghĩa và nguồn gốc kiến trúc Lambda

Kiến trúc Lambda ra đời nhằm khắc phục nhược điểm của các hệ thống xử lý dữ liệu truyền thống. Nathan Marz công bố mô hình này khi làm việc tại Twitter vào đầu thập niên 2010. Mục tiêu cốt lõi là xây dựng hệ thống chịu lỗi tốt, có khả năng mở rộng và xử lý đồng thời cả dữ liệu lịch sử lẫn dữ liệu thời gian thực. Tên gọi Lambda lấy cảm hứng từ ký tự Hy Lạp λ, tượng trưng cho sự kết hợp hai luồng xử lý song song. Mô hình này đặc biệt phù hợp với bài toán phân tích trong lĩnh vực thương mại điện tử, tài chính và bất động sản.

1.2. Ba lớp chức năng cơ bản của kiến trúc Lambda

Batch Layer lưu trữ toàn bộ dữ liệu thô và xử lý theo chu kỳ, đảm bảo tính chính xác tuyệt đối. Speed Layer xử lý dữ liệu đến trong thời gian thực, bù đắp độ trễ của Batch Layer. Serving Layer tổng hợp kết quả từ hai lớp trên, cung cấp câu trả lời cho truy vấn của người dùng với độ trễ thấp nhất. Sự phân tách rõ ràng giữa ba lớp giúp hệ thống dễ bảo trì và nâng cấp độc lập. Mô hình cho phép cân bằng giữa tốc độ và độ tin cậy trong xử lý Big Data.

II. Phân tích thách thức xử lý dữ liệu lớn trong thực tiễn

Hệ thống dữ liệu lớn đặt ra nhiều thách thức kỹ thuật phức tạp. Khối lượng dữ liệu tăng theo cấp số nhân khiến các giải pháp truyền thống nhanh chóng quá tải. Độ trễ xử lý cao làm giảm giá trị của thông tin, đặc biệt trong các bài toán cần phản hồi theo thời gian thực như giám sát giao dịch hay dự báo giá.

Dự án tại HCMUTE xác định hai vấn đề cốt lõi: khả năng mở rộng (scalability) và độ phức tạp trong vận hành (operational complexity). Khi lượng dữ liệu bất động sản từ Connecticut tăng liên tục qua từng năm, hệ thống đơn lẻ không đủ năng lực phân tích kịp thời. Đồng thời, việc duy trì đồng thời nhiều pipeline xử lý đòi hỏi kiến trúc có khả năng điều phối hiệu quả.

Mô hình kiến trúc đơn lớp (monolithic architecture) thường gặp bottleneck tại giai đoạn đọc/ghi dữ liệu. Hệ thống không thể vừa đảm bảo tốc độ xử lý streaming vừa duy trì độ chính xác của batch computation. Kiến trúc Lambda xuất hiện như giải pháp phân tách hai luồng xử lý, loại bỏ sự đánh đổi bất khả kháng này. Hiểu rõ các thách thức là bước nền tảng trước khi triển khai bất kỳ giải pháp kỹ thuật nào.

2.1. Vấn đề về khả năng mở rộng hệ thống Big Data

Scalability là khả năng hệ thống duy trì hiệu suất khi tải công việc tăng lên. Với tập dữ liệu bất động sản Connecticut 2001–2020, khối lượng bản ghi lên đến hàng triệu dòng, đòi hỏi hệ thống phân tán thực sự. Kiến trúc đơn máy chủ không thể xử lý song song nhiều truy vấn phức tạp. Apache Kafka và Apache Spark được lựa chọn trong dự án HCMUTE chính vì khả năng mở rộng theo chiều ngang linh hoạt, cho phép bổ sung node xử lý mà không làm gián đoạn hệ thống đang hoạt động.

2.2. Độ phức tạp vận hành trong hệ thống xử lý hỗn hợp

Vận hành đồng thời batch processing và stream processing trong cùng một hệ thống tạo ra độ phức tạp lớn về kỹ thuật. Logic xử lý phải được viết và duy trì ở hai nơi riêng biệt. Sai lệch giữa kết quả batch và kết quả streaming gây ra tình trạng không nhất quán dữ liệu. Nhóm nghiên cứu HCMUTE nhận thấy rằng việc đồng bộ hóa giữa HDFS (lưu trữ batch) và Cassandra (lưu trữ speed) đòi hỏi chiến lược merge dữ liệu rõ ràng ở Serving Layer.

III. Giải pháp triển khai kiến trúc Lambda tại HCMUTE

Nhóm nghiên cứu áp dụng bộ công cụ Big Data hiện đại để xây dựng pipeline hoàn chỉnh. Apache Kafka đóng vai trò message broker, tiếp nhận luồng dữ liệu đầu vào liên tục. Apache Spark xử lý dữ liệu theo cả hai chế độ: Spark Core cho batch và Spark Streaming cho speed. HDFS lưu trữ dữ liệu thô trong Batch Layer. Apache Hive cung cấp giao diện truy vấn SQL trên HDFS. Apache Cassandra phục vụ lưu trữ tốc độ cao trong Speed Layer.

Great Expectations được tích hợp để kiểm soát chất lượng dữ liệu đầu vào trước khi đưa vào pipeline. Công cụ này tự động phát hiện bất thường và đảm bảo schema nhất quán. Docker containers hóa toàn bộ môi trường, giúp triển khai đồng nhất trên mọi máy chủ. Apache Airflow điều phối lịch chạy các tác vụ batch theo định kỳ.

Servicing Layer sử dụng dashboard tự động làm mới mỗi hai phút, kết hợp dữ liệu từ cả Batch Layer lẫn Speed Layer. Spark Streaming xử lý micro-batch với chu kỳ mặc định 5 giây, đảm bảo độ trễ thấp trong cập nhật số liệu. Python là ngôn ngữ lập trình chính xuyên suốt toàn bộ dự án, từ ETL đến training mô hình dự báo giá bất động sản.

3.1. Công nghệ và công cụ sử dụng trong dự án demo

Stack công nghệ được lựa chọn kỹ lưỡng dựa trên tiêu chí mã nguồn mở và khả năng tích hợp cao. Python 3.x làm ngôn ngữ chính nhờ hệ sinh thái thư viện phong phú. Docker đảm bảo tính di động của ứng dụng qua môi trường. VS Code là môi trường phát triển chính. Apache Kafka xử lý streaming với throughput hàng triệu tin nhắn mỗi giây. Spark 3.x cung cấp engine xử lý phân tán. Cassandra đảm bảo độ trễ đọc ghi thấp cho Speed Layer. Hive cho phép truy vấn dạng SQL trên dữ liệu lưu trong HDFS.

3.2. Quy trình xử lý dữ liệu bất động sản Connecticut

Dữ liệu bất động sản Connecticut giai đoạn 2001–2020 chứa thông tin về địa điểm, loại tài sản, giá bán và tỷ lệ giao dịch. Batch Layer nạp toàn bộ dữ liệu lịch sử vào HDFS, Spark Core tính toán các chỉ số tổng hợp định kỳ. Speed Layer nhận dữ liệu mới qua Kafka, Spark Streaming cập nhật Delta Lake tables theo thời gian thực. Serving Layer kết hợp kết quả từ cả hai lớp theo công thức tính trung bình gia quyền, tạo ra chỉ số tổng hợp chính xác và cập nhật liên tục cho dashboard.

IV. Kết quả và ứng dụng thực tiễn của kiến trúc Lambda

Dự án đạt được mục tiêu đề ra: xây dựng thành công pipeline xử lý dữ liệu áp dụng kiến trúc Lambda với đầy đủ ba lớp chức năng. Dashboard hiển thị ba chỉ số chính: tỷ lệ bán trung bình (average sale ratio), tổng số giao dịch theo thành phố (total customer by towns) và tổng số giao dịch theo loại bất động sản (total customer by property types). Số liệu tự động làm mới mỗi hai phút mà không cần can thiệp thủ công.

Mô hình học máy được huấn luyện trên dữ liệu đã được làm sạch trong Data Warehouse, nhằm dự báo giá bất động sản. Đây là bước mở rộng tự nhiên sau khi cơ sở hạ tầng dữ liệu được thiết lập vững chắc.

Kiến trúc Lambda chứng tỏ giá trị trong môi trường học thuật khi cung cấp framework rõ ràng để giải quyết bài toán Big Data. Sinh viên chuyên ngành Kỹ thuật Phần mềm có thể tham khảo mô hình này để áp dụng vào các lĩnh vực khác như phân tích mạng xã hội, theo dõi giao thông hay giám sát y tế. Nghiên cứu tại HCMUTE đặt nền tảng cho các đề tài tiếp theo về tối ưu hóa kiến trúc dữ liệu phân tán trong bối cảnh Việt Nam.

4.1. Kết quả đo lường hiệu năng hệ thống demo

Hệ thống xử lý thành công dữ liệu bất động sản nhiều năm liên tiếp với độ trễ chấp nhận được. Spark Streaming xử lý micro-batch mỗi 5 giây, đảm bảo Speed Layer luôn cập nhật. Batch jobs chạy định kỳ theo lịch Airflow, tính toán lại các chỉ số lịch sử với độ chính xác cao. Dashboard phản hồi truy vấn người dùng trong thời gian thực nhờ Serving Layer kết hợp thông minh giữa hai nguồn dữ liệu. Great Expectations phát hiện và báo cáo anomaly trong dữ liệu đầu vào, nâng cao độ tin cậy tổng thể.

4.2. Hướng phát triển và mở rộng trong tương lai

Kiến trúc Lambda có thể mở rộng sang bài toán phân tích thị trường bất động sản Việt Nam với dữ liệu từ nhiều tỉnh thành. Tích hợp thêm thuật toán học sâu (deep learning) vào tầng dự báo giá có thể nâng cao độ chính xác mô hình. Thay thế Cassandra bằng Apache Druid hoặc ClickHouse có thể cải thiện hiệu suất truy vấn phân tích. Ngoài ra, hướng nghiên cứu kiến trúc Kappa như một phương án thay thế đơn giản hóa cũng cần được đánh giá kỹ lưỡng trong các đề tài tiếp theo tại HCMUTE.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

15/10/2026

Trích đoạn nội dung tài liệu

MINISTRY OF EDUCATION AND TRAINING HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION *5$'8$7,217+(6,6 ,1)250$7,217(&+12/2*< STUDY LAMBDA ARCHITECTURE AND BUILD A DEMO APPLICATION  LECTURER: M. QUACH DINH HOANG STUDENT6: NGUYEN THANH PHAT  TRAN DUC TUAN SKL 011153 Ho Chi Minh City, August 2023 MINISTRY OF EDUCATION AND TRAINING HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION FACULTY FOR HIGH-QUALITY TRAINING  CAPSTONE PROJECT INFORMATION TECHNOLOGY STUDY LAMBDA ARCHITECTURE AND BUILD A DEMO APPLICATION LECTURER: M. Quach Dinh Hoang STUDENTS: Nguyen Thanh Phat - 19110101 Tran Duc Tuan - 19110140 Ho Chi Minh City, August 2023 1 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- Ho Chi Minh City, August 11, 2023 GRADUATION PROJECT ASSIGNMENT Student name: Nguyen Thanh Phat Student ID: 19110101 Student name: Tran Duc Tuan Student ID: 19110140 Major: Software Engineering Class: 19110CLA4 Advisor: M. Quach Dinh Hoang Date of assignment: 06/03/2023 Date of submission: 19/06/2023 1.

Project title: Study Lambda architecture and build a demo application 2. Initial materials provided by the advisor: Advisor suggests me to read about some reference sources or articles about Lambda architecture which will help me to do this project 3. Content of the project: Combine Big Data tools together and get advantage of them. Then learning about Lambda architecture and how it resolves problems about scalability and complexity of Big Data systems.

Final product: A model that applies Lambda architecture to stream and process a massive amount of data and a dashboard illustrates these data under charts. CHAIR OF THE PROGRAM ADVISOR (Sign with full name) (Sign with full name) 3 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- Ho Chi Minh City, August 11, 2023 ADVISOR’S EVALUATION SHEET Student name: Nguyen Thanh Phat Student ID: 19110101 Student name: Tran Duc Tuan Student ID: 19110140 Major: Software Engineering Project title: Study Lambda architecture and build a demo application Advisor: M. Quach Dinh Hoang EVALUATION 1. Content of the project:.

Approval for oral defense? (Approved or denied) .) Ho Chi Minh City, August 11, 2023 ADVISOR (Sign with full name) 4 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- Ho Chi Minh City, August 11, 2023 PRE-DEFENSE EVALUATION SHEET Student name: Nguyen Thanh Phat Student ID: 19110101 Student name: Tran Duc Tuan Student ID: 19110140 Major: Software Engineering Project title: Study Lambda architecture and build a demo application Name of Reviewer: PhD. Tran Nhat Quang EVALUATION 1. Content and workload of the project. Approval for oral defense? (Approved or denied) .) Ho Chi Minh City, August 11, 2023 REVIEWER (Sign with full name) 5 THE SOCIALIST REPUBLIC OF VIETNAM Independence – Freedom– Happiness -------- Ho Chi Minh City, August 11, 2023 EVALUATION SHEET OF DEFENSE COMMITTEE MEMBER Student name: Nguyen Thanh Phat Student ID: 19110101 Student name: Tran Duc Tuan Student ID: 19110140 Major: Software Engineering Project title: Study Lambda architecture and build a demo application Name of defense Committee Member:.

Content of the project:. Approval for oral defense? (Approved or denied) .) Ho Chi Minh City, August 11, 2023 COMMITTEE MEMBER (Sign with full name) 6 ACKNOWLEDGEMENTS We would like to offer our heartfelt appreciation to the Department of High-Quality Training, Ho Chi Minh City University of Technology and Education, and all the professors and teachers who have actively taught and aided me during my study and research. In particular, we would like to express our heartfelt thanks to Mr. Quach Dinh Hoang for personally instructing, leading and establishing all suitable conditions to let me carry out the thesis.

He helped us a lot in picking a topic and directing us to understand, investigate the theory and practice the issue. During the thesis implementation, the knowledge that the teacher provided us was extremely valuable, not only assisting us in completing the thesis but also supplementing us with a significant amount of core knowledge. However, due to our limited professional expertise and limitations in our personal experience, the substance of the report is unavoidable. We would like to get your thoughts and more direction.

He guides and criticizes to make this report more thorough.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Cách trích dẫn tài liệu này

Chuẩn Việt Nam
Nguyễn Thanh Phát, Trần Đức Tuấn (2023), Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo, Khóa luận tốt nghiệp, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, Thành phố Hồ Chí Minh.
APA 7
Nguyễn, T. P., & Trần, Đ. T. (2023). Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo [Khóa luận tốt nghiệp, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh]. vn-document.net. https://vn-document.net/document/nghien-cuu-kien-truc-lambda-va-xay-dung-ung-dung-demo-tai-hcmute/9387367535
IEEE
T. P. Nguyễn and Đ. T. Trần, "Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo," Khóa luận tốt nghiệp, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, Thành phố Hồ Chí Minh, 2023. [Online]. Available: https://vn-document.net/document/nghien-cuu-kien-truc-lambda-va-xay-dung-ung-dung-demo-tai-hcmute/9387367535

Tạo trích dẫn cho tài liệu khác

Tài liệu <strong>Khóa luận tốt nghiệp: Nghiên cứu kiến trúc Lambda và xây dựng ứng dụng demo tại HCMUTE năm 2023</strong> cung cấp cái nhìn toàn diện về mô hình xử lý dữ liệu lớn kết hợp giữa batch layer và speed layer. Công trình đem lại giá trị thiết thực cho người học khi tiếp cận phương pháp xây dựng hệ thống phân tán thời gian thực với độ trễ thấp. Để hoàn thiện tầng serving layer, người đọc nên kết hợp mô hình <strong>cơ sở dữ liệu phân tán</strong> nhằm nâng cao độ sẵn sàng lưu trữ. Bên cạnh đó, việc áp dụng các giải pháp <strong>tối ưu hóa truy vấn</strong> sẽ giúp tăng tốc độ phản hồi cho người dùng cuối. Đồng thời, làm chủ kỹ thuật <strong>tối ưu xử lý giao tác</strong> là chìa khóa để duy trì sự ổn định khi thông lượng dữ liệu tăng vọt.