Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh chuyển đổi số và sự bùng nổ của công nghệ thông tin, ngành kinh doanh bất động sản đang chứng kiến sự gia tăng nhanh chóng về khối lượng dữ liệu phát sinh từ nhiều kênh khác nhau. Nguồn dữ liệu này rất đa dạng, bao gồm hệ thống quản lý bất động sản nội bộ, thông tin đăng tải trên các trang web thương mại, báo cáo nghiên cứu thị trường và các luồng dữ liệu tương tác từ mạng xã hội. Sự phân mảnh, thiếu đồng bộ và tính chất phức tạp của các định dạng dữ liệu (dữ liệu có cấu trúc, bán cấu trúc và phi cấu trúc) đặt ra thách thức lớn đối với công tác tổ chức, lưu trữ và xử lý thông tin tại các doanh nghiệp.
Để khắc phục những hạn chế của các hệ thống lưu trữ truyền thống, nghiên cứu tập trung vào việc nghiên cứu và triển khai kiến trúc Data Lakehouse trên nền tảng Databricks. Đây là giải pháp kết hợp khả năng lưu trữ linh hoạt, có thể mở rộng của Data Lake với khả năng quản lý giao dịch, tối ưu hóa truy vấn của Data Warehouse, từ đó tự động hóa quy trình xử lý dữ liệu và hỗ trợ hiệu quả các dịch vụ Business Intelligence (BI) nhằm phục vụ công tác ra quyết định chiến lược.
Nhiệm vụ nghiên cứu của đồ án được xác định theo 6 nội dung cụ thể:
- Tìm hiểu bối cảnh lịch sử và các kiến trúc dữ liệu hiện có (Data Warehouse, Data Lake).
- Tìm hiểu về nền tảng Databricks và các công nghệ tích hợp.
- Tìm hiểu kiến trúc Data Lakehouse.
- Xây dựng hệ thống Data Lakehouse cho dữ liệu bất động sản.
- Xây dựng các bảng báo cáo và bảng điều khiển (dashboard) trực quan hóa dữ liệu.
- Xây dựng và đánh giá các mô hình học máy (Machine Learning) phục vụ dự đoán.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Quy trình xây dựng hệ thống Data Lakehouse trên nền tảng Databricks và việc tích hợp các dịch vụ BI cho doanh nghiệp kinh doanh bất động sản. Dữ liệu đối tượng bao gồm thông tin thị trường bất động sản được thu thập từ website nhatot.com.
- Phạm vi nghiên cứu:
- Không gian và dữ liệu: Dữ liệu thị trường bất động sản trực tuyến tại Việt Nam được trích xuất từ nhatot.com.
- Thời gian thực hiện: Theo kế hoạch đề cương từ ngày 18/02/2024 đến ngày 10/07/2024 thuộc khóa học 2020 – 2024.
- Công nghệ: Sử dụng nền tảng đám mây Azure (Azure Blob Storage), nền tảng Databricks (Apache Spark, Delta Lake, Unity Catalog, MLflow) và công cụ trực quan hóa Microsoft Power BI.
Cơ sở lý thuyết và phương pháp
Đề tài xây dựng trên nền tảng lý thuyết quản trị dữ liệu hiện đại, mô hình hóa dữ liệu thứ nguyên và quy trình kỹ thuật dữ liệu lớn:
Thiết kế và triển khai hệ thống
Hệ thống Data Lakehouse được thiết kế và triển khai theo quy trình kỹ thuật dữ liệu khép kín, tối ưu hóa cho bài toán phân tích kinh doanh bất động sản.
Kiến trúc tổng thể và công nghệ sử dụng
Hệ thống kết hợp các công nghệ chuyên sâu trong hệ sinh thái dữ liệu lớn:
- Tầng thu thập và lưu trữ tạm thời: Script Python trích xuất dữ liệu từ nhatot.com và đẩy dữ liệu định dạng CSV lên Azure Blob Storage.
- Tầng xử lý dữ liệu và quản trị: Nền tảng Databricks tách biệt giữa Control Plane (Notebooks, Cluster Management, Jobs, Queries) và Compute Plane (các cụm Spark Clusters phân tán). Unity Catalog được cấu hình để quản lý metadata, kiểm soát quyền truy cập và bảo mật tập trung cho các bảng Delta.
- Tầng lưu trữ Lakehouse: Delta Lake lưu trữ dữ liệu phân tầng:
- Lớp Đồng (Bronze Layer): Lưu trữ dữ liệu thô nguyên bản từ Azure Blob Storage.
- Lớp Bạc (Silver Layer): Dữ liệu được làm sạch, loại bỏ trùng lặp, chuẩn hóa định dạng và xử lý giá trị thiếu (missing values).
- Lớp Vàng (Gold Layer): Dữ liệu được tổng hợp, chuyển đổi thành mô hình đa chiều phục vụ trực tiếp cho báo cáo BI và đào tạo mô hình học máy.
- Tầng ứng dụng và khai thác: Kết nối dữ liệu lớp Vàng với Microsoft Power BI để xây dựng dashboard và sử dụng MLflow để theo dõi, quản lý vòng đời huấn luyện các mô hình dự đoán.
Thiết kế mô hình dữ liệu đa chiều (Dimensional Modeling)
Tại lớp Vàng, dữ liệu được chuẩn hóa theo lược đồ dạng sao (Star Schema):
- Bảng Fact: Lưu trữ các chỉ số đo lường định lượng chính của bất động sản (như giá bán, diện tích, các khóa ngoại liên kết).
- Các bảng Dimension: Lưu trữ thông tin ngữ cảnh phục vụ việc phân tích cắt lát (slice-and-dice), bao gồm chiều vị trí địa lý/khu vực, chiều thời gian đăng tin, chiều loại hình bất động sản và các chiều thuộc tính đặc điểm chi tiết của nhà đất.
Nội dung chính theo từng chương
Chương 1. Kiến thức nền tảng
Chương này tổng quan về sự phát triển của các kiến trúc dữ liệu qua từng thời kỳ:
- Trình bày định nghĩa, ưu điểm và hạn chế của Data Warehouse truyền thống; cấu trúc 3 tầng và các mô hình xử lý phân tích trực tuyến (ROLAP, MOLAP, HOLAP); phân tích chi tiết kỹ thuật Dimensional Modeling (Star Schema so với mô hình chuẩn 3NF và khối OLAP).
- Trình bày khái niệm, cấu trúc phân tầng và sự liên kết của Data Lake với Big Data cùng dữ liệu phi cấu trúc.
- Phân tích bối cảnh ra đời của Data Lakehouse (từ giai đoạn khởi đầu 2010–2015, phát triển 2016–2020 đến giai đoạn chín muồi từ 2021 đến nay) cùng các mốc lịch sử như sự ra đời của Delta Lake (2016), Snowpark (2017), BigLake (2018), Lake Formation (2019), ADLS (2020).
| Tiêu chí so sánh |
Data Warehouse |
Data Lake |
Data Lakehouse |
| Loại dữ liệu |
Dữ liệu có cấu trúc |
Cấu trúc, bán cấu trúc, phi cấu trúc |
Cấu trúc, bán cấu trúc, phi cấu trúc |
| Mức độ xử lý |
Đã được xử lý, chuẩn hóa |
Thô, chưa xử lý |
Có thể xử lý hoặc chưa xử lý |
| Mục đích sử dụng |
Phân tích dữ liệu, báo cáo |
Lưu trữ dữ liệu, khám phá dữ liệu |
Phân tích dữ liệu, báo cáo, khám phá dữ liệu |
| Khả năng truy vấn |
Nhanh |
Chậm |
Nhanh |
| Khả năng mở rộng |
Thấp |
Cao |
Cao |
| Chi phí |
Cao |
Thấp |
Trung bình |
Chương 2. Giới thiệu về nền tảng Databricks
Chương 2 tập trung trình bày chi tiết về nền tảng dữ liệu đám mây Databricks:
- Cấu trúc hệ thống với sự phân tách giữa Control Plane và Compute Plane; cơ chế quản lý cụm tính toán tự động và giao diện làm việc cộng tác đa ngôn ngữ (Python, SQL, Scala, R) qua Databricks Notebooks.
- Cơ chế vận hành của Apache Spark trên Databricks thông qua Resilient Distributed Datasets (RDD), DataFrames và Directed Acyclic Graph (DAG).
- Cơ chế của định dạng lưu trữ Databricks Delta (Delta Lake): giao dịch ACID, tệp nhật ký giao dịch, tính năng truy vấn phiên bản lịch sử (time travel), tối ưu chỉ mục Z-order và lệnh dọn dẹp VACUUM.
- Quy trình quản lý vòng đời học máy MLOps tích hợp với MLflow: MLflow Tracking (ghi nhận tham số và chỉ số), MLflow Projects (đóng gói mã nguồn), MLflow Models (quản lý phiên bản và tạo endpoint triển khai), MLflow Model Registry (kho quản lý chuyển đổi trạng thái Staging/Production) và Databricks Repositories.
Chương 3. Xây dựng Data Lakehouse
Nội dung chương 3 là phần thực nghiệm triển khai hệ thống:
- Mô tả kiến trúc hệ thống tổng quan từ khâu thu thập web scraping nhatot.com, đẩy lên Azure Blob Storage, xử lý qua đường ống ETL Medallion trên Databricks và quản trị qua Unity Catalog.
- Thiết kế chi tiết các bảng Dimension, bảng Fact và thiết lập quan hệ trong mô hình sao.
- Xây dựng 3 báo cáo dashboard chuyên sâu trên Power BI:
- Bảng báo cáo tổng quan: Thống kê toàn cảnh thị trường bất động sản.
- Bảng báo cáo chi tiết từng khu vực: Phân bố giá và số lượng bất động sản theo vị trí địa lý.
- Bảng báo cáo bổ sung từng loại bất động sản: Phân tích chuyên sâu theo từng phân khúc và loại hình nhà đất.
- Đào tạo và đánh giá các mô hình dự đoán giá bất động sản từ dữ liệu lớp Vàng:
- Mô hình Hồi quy tuyến tính (Linear Regression): Đánh giá mức độ khớp dữ liệu và sai số.
- Mô hình Rừng ngẫu nhiên (Random Forest): Phân tích các đặc trưng quan trọng và dự đoán giá trị thực tế.
- Mô hình Mạng Nơ-ron (Neuron network): Khảo sát sự biến đổi sai số tuyệt đối trung bình (MAE) khi huấn luyện với kích thước lô
batch_size = 8, áp dụng kỹ thuật Dropout để kiểm soát hiện tượng quá khớp (overfitting).
Kết quả và đóng góp
Đồ án đã triển khai thành công hệ thống dữ liệu hoàn chỉnh, đạt được các kết quả cụ thể:
Hạn chế và hướng nghiên cứu tiếp
Dựa trên nội dung và phạm vi nghiên cứu được trình bày trong văn bản:
- Hạn chế: Nguồn dữ liệu thực nghiệm mới chỉ tập trung trích xuất từ một trang thông tin trực tuyến (nhatot.com) dưới định dạng tệp CSV; các đánh giá học máy dừng lại ở mức thử nghiệm các mô hình cơ bản và tinh chỉnh một số siêu tham số nhất định.
- Hướng phát triển tiếp:
- Mở rộng thu thập dữ liệu từ nhiều nguồn nền tảng bất động sản và các báo cáo thị trường vĩ mô khác nhằm tăng tính toàn diện.
- Phát triển và hoàn thiện các giải pháp xử lý dữ liệu thời gian thực (real-time streaming) với Apache Kafka.
- Thử nghiệm các thuật toán học máy nâng cao và xây dựng các đường ống tự động triển khai mô hình vào môi trường vận hành thực tế (Production).
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích cho:
- Sinh viên và học viên chuyên ngành Kỹ thuật Dữ liệu, Khoa học Dữ liệu và Công nghệ Thông tin: Tham khảo phương pháp xây dựng đường ống ETL phân tầng trên Apache Spark, cách cấu hình và sử dụng nền tảng Databricks, Delta Lake và quản trị vòng đời học máy với MLflow.
- Kỹ sư dữ liệu và Chuyên viên BI (Data Engineers / BI Developers): Tham khảo kiến trúc tích hợp giữa lưu trữ đám mây Azure Blob Storage, Databricks Delta Lake và Microsoft Power BI, cùng thiết kế mô hình dữ liệu đa chiều dạng sao (Star Schema) cho dữ liệu kinh doanh bất động sản.
Câu hỏi thường gặp
1. Hệ thống Data Lakehouse trong đồ án sử dụng nguồn dữ liệu nào và được lưu trữ tạm thời ở đâu trước khi đưa vào Databricks?
Dữ liệu được thu thập tự động từ trang web bất động sản nhatot.com bằng ngôn ngữ Python, sau đó được lưu trữ dưới định dạng tệp CSV trên dịch vụ lưu trữ đám mây Azure Blob Storage.
2. Các lớp lưu trữ dữ liệu trong kiến trúc Medallion của hệ thống gồm những tầng nào?
Hệ thống sử dụng công nghệ Delta Lake trên Databricks để phân chia dữ liệu thành 3 tầng: Lớp Đồng (Bronze) lưu trữ dữ liệu thô, Lớp Bạc (Silver) lưu trữ dữ liệu đã được làm sạch và chuẩn hóa, và Lớp Vàng (Gold) lưu trữ dữ liệu đã mô hình hóa đa chiều phục vụ báo cáo BI và học máy.
3. Công cụ nào được sử dụng để quản lý siêu dữ liệu (Metadata) và quản lý vòng đời mô hình học máy trong hệ thống?
Hệ thống sử dụng Unity Catalog để quản lý Metadata cùng các bảng Delta, và sử dụng nền tảng MLflow (gồm MLflow Tracking, MLflow Projects, MLflow Models, MLflow Model Registry) để quản lý vòng đời các mô hình học máy.
4. Những mô hình học máy nào đã được nhóm tác giả huấn luyện và đánh giá để dự đoán dữ liệu bất động sản?
Nhóm tác giả đã đào tạo và đánh giá 3 mô hình: Mô hình Hồi quy tuyến tính (Linear Regression), Mô hình Rừng ngẫu nhiên (Random Forest) và Mô hình Mạng nơ-ron (Neuron network - có khảo sát với batch_size = 8 và kỹ thuật dropout).
5. Hệ thống xây dựng các bảng báo cáo Power BI nào để phục vụ nghiệp vụ Business Intelligence?
Hệ thống triển khai 3 bảng báo cáo chính: Bảng báo cáo tổng quan về bất động sản, Bảng báo cáo chi tiết về bất động sản theo từng khu vực, và Bảng báo cáo bổ sung về bất động sản theo từng loại hình.
Kết luận
Đồ án tốt nghiệp của sinh viên Vũ Trung Kiên và Mai Thành Trung đã nghiên cứu và triển khai thành công mô hình Data Lakehouse trên nền tảng Databricks kết hợp Delta Lake và Azure Blob Storage cho dữ liệu bất động sản từ nhatot.com. Hệ thống giải quyết hiệu quả các yêu cầu về lưu trữ phân tầng, chuẩn hóa mô hình dữ liệu đa chiều dạng sao phục vụ các báo cáo Business Intelligence trên Microsoft Power BI và quản lý quy trình đào tạo học máy với MLflow. Công trình thể hiện quy trình kỹ thuật dữ liệu hoàn chỉnh, có giá trị ứng dụng thực tiễn cao cho các bài toán quản trị và phân tích dữ liệu doanh nghiệp.