Tổng quan nghiên cứu

Theo báo cáo của IDC Group, ngành công nghệ thông tin đóng góp khoảng 1,16 nghìn tỷ USD vào GDP khu vực châu Á - Thái Bình Dương với tỷ lệ chuyển đổi số đạt trên 84% tại các tổ chức và doanh nghiệp. Trong lĩnh vực viễn thông tại Việt Nam, quy mô dữ liệu phát sinh hàng tháng từ các bản ghi chi tiết cuộc gọi, tin nhắn và truy cập Internet (Call Detail Record - CDR) đang gia tăng với tốc độ chóng mặt, dao động từ 2,5 TB đến 3,0 TB mỗi tháng tại mạng Viettel (phục vụ hơn 50 triệu thuê bao) và từ 1,5 TB đến 2,0 TB mỗi tháng tại mạng VinaPhone. Tốc độ tăng trưởng dữ liệu trung bình hàng năm đạt từ 20% đến 30%, tạo áp lực khổng lồ lên hạ tầng công nghệ thông tin hiện hữu.

Hệ thống tính cước Viettel Billing được xây dựng từ năm 2006 đến nay đã bộc lộ nhiều điểm nghẽn nghiêm trọng khi quy mô mạng lưới mở rộng từ 5 tổng đài ban đầu lên tới 30 tổng đài vào năm 2019, cùng với 15 máy chủ Billing Gateway tiếp nhận lưu lượng trên 100 GB mỗi ngày. Theo quy định chỉ số đo lường hiệu suất (KPI) của Tập đoàn Viettel và Bộ Thông tin và Truyền thông, dữ liệu cuộc gọi của khách hàng phải được xử lý và hiển thị chậm nhất là 45 phút để phục vụ công tác chăm sóc khách hàng. Tuy nhiên, khi xảy ra sự cố kỹ thuật kéo dài 1 giờ, hệ thống cũ phải mất tới 2 giờ để giải tỏa khối lượng dữ liệu tồn đọng.

Mục tiêu cụ thể của luận văn là nghiên cứu, thiết kế và đánh giá thực nghiệm giải pháp ứng dụng công nghệ mới kết hợp giữa Trục tích hợp dịch vụ doanh nghiệp Mulesoft ESB, hàng đợi thông điệp phân tán Apache Kafka và cơ sở dữ liệu trên bộ nhớ trong MemSQL. Đề tài hướng đến việc tăng tốc độ import dữ liệu CDR lên từ 1,5 đến 3,5 lần so với công nghệ cũ, bảo đảm đáp ứng 100% yêu cầu KPI 45 phút và phục vụ hiệu quả chiến lược chuyển mạng giữ số.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu được xây dựng dựa trên nền tảng của 4 khung lý thuyết và mô hình công nghệ hiện đại trong xử lý dữ liệu lớn:

  1. Lý thuyết Trục tích hợp dịch vụ doanh nghiệp (Enterprise Service Bus - ESB): Ứng dụng giải pháp Mulesoft Anypoint Platform (đạt điểm đánh giá năng lực sản phẩm 4,3/5 theo bảng xếp hạng của Gartner) để thực hiện định tuyến, chuyển đổi dữ liệu và quản lý giao dịch phân tán an toàn với các giao thức OAuth2, SAML và LDAP.
  2. Mô hình truyền thông điệp phân tán (Distributed Message Queue): Nền tảng Apache Kafka phiên bản 0.10 cung cấp cơ chế lưu đệm trên bộ nhớ trong với thông lượng đọc ghi đạt hàng trăm megabyte mỗi giây, sử dụng cơ chế định danh chỉ số offset và phân vùng dữ liệu để mở rộng tuyến tính mà không phát sinh thời gian chết.
  3. Cơ sở dữ liệu trên bộ nhớ trong (In-Memory Database - IMDB): Công nghệ MemSQL phiên bản 6.0 (đạt điểm đánh giá tổng thể 4,1/5 theo Gartner) tối ưu hóa tốc độ ghi nhờ khả năng lưu trữ bảng trên RAM, biên dịch truy vấn SQL (Compiled Query), hỗ trợ dữ liệu JSON trực tiếp và kết nối luồng nạp dữ liệu thời gian thực qua Pipeline.
  4. Lý thuyết xử lý dữ liệu lớn phân tán: Khảo sát đối sánh kiến trúc mã nguồn mở của Hortonworks gồm HDFS, YARN, MapReduce, HBase và Apache Spark để lựa chọn mô hình lai tối ưu giữa chi phí bản quyền và nguồn lực triển khai.

Phương pháp nghiên cứu

Nguồn dữ liệu thực nghiệm được thu thập trực tiếp từ 30 tổng đài viễn thông thực tế và chia thành 3 nhóm dung lượng đại diện: 12 GB (53.654.298 bản ghi trong 9.965 tệp), 43 GB (198.761.155 bản ghi trong 48.546 tệp) và 95 GB (433.693.663 bản ghi trong 77.907 tệp).

Cỡ mẫu nghiên cứu được xác định theo phương pháp thiết kế thực nghiệm thống kê khoa học. Ban đầu, tác giả thực hiện chạy thử nghiệm 10 mẫu để xác định phương sai (hệ thống cũ đạt phương sai 1,6; hệ thống mới đạt phương sai 1,0). Với lực kiểm định Power = 0,8 (80%), khoảng tin cậy 95% (mức ý nghĩa alpha = 0,05) và sai số cho phép trong vòng 2 phút, số lượng mẫu tối đa cần thiết được tính toán trong môi trường R là 17 mẫu cho mỗi mức dung lượng. Tổng cỡ mẫu thực nghiệm trên cả hai hệ thống là 102 mẫu (51 mẫu cho hệ thống cũ và 51 mẫu cho hệ thống mới).

Quá trình thực nghiệm được tiến hành song song trên 2 máy chủ HP đồng nhất (cấu hình 48 vCPU Intel Xeon E5-2650 1200 MHz, 256 GB RAM DDR4 2400 MHz, 6 ổ cứng 300 GB chạy hệ điều hành Linux 7). Một shell script tự động thu thập thông số tải phần cứng (CPU, RAM, lưu lượng đọc ghi I/O) định kỳ 5 giây một lần. Toàn bộ dữ liệu sau đó được xử lý, phân tích hồi quy tuyến tính và kiểm định ý nghĩa thống kê bằng ngôn ngữ R trong RStudio.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Kết quả thực nghiệm trên 102 mẫu dữ liệu đã chỉ ra 3 phát hiện mang tính đột phá về mặt hiệu năng:

  1. Rút ngắn thời gian import dữ liệu vượt trội ở tất cả các mức tải:
  • Với tập dữ liệu 12 GB: Thời gian nạp dữ liệu giảm từ 35 phút ở hệ thống cũ xuống còn 14 phút ở hệ thống mới (tốc độ tăng 2,5 lần, tiết kiệm 60,0% thời gian).
  • Với tập dữ liệu 43 GB: Thời gian giảm từ 124 phút xuống còn 43 phút (tốc độ tăng 2,88 lần, tiết kiệm 65,3% thời gian).
  • Với tập dữ liệu 95 GB: Thời gian import giảm ngoạn mục từ 299 phút (xấp xỉ 5 giờ) xuống chỉ còn 84 phút (khoảng 1,4 giờ), đạt hiệu suất cao gấp 3,56 lần (tiết kiệm tới 71,9% thời gian xử lý).
  1. Khả năng mở rộng tuyến tính vượt bậc: Phương trình hồi quy tuyến tính thiết lập mối quan hệ giữa dung lượng dữ liệu và thời gian thực hiện cho thấy:
  • Hệ thống cũ: Thời gian = -7,5 + 3,23 x Dung lượng
  • Hệ thống mới: Thời gian = 10,2 + 0,81 x Dung lượng Điều này chứng minh rằng khi dung lượng dữ liệu tăng thêm 1 GB, hệ thống cũ cần thêm tới 3,23 phút xử lý, trong khi hệ thống mới chỉ mất thêm 0,81 phút (tốc độ gia tăng thời gian của công nghệ mới thấp hơn gần 4 lần).
  1. Mức độ tương thích và ý nghĩa thống kê hoàn hảo: Mô hình hồi quy đạt hệ số xác định R-squared hiệu chỉnh lên tới 99,65%, giải thích gần như tuyệt đối sự biến thiên thời gian thực thi giữa hai hệ thống. Giá trị kiểm định p-value đạt mức 2,2e-16 (nhỏ hơn rất nhiều so với ngưỡng 0,05), khẳng định kết quả thực nghiệm hoàn toàn có ý nghĩa khoa học vững chắc.

Thảo luận kết quả

Hiệu năng vượt bậc của giải pháp mới bắt nguồn từ việc loại bỏ hoàn toàn hiện tượng nghẽn cổ chai tại tầng đọc ghi ổ cứng (Disk I/O). Trong hệ thống cũ, ứng dụng Java đọc tuần tự từng tệp CDR và thực hiện insert hàng loạt vào Oracle Database 11g, dẫn đến việc hàng đợi I/O trên tủ đĩa SAN bị quá tải khi dung lượng vượt mốc 40 GB. Ngược lại, hệ thống mới kết hợp luồng xử lý của Mulesoft đẩy dữ liệu trực tiếp vào bộ đệm Kafka, sau đó Pipeline của MemSQL nạp thẳng vào bộ nhớ trong (RAM).

Số liệu giám sát tải hệ thống ghi nhận mức sử dụng bộ nhớ cache trên Linux luôn duy trì ổn định ở mức trên 200.000 MB, trong khi mức tải CPU trung bình của cả hai hệ thống chỉ dao động từ 0,14% đến 2,49%. Điều này làm rõ một đặc trưng quan trọng: bài toán import cước viễn thông không tiêu tốn năng lực tính toán của CPU mà phụ thuộc sống còn vào băng thông bộ nhớ và tốc độ xử lý I/O.

Trên biểu đồ phân tán (Scatterplot), khi dữ liệu tăng gấp 8 lần (từ 12 GB lên 95 GB), thời gian chạy của hệ thống cũ tăng gần 9 lần (từ 35 phút lên 299 phút), trong khi hệ thống mới chỉ tăng khoảng 5 lần (từ 14 phút lên 84 phút). Sự phân kỳ ngày càng rõ nét này chứng minh kiến trúc In-Memory Database kết hợp Message Queue là giải pháp tối ưu cho bài toán dữ liệu lớn thời gian thực.

Đề xuất và khuyến nghị

Nhằm ứng dụng hiệu quả kết quả nghiên cứu vào thực tiễn sản xuất kinh doanh, tác giả đề xuất 4 nhóm giải pháp chiến lược:

  1. Triển khai thí điểm hạ tầng chuyển đổi dữ liệu thời gian thực trong thời gian từ 3 đến 6 tháng:
  • Chủ thể thực hiện: Khối Công nghệ Thông tin và Trung tâm Quản lý Vận hành Mạng lưới Viettel.
  • Hành động: Thiết lập cụm phân tán Mulesoft Anypoint Platform và Apache Kafka trên tối thiểu 3 node máy chủ để thay thế dần các tiến trình nạp dữ liệu thủ công tại 15 máy chủ Billing Gateway, hướng tới mục tiêu giảm 50% độ trễ truyền tải trung gian.
  1. Di chuyển cơ sở dữ liệu cước nóng sang nền tảng MemSQL trong lộ trình 6 đến 12 tháng:
  • Chủ thể thực hiện: Ban Quản trị Cơ sở dữ liệu và Đội ngũ Kiến trúc sư Hệ thống.
  • Hành động: Phân tầng dữ liệu bằng cách lưu trữ toàn bộ dữ liệu cước phát sinh trong vòng 30 đến 45 ngày trên MemSQL để bảo đảm tốc độ truy xuất cước nóng dưới 3 giây cho hơn 50 triệu khách hàng, đồng thời chuyển dữ liệu lịch sử trên 60 ngày vào kho lưu trữ thứ cấp để tối ưu chi phí phần cứng.
  1. Chuẩn hóa quy trình xử lý sự cố và tự động hóa phục hồi cước với mục tiêu dưới 45 phút:
  • Chủ thể thực hiện: Phòng Khai thác Ứng dụng Tính cước.
  • Hành động: Cấu hình cơ chế tự động bù tải (Auto-scaling) trên cụm Kafka và MemSQL Pipeline khi phát sinh sự cố mạng kéo dài 1 giờ, bảo đảm toàn bộ dữ liệu tồn đọng được giải tỏa hoàn toàn trong vòng 45 phút, đáp ứng 100% quy định KPI của Bộ Thông tin và Truyền thông.
  1. Đào tạo nâng cao năng lực làm chủ công nghệ dữ liệu lớn và tối ưu chi phí bản quyền trong thời hạn 12 tháng:
  • Chủ thể thực hiện: Trung tâm Đào tạo Tập đoàn và Phòng Quản lý Đầu tư Mua sắm.
  • Hành động: Tổ chức các khóa đào tạo chuyên sâu về quản trị Kafka, MemSQL và Mulesoft cho 100% kỹ sư vận hành; đồng thời đàm phán gói bản quyền doanh nghiệp linh hoạt nhằm tiết kiệm từ 15% đến 20% tổng chi phí đầu tư so với phương án mở rộng phần cứng truyền thống.

Đối tượng nên tham khảo luận văn

Công trình nghiên cứu mang lại giá trị thực tiễn và học thuật cao cho 4 nhóm đối tượng:

  1. Giám đốc Công nghệ (CTO) và Kiến trúc sư Giải pháp Doanh nghiệp Viễn thông: Nắm bắt mô hình kiến trúc tích hợp hiện đại, các chỉ số đánh giá so sánh chi tiết theo chuẩn Gartner giữa các nền tảng hàng đầu và cơ sở khoa học để phê duyệt các dự án nâng cấp hạ tầng tính cước quy mô từ 50 triệu đến 100 triệu thuê bao.
  2. Kỹ sư Dữ liệu (Data Engineers) và Chuyên viên Quản trị Hệ thống Tính cước: Tiếp cận toàn bộ sơ đồ thiết kế luồng ETL, phương thức cấu hình hàng đợi Kafka, kỹ thuật nạp dữ liệu qua MemSQL Pipeline và kịch bản shell script tự động đo lường tải phần cứng theo chu kỳ 5 giây.
  3. Giảng viên, Nghiên cứu sinh và Học viên Cao học chuyên ngành Hệ thống Thông tin: Tham khảo phương pháp luận thiết kế thực nghiệm chặt chẽ, công thức tính toán cỡ mẫu 102 lần chạy với lực kiểm định thống kê và mã nguồn phân tích hồi quy tuyến tính hoàn chỉnh trong ngôn ngữ R.
  4. Cán bộ Quản lý Chất lượng Dịch vụ và Chăm sóc Khách hàng: Sử dụng các số liệu thực nghiệm để xây dựng cam kết chất lượng dịch vụ (SLA), kiểm soát chỉ số KPI tra cứu cước 45 phút và bảo đảm tiến độ khóa sổ, phát hành hóa đơn cước vào ngày 2 hàng tháng.

Câu hỏi thường gặp

  1. Nguyên nhân chính khiến hệ thống tính cước truyền thống gặp tình trạng quá tải khi nạp dữ liệu là gì? Hệ thống cũ vận hành từ năm 2006 sử dụng chương trình Java đọc tệp và nạp tuần tự vào Oracle 11g. Khi dung lượng dữ liệu hàng tháng tăng vượt mốc 2 TB với hơn 50 triệu thuê bao, cơ chế ghi trực tiếp xuống đĩa cứng gây tắc nghẽn I/O nghiêm trọng, khiến thời gian xử lý kéo dài tới 299 phút cho 95 GB dữ liệu.

  2. Cơ chế nào giúp MemSQL đạt tốc độ nạp dữ liệu vượt trội hơn so với Oracle Database? MemSQL là hệ quản trị cơ sở dữ liệu trên bộ nhớ trong (IMDB), cho phép lưu trữ và xử lý trực tiếp trên RAM. Ngoài ra, tính năng biên dịch truy vấn (Compiled Query) cùng đường ống dẫn dữ liệu Pipeline tích hợp sẵn với Kafka giúp loại bỏ độ trễ ghi đĩa, tăng tốc độ nạp dữ liệu nhanh gấp 3,56 lần so với Oracle.

  3. Cỡ mẫu 102 lần chạy thực nghiệm trong luận văn được tính toán dựa trên căn cứ khoa học nào? Tác giả tiến hành chạy thử 10 mẫu để xác định phương sai của hệ thống cũ là 1,6 và hệ thống mới là 1,0. Áp dụng công thức thống kê trong R với lực kiểm định Power = 0,8, độ tin cậy 95% và sai số cho phép 2 phút, cỡ mẫu chuẩn xác được xác định là 17 lần chạy cho mỗi mức dung lượng, tổng cộng 102 mẫu trên cả hai hệ thống.

  4. Mô hình kết hợp Mulesoft và MemSQL có làm phát sinh chi phí bản quyền quá lớn cho doanh nghiệp không? Mặc dù Mulesoft và MemSQL là các phần mềm thương mại có tính phí, nhưng mô hình lai giúp tối ưu hóa đáng kể tài nguyên máy chủ và giảm thiểu thời gian phát triển so với mã nguồn mở thuần túy. Hiệu năng tăng từ 2,5 đến 3,56 lần giúp doanh nghiệp tiết kiệm hàng chục máy chủ mở rộng và bảo đảm tuân thủ KPI dịch vụ.

  5. Hệ thống mới xử lý dữ liệu hoàn toàn trên RAM thì có nguy cơ mất dữ liệu khi gặp sự cố mất điện không? Độ an toàn dữ liệu được bảo đảm tuyệt đối nhờ cơ chế phân vùng sao chép (Replication) của Kafka và tính năng tự động lưu ảnh chụp (snapshot) định kỳ xuống ổ cứng của MemSQL. Khi hệ thống khởi động lại, dữ liệu được phục hồi nguyên vẹn từ bộ nhớ đĩa nén mà không bị thất thoát bất kỳ bản ghi nào.

Kết luận

  • Luận văn đã chứng minh thực nghiệm thành công giải pháp công nghệ mới giúp rút ngắn thời gian import dữ liệu CDR từ 2,5 đến 3,56 lần trên các tập dữ liệu từ 12 GB đến 95 GB.
  • Xây dựng mô hình hồi quy tuyến tính với độ chính xác R-squared đạt 99,65% và mức ý nghĩa thống kê p-value = 2,2e-16, khẳng định tính ưu việt vượt trội của kiến trúc mới khi quy mô dữ liệu mở rộng.
  • Giải quyết triệt để bài toán nghẽn cổ chai KPI 45 phút của Bộ Thông tin và Truyền thông, bảo đảm hệ thống phục hồi nạp cước hoàn tất ngay cả khi xảy ra sự cố kéo dài 1 giờ.
  • Chuẩn hóa quy trình thiết kế thực nghiệm khoa học với cỡ mẫu 102 lần chạy, cung cấp tài liệu tham khảo có giá trị cao cho công tác nghiên cứu và triển khai Big Data trong ngành viễn thông.
  • Đề xuất lộ trình 4 bước chuyển đổi khả thi trong giai đoạn 2020 - 2025 kết hợp hài hòa giữa Mulesoft ESB, Apache Kafka và MemSQL nhằm tối ưu giữa hiệu năng vận hành và chi phí đầu tư.

Đóng góp cốt lõi của công trình là luận chứng vững chắc về việc chuyển đổi từ kiến trúc cơ sở dữ liệu quan hệ truyền thống sang cơ sở dữ liệu trên bộ nhớ trong và hàng đợi thông điệp phân tán là xu thế tất yếu cho mọi nhà mạng viễn thông. Hãy nghiên cứu và áp dụng ngay các giải pháp kiến trúc trong luận văn để nâng tầm hạ tầng dữ liệu và bứt phá hiệu năng vận hành cho doanh nghiệp của bạn!