Independent writing2026
Vista Verde Community Website
Theme
← Back to the journal

Field notes

Hello Test

Xin chào mọi người, Mình là Khôi Lê hiện tại đang đảm nhiệm vai trò Data Technical Lead ở công ty HMS. Rất hân hạnh được Google mời để chia sẻ với mọi người về hành trình VinHMS nói chung và Data Team ở HMS nói riêng trong việc xây dựng và cải tiến hệ thống Data Platform mới cho VinHMS. [Slide VINHMS Introduction] Trước hết, cho phép mình khái quát một chút về công ty VinHMS là một công ty Sản Xuất Software trực thuộc tập đoàn Vingroup. VinHMS khởi đầu là một công ty chuyên về phát triển hệ thống quản lý khách sạn, khởi đầu hơn 3 năm trước với mục tiêu tạo ra một sản phẩm quản lý Khách Sạn hoàn toàn trên Đám Mây có tên là CiHMS. Hiện tại hệ thống CiHMS đã được sử dụng cho 35 khách sạn trải dài trên 15 tỉnh thành với hơn 14 ngàn phòng. [Slide CIHMS Main Architecture] Nói tiếp về kiến trúc tổng thể của hệ thống CiHMS, toàn bộ hệ thống CiHMS được build trên mô hình microservice với hơn 400 microservices kết nối với nhau. Cho phần FrontEnd giao tiếp với khách hàng, hệ thống có rất nhiều cơ chế giao tiếp như Web App cho nhân viên Khách Sạn, Android App cho các nhân viên cần di chuyển như nhân viên dọn phòng, nhân viên phục vụ, hệ thống FnB Cashier thông qua các POS. Ngoài ra còn có các Android cũng như IOS App cho khách lưu trú. Là một hệ thống Quản Lý Khách Sạn nên thông qua các hoạt động thường ngày hệ thống có rất nhiều loại dữ liệu đơn cử như các thông số Booking của khách, thông tin của khách, các hoạt động hàng ngày của khách sạn, các dữ liệu về hoạt động của khách lưu trú cũng như các transaction trong suốt thời gian khách lưu trú. Với mong muốn thông nhất toàn bộ các data, chúng tôi dựng lên một hệ thống Data Insight Platform gọi tắt là DiP vào khoảng hơn 1 năm trước và tập trung vào giải quyết các vấn đề cốt lõi sau: Tập trung hóa nguồn dữ liệu để có thể tạo ra các dashboard, mô hình cũng như các reports chi tiết cho toàn bộ các hoạt động của khách sạn. Hiện tại chúng tôi có hơn 20 dashboard và hơn 50 các báo cáo khác nhau phục vụ cho tất cả các nhánh từ các bạn receiptionist, quản lý đặt phòng, dọn phòng đến các báo cáo cho tổng giám đốc chuỗi khách sạn Chúng tôi cung cấp các dữ liệu lịch sử cho toàn bộ đội ngũ Business Analysts và Data Analysts để có thể dựa trên đó kiểm tra giá phòng, và dựa trên đó có thể tiên đoán về nhiều vấn đề khác như giá phòng trong tương lai, công suất phòng cũng như nhu cầu trong tương lai [Slide Data Platform Current Architecture] Kiến trúc trước đây của DiP được xây dựng trên mô hình self-develop sử dụng khá nhiều các Opensource Platform như Pyspark trong việc kéo các dữ liệu ở nhiều nguồn rải rác về hệ thống DataLake được chứa trên Postgresql. Ở thời gian đầu, hệ thống hoạt động tốt khi CiHMS bắt đầu đi vào hoạt động nhưng dần dần nó không thể scale kịp với tốc độ triển khai ứng với số lượng khách sạn và số lượng khách. Đó là lý do vì sao khoảng 6 tháng trước chúng tôi tìm đến Google cho một giải pháp tối ưu cũng như sẵn sàng để có thể mở rộng dễ dàng. Và hiện tại chúng tôi đang chọn giải pháp như sau: Sử dụng Google BigQuery cho phần DataLake, DataWarehouse lẫn DataMart. Sử dụng Google DataStream là một dịch vụ rất mới của Google làm vai trò CDC ( Change Data Capture) cho các nguồn dữ liệu vận hành phân tán của hệ thống CIHMS về hệ thống DataLake Sử dụng Google DataFlow cho phần auto Insert - Merge cũng như tiền xử lý data như các công đoạn Dedup và làm sạch dữ liệu Cho phần Transform Data vào DataWarehouse và Datamart chúng tôi chọn sử dụng DBT giúp quản lý cũng như dịch các code DBT thành các câu lệnh BigQuery SQL và chạy trên hệ thống BigQuery Ngoài ra chúng tôi cũng sử dụng dịch vụ Google Composer để định thời các task tạo các report theo nhiều tần suất khác nhau Và cuối cùng chúng tôi sử dụng Google App Engine để có thể deploy nhanh nhất các Model Catalog và Model Document để có thể nhanh chóng chia sẻ kiến thức cho đội ngũ Analyst cũng như các partner [Slide DataPlatform GCP What we achieve] Với mô hình trên sau khi đưa vào deploy trên production và sử dụng hơn một tháng đã đạt được một số kết quả khá đáng kể ví dụ: Giảm đáng kể thời gian sinh report đặc biệt ở một số report rất phức tạp chúng tôi có thể giảm từ 10 phút xuống còn chưa đến 30 giây Khắc phục khá nhiều các vấn đề về scaling, trước đây khi thêm vào các nguồn dữ liệu mới hệ thống luôn gặp các vấn đề về timing và scale. Với hệ thống mới chúng tôi đã thêm vào khá nhiều các nguồn dữ liệu khác như hệ thống quản lý SAP, hệ thống quản lý HR mà không gặp bất cứ vấn đề trước đây Code hiện tại được quản lý separate bằng DBT Code trên GIT nên rất rõ ràng và tường minh Dựa trên hệ thống Cung Cấp các Permission cho từng user truy xuất vào Google Bigquery, chúng tôi có thể sử dụng để phân quyền cho nhiều loại đối tượng khác nhau truy xuất vào từng vùng dữ liệu khác. Và cuối cùng, thành quả ấn tượng nhất là chúng tôi có thể tiết kiệm được 50% chi phí so với hệ thống trước đây. [Slide Data Platform GCP What To Do] Với tất cả các thành quả trên, hiện tại chúng tôi đang tiếp tục nghiên cứu để sử dụng thêm các GCP Service khác điển hình có thể kể đến như: Chúng tôi đang xem xét Google Data Studio như là một giải pháp Data Visualizer cho một số dashboard và report mới Cho các Model Tiên Đoán Giá Phòng, chúng tôi đang xem xét sử dụng Google BigQuery ML cho việc này Và cuối cùng, để chuẩn bị cho thời kỳ Hậu Covid, có rất nhiều các quy trình công đoạn trong ngành Hospitality sẽ thay đổi trong đó phần Touchless Communication sẽ được tập trung nhằm giảm thiểu việc tiếp xúc trực tiếp. Chúng tôi đang nghĩ đến các giải pháp làm Virtual Bot hoặc sử dụng Google Home Hub để giao tiếp thông qua giọng nói. Chúng tôi đang nghiên cứu Các service của Google như Google Action Builder hay DialogFlow cho việc này. Thử hình dung một ngày vào phòng khách không cần phải nhấn 0 để gọi tổng đài phục vụ thay vào đó chỉ cần Hey Google đem cho mình cái khăn tắm hay Hey Google mình muốn book xe ra bãi biển. Thật tuyệt vời phải không các bạn?

Xin chào mọi người,

Mình là Khôi Lê hiện tại đang đảm nhiệm vai trò Data Technical Lead ở công ty HMS. Rất hân hạnh được Google mời để chia sẻ với mọi người về hành trình VinHMS nói chung và Data Team ở HMS nói riêng trong việc xây dựng và cải tiến hệ thống Data Platform mới cho VinHMS.

[Slide VINHMS Introduction]

Trước hết, cho phép mình khái quát một chút về công ty VinHMS là một công ty Sản Xuất Software trực thuộc tập đoàn Vingroup. VinHMS khởi đầu là một công ty chuyên về phát triển hệ thống quản lý khách sạn, khởi đầu hơn 3 năm trước với mục tiêu tạo ra một sản phẩm quản lý Khách Sạn hoàn toàn trên Đám Mây có tên là CiHMS. Hiện tại hệ thống CiHMS đã được sử dụng cho 35 khách sạn trải dài trên 15 tỉnh thành với hơn 14 ngàn phòng.

[Slide CIHMS Main Architecture]

Nói tiếp về kiến trúc tổng thể của hệ thống CiHMS, toàn bộ hệ thống CiHMS được build trên mô hình microservice với hơn 400 microservices kết nối với nhau. Cho phần FrontEnd giao tiếp với khách hàng, hệ thống có rất nhiều cơ chế giao tiếp như Web App cho nhân viên Khách Sạn, Android App cho các nhân viên cần di chuyển như nhân viên dọn phòng, nhân viên phục vụ, hệ thống FnB Cashier thông qua các POS. Ngoài ra còn có các Android cũng như IOS App cho khách lưu trú.

Là một hệ thống Quản Lý Khách Sạn nên thông qua các hoạt động thường ngày hệ thống có rất nhiều loại dữ liệu đơn cử như các thông số Booking của khách, thông tin của khách, các hoạt động hàng ngày của khách sạn, các dữ liệu về hoạt động của khách lưu trú cũng như các transaction trong suốt thời gian khách lưu trú.

Với mong muốn thông nhất toàn bộ các data, chúng tôi dựng lên một hệ thống Data Insight Platform gọi tắt là DiP vào khoảng hơn 1 năm trước và tập trung vào giải quyết các vấn đề cốt lõi sau:

  1. Tập trung hóa nguồn dữ liệu để có thể tạo ra các dashboard, mô hình cũng như các reports chi tiết cho toàn bộ các hoạt động của khách sạn. Hiện tại chúng tôi có hơn 20 dashboard và hơn 50 các báo cáo khác nhau phục vụ cho tất cả các nhánh từ các bạn receiptionist, quản lý đặt phòng, dọn phòng đến các báo cáo cho tổng giám đốc chuỗi khách sạn

  2. Chúng tôi cung cấp các dữ liệu lịch sử cho toàn bộ đội ngũ Business Analysts và Data Analysts để có thể dựa trên đó kiểm tra giá phòng, và dựa trên đó có thể tiên đoán về nhiều vấn đề khác như giá phòng trong tương lai, công suất phòng cũng như nhu cầu trong tương lai

[Slide Data Platform Current Architecture]

Kiến trúc trước đây của DiP được xây dựng trên mô hình self-develop sử dụng khá nhiều các Opensource Platform như Pyspark trong việc kéo các dữ liệu ở nhiều nguồn rải rác về hệ thống DataLake được chứa trên Postgresql. Ở thời gian đầu, hệ thống hoạt động tốt khi CiHMS bắt đầu đi vào hoạt động nhưng dần dần nó không thể scale kịp với tốc độ triển khai ứng với số lượng khách sạn và số lượng khách.

Đó là lý do vì sao khoảng 6 tháng trước chúng tôi tìm đến Google cho một giải pháp tối ưu cũng như sẵn sàng để có thể mở rộng dễ dàng. Và hiện tại chúng tôi đang chọn giải pháp như sau:

  1. Sử dụng Google BigQuery cho phần DataLake, DataWarehouse lẫn DataMart.

  2. Sử dụng Google DataStream là một dịch vụ rất mới của Google làm vai trò CDC ( Change Data Capture) cho các nguồn dữ liệu vận hành phân tán của hệ thống CIHMS về hệ thống DataLake

  3. Sử dụng Google DataFlow cho phần auto Insert - Merge cũng như tiền xử lý data như các công đoạn Dedup và làm sạch dữ liệu

  4. Cho phần Transform Data vào DataWarehouse và Datamart chúng tôi chọn sử dụng DBT giúp quản lý cũng như dịch các code DBT thành các câu lệnh BigQuery SQL và chạy trên hệ thống BigQuery

  5. Ngoài ra chúng tôi cũng sử dụng dịch vụ Google Composer để định thời các task tạo các report theo nhiều tần suất khác nhau

  6. Và cuối cùng chúng tôi sử dụng Google App Engine để có thể deploy nhanh nhất các Model Catalog và Model Document để có thể nhanh chóng chia sẻ kiến thức cho đội ngũ Analyst cũng như các partner

[Slide DataPlatform GCP What we achieve]

Với mô hình trên sau khi đưa vào deploy trên production và sử dụng hơn một tháng đã đạt được một số kết quả khá đáng kể ví dụ:

  • Giảm đáng kể thời gian sinh report đặc biệt ở một số report rất phức tạp chúng tôi có thể giảm từ 10 phút xuống còn chưa đến 30 giây

  • Khắc phục khá nhiều các vấn đề về scaling, trước đây khi thêm vào các nguồn dữ liệu mới hệ thống luôn gặp các vấn đề về timing và scale. Với hệ thống mới chúng tôi đã thêm vào khá nhiều các nguồn dữ liệu khác như hệ thống quản lý SAP, hệ thống quản lý HR mà không gặp bất cứ vấn đề trước đây

  • Code hiện tại được quản lý separate bằng DBT Code trên GIT nên rất rõ ràng và tường minh

  • Dựa trên hệ thống Cung Cấp các Permission cho từng user truy xuất vào Google Bigquery, chúng tôi có thể sử dụng để phân quyền cho nhiều loại đối tượng khác nhau truy xuất vào từng vùng dữ liệu khác.

Và cuối cùng, thành quả ấn tượng nhất là chúng tôi có thể tiết kiệm được 50% chi phí so với hệ thống trước đây.

[Slide Data Platform GCP What To Do]

Với tất cả các thành quả trên, hiện tại chúng tôi đang tiếp tục nghiên cứu để sử dụng thêm các GCP Service khác điển hình có thể kể đến như:

  1. Chúng tôi đang xem xét Google Data Studio như là một giải pháp Data Visualizer cho một số dashboard và report mới

  2. Cho các Model Tiên Đoán Giá Phòng, chúng tôi đang xem xét sử dụng Google BigQuery ML cho việc này

Pasted image 20261020140321.png

Và cuối cùng, để chuẩn bị cho thời kỳ Hậu Covid, có rất nhiều các quy trình công đoạn trong ngành Hospitality sẽ thay đổi trong đó phần Touchless Communication sẽ được tập trung nhằm giảm thiểu việc tiếp xúc trực tiếp. Chúng tôi đang nghĩ đến các giải pháp làm Virtual Bot hoặc sử dụng Google Home Hub để giao tiếp thông qua giọng nói. Chúng tôi đang nghiên cứu Các service của Google như Google Action Builder hay DialogFlow cho việc này. Thử hình dung một ngày vào phòng khách không cần phải nhấn 0 để gọi tổng đài phục vụ thay vào đó chỉ cần Hey Google đem cho mình cái khăn tắm hay Hey Google mình muốn book xe ra bãi biển.

Pasted image 20261020140337.png

Thật tuyệt vời phải không các bạn?