Logo Zephyrnet

Tìm hiểu sâu về nền tảng dữ liệu của redBus và cách họ sử dụng Amazon QuickSight để tăng tốc hiểu biết về doanh nghiệp

Ngày:

Bài đăng này được đồng tác giả với Girish Kumar Chidananda từ redBus.

Xe buýt màu đỏ là một trong những người dùng AWS sớm nhất ở Ấn Độ và hầu hết các dịch vụ cũng như ứng dụng của họ đều được lưu trữ trên Đám mây AWS. AWS cung cấp cho redBus sự linh hoạt để thay đổi quy mô cơ sở hạ tầng của họ một cách nhanh chóng trong khi vẫn giữ chi phí cực thấp. AWS có một bộ dịch vụ toàn diện để đáp ứng hầu hết các nhu cầu của họ, bao gồm cả việc cung cấp dịch vụ hỗ trợ khách hàng mà redBus có thể đảm bảo.

Trong bài đăng này, chúng tôi chia sẻ kiến ​​trúc nền tảng dữ liệu của redBus và cách các thành phần khác nhau được kết nối để tạo thành đường cao tốc dữ liệu của chúng. Chúng tôi cũng thảo luận về những thách thức mà redBus gặp phải khi xây dựng bảng điều khiển cho các trường hợp sử dụng thông tin kinh doanh (BI) theo thời gian thực của họ và cách họ sử dụng Amazon QuickSight, một dịch vụ phân tích kinh doanh dựa trên đám mây, nhanh chóng, dễ sử dụng, giúp tất cả nhân viên trong redBus dễ dàng xây dựng trực quan hóa và thực hiện phân tích đặc biệt để thu được thông tin chuyên sâu về kinh doanh từ dữ liệu của họ, bất kỳ lúc nào và trên bất kỳ thiết bị nào.

Về redBus

Xe buýt màu đỏ là nền tảng bán vé xe buýt trực tuyến lớn nhất thế giới được xây dựng ở Ấn Độ và phục vụ hơn 36 triệu khách hàng hài lòng trên khắp thế giới. Cùng với dịch vụ bán vé xe buýt theo chiều dọc, redBus cũng điều hành dịch vụ bán vé đường sắt có tên màu đỏRails và một dịch vụ cho thuê xe buýt và xe hơi gọi là rYde. Nó là một phần của tập đoàn GO-MMT, công ty du lịch trực tuyến hàng đầu của Ấn Độ, với danh mục thương hiệu phong phú bao gồm các thương hiệu du lịch trực tuyến nổi bật khác như MakeMyTrip và Goibibo.

Đường cao tốc dữ liệu 1.0 của redBus

redBus phụ thuộc rất nhiều vào việc đưa ra các quyết định dựa trên dữ liệu ở mọi cấp độ, từ theo dõi hành trình của khách du lịch, dự báo nhu cầu trong thời gian lưu lượng truy cập cao, xác định và giải quyết các tắc nghẽn trong quy trình đăng ký của nhà điều hành xe buýt, v.v. Khi hoạt động kinh doanh của redBus bắt đầu phát triển về số lượng thành phố và quốc gia mà họ hoạt động cũng như số lượng nhà điều hành xe buýt và khách du lịch sử dụng dịch vụ ở mỗi thành phố, lượng dữ liệu đến cũng tăng lên. Nhu cầu truy cập và phân tích dữ liệu ở một nơi buộc họ phải xây dựng nền tảng dữ liệu của riêng mình, như thể hiện trong sơ đồ sau.

nền tảng dữ liệu redBus 1.0

Trong các phần sau, chúng ta xem xét từng thành phần chi tiết hơn.

Nguồn nhập dữ liệu

Với nền tảng dữ liệu 1.0, dữ liệu được nhập từ nhiều nguồn khác nhau:

  • Thời gian thực – Luồng dữ liệu thời gian thực từ ứng dụng di động redBus, vi dịch vụ phụ trợ và khi hành khách, nhà điều hành xe buýt hoặc ứng dụng thực hiện bất kỳ hoạt động nào như đặt vé xe buýt, tìm kiếm kho xe buýt, tải lên tài liệu KYC, v.v.
  • Chế độ hàng loạt – Công việc theo lịch trình lấy dữ liệu từ nhiều kho lưu trữ dữ liệu liên tục như Dịch vụ cơ sở dữ liệu quan hệ của Amazon (Amazon RDS), nơi lưu trữ dữ liệu OLTP từ tất cả các ứng dụng của nó, cụm Apache Cassandra, nơi lưu trữ kho xe buýt từ các nhà khai thác khác nhau, Arango DB, nơi lưu trữ biểu đồ nhận dạng người dùng, v.v.

lập danh mục dữ liệu

Dữ liệu thời gian thực được nhập vào các cụm Apache Nifi tự quản lý của họ, một nền tảng dữ liệu nguồn mở được sử dụng để làm sạch, phân tích và lập danh mục dữ liệu với khả năng định tuyến trước khi gửi dữ liệu đến đích.

Lưu trữ và phân tích

redBus sử dụng các dịch vụ sau cho nhu cầu lưu trữ và phân tích của mình:

  • Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3), một dịch vụ lưu trữ đối tượng cung cấp nền tảng cho kho dữ liệu của họ nhờ khả năng mở rộng hầu như không giới hạn và độ bền cao hơn. Luồng dữ liệu thời gian thực từ Apache Druid và dữ liệu từ kho lưu trữ dữ liệu chảy theo các khoảng thời gian đều đặn dựa trên lịch trình.
  • Apache Druid, kho lưu trữ dữ liệu kiểu OLAP (dữ liệu chảy qua trình tải dữ liệu Kafka Druid), tính toán các sự kiện và số liệu dựa trên các thứ nguyên khác nhau trong quá trình tải dữ liệu.
  • Amazon RedShift, một dịch vụ kho dữ liệu đám mây giúp bạn phân tích hàng exabyte dữ liệu và chạy các truy vấn phân tích phức tạp. redBus sử dụng Amazon Redshift để lưu trữ dữ liệu đã xử lý từ Amazon S3 và dữ liệu tổng hợp từ Apache Druid.

Truy vấn và trực quan hóa

Để làm cho redBus theo hướng dữ liệu nhất có thể, họ đảm bảo rằng các kỹ sư SRE, kỹ sư dữ liệu và nhà phân tích kinh doanh của họ có thể truy cập dữ liệu thông qua lớp trực quan hóa. Lớp này có các bảng điều khiển đang được cung cấp bằng Apache SuperSet, một ứng dụng trực quan hóa dữ liệu nguồn mở và amazon Athena, một dịch vụ truy vấn tương tác để phân tích dữ liệu trong Amazon S3 bằng cách sử dụng SQL tiêu chuẩn cho các yêu cầu truy vấn đặc biệt.

Những thách thức

Ban đầu, redBus xử lý dữ liệu được nhập với tốc độ 10 triệu sự kiện mỗi ngày. Theo thời gian, khi hoạt động kinh doanh của nó bắt đầu phát triển, khối lượng dữ liệu (từ gigabyte đến terabyte đến petabyte), lượng dữ liệu nhập mỗi ngày (từ 10 triệu đến 320 triệu sự kiện) cũng như nhu cầu về bảng thông tin kinh doanh thông minh của nó cũng tăng theo. Ngay sau đó, họ bắt đầu đối mặt với những thách thức với khả năng BI của Superset tự quản lý và sự phức tạp trong hoạt động ngày càng tăng.

Khả năng BI hạn chế

redBus gặp phải các giới hạn BI sau:

  • Không thể tạo trực quan hóa từ nhiều nguồn dữ liệu – Superset không cho phép tạo trực quan hóa từ nhiều bảng trong lớp khám phá dữ liệu của nó. Các kỹ sư dữ liệu của redBus phải nối các bảng trước ở cấp nguồn dữ liệu. Để tạo chế độ xem 360 độ cho các bên liên quan trong kinh doanh của redBus, việc duy trì nhiều bảng hỗ trợ lớp trực quan trở nên bất tiện đối với các kỹ sư dữ liệu.
  • Không có bộ lọc chung cho hình ảnh trong bảng điều khiển – Bộ lọc chung hoặc bộ lọc chính trên các hình ảnh trong bảng điều khiển không được hỗ trợ trong Superset. Ví dụ: hãy xem xét có các hình ảnh như Doanh số bán hàng theo khu vực, Doanh thu YTD được thực hiện theo khu vực, Quy trình bán hàng theo khu vực, v.v. trong trang tổng quan và một Khu vực bộ lọc được thêm vào trang tổng quan với các giá trị như EMEA, APAC và Hoa Kỳ. Bộ lọc Vùng sẽ chỉ áp dụng cho một trong các hình ảnh, không áp dụng cho toàn bộ trang tổng quan. Tuy nhiên, người dùng bảng điều khiển dự kiến ​​sẽ lọc trên bảng điều khiển.
  • Không phải là một công cụ thân thiện với người dùng doanh nghiệp – Superset rất tập trung vào nhà phát triển khi nói đến khả năng tùy chỉnh. Ví dụ: nếu nhà phân tích kinh doanh của redBus phải tùy chỉnh tính năng làm mới theo thời gian tự động truy vấn lại từng phần trên bảng điều khiển theo giá trị đặt trước, thì nhà phân tích đó phải cập nhật trường siêu dữ liệu JSON của bảng điều khiển. Do đó, bắt buộc phải có kiến ​​thức về JSON và cú pháp của nó để thực hiện bất kỳ tùy chỉnh nào trên hình ảnh hoặc bảng điều khiển.

Tăng chi phí hoạt động

Mặc dù Superset là mã nguồn mở, nghĩa là không có chi phí cấp phép, nhưng điều đó cũng có nghĩa là sẽ có nhiều nỗ lực hơn trong việc duy trì tất cả các thành phần cần thiết để Superset hoạt động như một công cụ BI cấp doanh nghiệp. redBus đã triển khai và duy trì một máy chủ web (Nginx) phía trước bởi một Cân bằng tải ứng dụng để thực hiện cân bằng tải; một máy chủ cơ sở dữ liệu siêu dữ liệu (MySQL) nơi Superset lưu trữ thông tin nội bộ của nó như người dùng, lát và định nghĩa bảng điều khiển; hàng đợi tác vụ không đồng bộ (Celery) để hỗ trợ các truy vấn dài hạn; một nhà môi giới tin nhắn (RabbitMQ); và một máy chủ bộ nhớ đệm phân tán (Redis) để lưu trữ kết quả, biểu đồ dữ liệu, v.v. Đám mây điện toán đàn hồi Amazon (Amazon EC2). Sơ đồ sau minh họa kiến ​​trúc này.

Triển khai Superset Apache tại redBus

Nhóm DevOps của redBus đã phải thực hiện rất nhiều việc như cung cấp cơ sở hạ tầng, thực hiện sao lưu, thay đổi quy mô các thành phần theo cách thủ công khi cần, nâng cấp từng thành phần, v.v. Nó cũng yêu cầu một nhà phát triển web Python phải có mặt để thực hiện các thay đổi về cấu hình để tất cả các thành phần hoạt động liền mạch với nhau. Tất cả các hoạt động thủ công này đã làm tăng tổng chi phí sở hữu cho redBus.

Hành trình hướng tới QuickSight

redBus bắt đầu khám phá các giải pháp BI chủ yếu xoay quanh một số yêu cầu về bảng điều khiển của nó:

  • Bảng điều khiển BI dành cho các bên liên quan và nhà phân tích kinh doanh, trong đó dữ liệu được lấy từ Amazon S3 và Amazon Redshift.
  • Bảng điều khiển giám sát hiệu suất ứng dụng (APM) theo thời gian thực để giúp các kỹ sư và nhà phát triển SRE của họ xác định nguyên nhân cốt lõi của sự cố trong quá trình triển khai vi dịch vụ để họ có thể khắc phục sự cố trước khi chúng ảnh hưởng đến trải nghiệm của khách hàng. Trong trường hợp này, dữ liệu được lấy từ Druid.

QuickSight phù hợp với hầu hết các yêu cầu về bảng thông tin BI của redBus và ngay lập tức, nhóm nền tảng dữ liệu của họ đã bắt đầu với bằng chứng về khái niệm (POC) cho một vài bảng thông tin phức tạp của họ. Khi kết thúc POC, kéo dài một tháng, nhóm đã chia sẻ những phát hiện của họ.

Đầu tiên, QuickSight có nhiều khả năng BI, bao gồm những khả năng sau:

  • Đó là một giải pháp BI tự phục vụ với các tính năng kéo và thả có thể giúp các nhà phân tích của redBus thoải mái sử dụng nó mà không cần bất kỳ nỗ lực viết mã nào.
  • Các hình ảnh trực quan hóa từ nhiều nguồn dữ liệu trong một bảng điều khiển duy nhất có thể giúp các bên liên quan trong hoạt động kinh doanh của redBus có được cái nhìn 360 độ về doanh số bán hàng, dự báo và thông tin chi tiết trong một ô kính duy nhất.
  • Bộ lọc xếp tầng trên hình ảnh và trên các trang tính trong bảng điều khiển là các tính năng rất cần thiết cho các yêu cầu BI của redBus.
  • QuickSight cung cấp hình ảnh giống như Excel—các bảng có phép tính, bảng tổng hợp có nhóm ô và kiểu dáng hấp dẫn người xem.
  • Công cụ tính toán siêu nhanh, song song, trong bộ nhớ (SPICE) trong QuickSight có thể giúp redBus mở rộng quy mô tới hàng trăm nghìn người dùng, những người có thể đồng thời thực hiện phân tích tương tác nhanh trên nhiều nguồn dữ liệu AWS khác nhau.
  • Thông tin chi tiết và dự báo về ML có sẵn mà không mất thêm chi phí sẽ cho phép nhóm khoa học dữ liệu của redBus tập trung vào các mô hình ML bên cạnh dự báo doanh số bán hàng và các mô hình tương tự.
  • Bảo mật cấp độ hàng (RLS) tích hợp có thể cho phép redBus cấp quyền truy cập đã lọc cho người xem của họ. Ví dụ: redBus có nhiều nhà phân tích kinh doanh quản lý các quốc gia khác nhau. Với RLS, mỗi nhà phân tích kinh doanh chỉ nhìn thấy dữ liệu liên quan đến quốc gia được chỉ định của họ trong một trang tổng quan duy nhất.
  • redBus sử dụng OneLogin làm nhà cung cấp nhận dạng, hỗ trợ Ngôn ngữ đánh dấu khẳng định bảo mật 2.0 (SAML 2.0). Với sự trợ giúp của liên kết danh tính và hỗ trợ đăng nhập một lần từ QuickSight, redBus có thể cung cấp quy trình giới thiệu đơn giản cho người dùng QuickSight của họ.
  • QuickSight cung cấp khả năng thông báo qua email và cảnh báo tích hợp sẵn.

Thứ hai, QuickSight là một dịch vụ BI serverless, được quản lý toàn phần, dựa trên đám mây, được quản lý hoàn toàn từ AWS, với các tính năng sau:

  • Các kỹ sư của redBus không cần phải tập trung vào công việc nặng nhọc là cung cấp, thay đổi quy mô và duy trì giải pháp BI của họ trên các phiên bản EC2.
  • QuickSight cung cấp khả năng tích hợp riêng với các dịch vụ AWS như Amazon Redshift, Amazon S3 và Athena cũng như các khung phổ biến khác như Presto, Snowflake, Teradata, v.v. QuickSight kết nối với hầu hết các nguồn dữ liệu mà redBus đã có ngoại trừ Apache Druid, vì tích hợp riêng với Druid không khả dụng kể từ tháng 2022 năm XNUMX. Để biết danh sách đầy đủ các nguồn dữ liệu được hỗ trợ, hãy xem Nguồn dữ liệu được hỗ trợ.

Cuối cùng

Xem xét tất cả các tính năng phong phú và tổng chi phí sở hữu thấp hơn, redBus đã chọn QuickSight cho các yêu cầu về bảng điều khiển BI của họ. Với QuickSight, các kỹ sư dữ liệu của redBus đã nhanh chóng xây dựng một số bảng điều khiển để cung cấp thông tin chi tiết từ hàng petabyte dữ liệu cho các bên liên quan và nhà phân tích kinh doanh. Đường cao tốc dữ liệu redBus đã phát triển để mang thông tin kinh doanh thông minh đến nhiều đối tượng hơn trong tổ chức của họ, với hiệu suất tốt hơn và thời gian tạo ra giá trị nhanh hơn. Kể từ tháng 2022 năm XNUMX, nó kết hợp QuickSight dành cho người dùng doanh nghiệp và Superset dành cho bảng điều khiển APM thời gian thực (tại thời điểm viết bài này, QuickSight không cung cấp trình kết nối riêng cho Druid), như thể hiện trong sơ đồ sau.

nền tảng dữ liệu redBus 2.0

Bảng điều khiển phát hiện bất thường trong bán hàng

Mặc dù có nhiều bảng điều khiển mà redBus đã triển khai để sản xuất, phát hiện sự bất thường trong bán hàng là một trong những bảng điều khiển thú vị mà redBus đã xây dựng. Nó sử dụng mô hình dự báo doanh số bán hàng độc quyền của redBus, do đó, mô hình này được lấy từ dữ liệu bán hàng lịch sử từ các bảng Amazon Redshift và dữ liệu bán hàng theo thời gian thực từ các bảng Druid, như thể hiện trong hình dưới đây.

Luồng dữ liệu phát hiện bất thường về doanh số bán hàng

Theo các khoảng thời gian đều đặn, các công việc đã lên lịch cung cấp dữ liệu bán hàng lịch sử và thời gian thực cho mô hình dự báo redBus, sau đó dữ liệu dự báo được đưa vào bảng Amazon Redshift. Bảng thông tin phát hiện bất thường về doanh số bán hàng trong QuickSight được cung cấp bởi bảng Amazon Redshift kết quả.

Sau đây là một trong những hình ảnh từ bảng điều khiển phát hiện bất thường trong bán hàng. Nó được xây dựng bằng cách sử dụng biểu đồ đường biểu thị doanh số bán hàng thực tế hàng giờ, doanh số bán hàng dự đoán và ngưỡng cảnh báo cho chuỗi thời gian cho một nhóm kinh doanh cụ thể trong redBus.

Doanh số bán hàng và doanh số dự đoán cho một nhóm cụ thể

Trong hình ảnh này, mỗi thanh biểu thị số lượng bất thường về doanh số bán hàng được kích hoạt tại một thời điểm cụ thể trong chuỗi thời gian.

Các nhà phân tích của redBus có thể đi sâu hơn vào các chi tiết bán hàng và sự bất thường ở cấp độ phút, như thể hiện trong sơ đồ sau. Tính năng truy sâu này đi kèm với QuickSight.

Biểu đồ xem chi tiết - Doanh số bán hàng và Doanh số bán hàng dự đoán cho một nhóm thuần tập cụ thể

Để biết thêm chi tiết về cách thêm chi tiết vào hình ảnh bảng điều khiển QuickSight, hãy xem Thêm chi tiết vào dữ liệu trực quan trong Amazon QuickSight.

Ngoài hình ảnh, nó đã trở thành một trong những bảng điều khiển yêu thích của người xem tại redBus do các tính năng đáng chú ý sau:

  • Vì lọc qua hình ảnh là một tính năng sẵn có trong QuickSight nên bộ lọc dựa trên dấu thời gian được thêm vào bảng điều khiển. Điều này giúp lọc nhiều hình ảnh trong bảng điều khiển chỉ bằng một cú nhấp chuột.
  • Các hành động URL được định cấu hình trên hình ảnh giúp người xem điều hướng đến các ứng dụng nội bộ theo ngữ cảnh.
  • Thông báo qua email được định cấu hình trên KPI và hình ảnh Máy đo giúp người xem nhận được thông báo đúng hạn.

Các bước tiếp theo

Ngoài việc xây dựng bảng điều khiển mới cho nhu cầu bảng điều khiển BI của họ, redBus đang thực hiện các bước tiếp theo sau:

  • Khám phá Phân tích nhúng QuickSight đối với một số yêu cầu ứng dụng của họ để tăng tốc thời gian hiểu biết sâu sắc cho người dùng bằng hình ảnh dữ liệu theo ngữ cảnh, bảng điều khiển tương tác và hơn thế nữa trực tiếp trong ứng dụng
  • Khám phá Tầm Nhìn Nhanh Q, có thể cho phép các bên liên quan trong doanh nghiệp của họ đặt câu hỏi bằng ngôn ngữ tự nhiên và nhận được câu trả lời chính xác với hình ảnh trực quan phù hợp có thể giúp họ hiểu rõ hơn về dữ liệu
  • Xây dựng giải pháp bảng điều khiển thống nhất bằng cách sử dụng QuickSight bao gồm tất cả các nguồn dữ liệu của họ khi tích hợp khả dụng

Kết luận

Trong bài đăng này, chúng tôi đã cho bạn thấy cách redBus xây dựng nền tảng dữ liệu của mình bằng cách sử dụng các dịch vụ AWS và khung Apache khác nhau, những thách thức mà nền tảng đã trải qua (đặc biệt là trong các yêu cầu và thách thức của bảng điều khiển BI khi mở rộng quy mô) và cách họ sử dụng QuickSight và giảm tổng chi phí của quyền sở hữu.

Để biết thêm về kỹ thuật tại redBus, hãy xem bài viết trên blog trung bình. Để tìm hiểu thêm về những gì đang xảy ra trong QuickSight hoặc nếu bạn có bất kỳ câu hỏi nào, hãy liên hệ với Cộng đồng QuickSight, rất tích cực và cung cấp một số tài nguyên.


Về các tác giả


Tác giả: Girish Chidanand
Girish Kumar Chidananda
làm việc với tư cách là Giám đốc kỹ thuật cấp cao - Kỹ thuật dữ liệu tại redBus, nơi anh ấy đã xây dựng các thành phần và ứng dụng kỹ thuật dữ liệu khác nhau cho redBus trong 5 năm qua. Trước khi bắt đầu hành trình của mình trong ngành CNTT, anh ấy đã làm việc với tư cách là kỹ sư hệ thống Cơ khí và Điều khiển trong nhiều tổ chức khác nhau và anh ấy có bằng Thạc sĩ về Kỹ thuật Năng lượng Chất lỏng của Đại học Bath.


Tác giả: Kayalvizhi Kandasamy
Kayalvizhi Kandasamy
làm việc với các công ty bản địa kỹ thuật số để hỗ trợ sự đổi mới của họ. Với tư cách là Kiến trúc sư giải pháp cấp cao (APAC) tại Amazon Web Services, cô sử dụng kinh nghiệm của mình để giúp mọi người biến ý tưởng của họ thành hiện thực, tập trung chủ yếu vào kiến ​​trúc vi dịch vụ và giải pháp gốc trên đám mây sử dụng dịch vụ AWS. Ngoài công việc, cô ấy thích chơi cờ vua và là một kỳ thủ cờ vua được FIDE xếp hạng. Cô cũng huấn luyện các con gái của mình nghệ thuật chơi cờ và chuẩn bị cho chúng tham gia các giải đấu cờ vua khác nhau.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img