Bỏ qua để đến nội dung

Apache Superset — Từ Trusted Data đến Business Insight trong DataValue

Trong các bài trước, DataValue đã xây một chuỗi rất rõ: Airbyte đưa dữ liệu vào, ClickHouse lưu trữ và xử lý dữ liệu phân tích, dbt chuyển dữ liệu thô thành Trusted Business Data Model, Cube xây dựng Business Semantics và Metrics thống nhất. Đến đây DataValue đã có thể thu thập → xử lý → chuẩn hóa → hiểu dữ liệu. Nhưng giữa Data Platform và Business Action vẫn còn một lớp vô cùng quan trọng: con người cần nhìn thấy, khám phá và hiểu dữ liệu.

Ban lãnh đạo muốn Dashboard. Sales Manager muốn phân tích doanh thu. Finance muốn theo dõi Revenue và Margin. Supply Chain muốn nhìn Inventory. Data Analyst muốn drill-down để tìm nguyên nhân. Đó chính là vai trò của Apache Superset trong DataValue — nơi dữ liệu bắt đầu trở thành thông tin mà con người có thể sử dụng để ra quyết định. Cô đọng: Superset biến Trusted Data thành Business Insight.

Apache Superset là một nền tảng Business Intelligence, Data Exploration và Data Visualization mã nguồn mở. Apache mô tả Superset là một nền tảng open-source modern data exploration and visualization, đồng thời tài liệu chính thức định vị nó là một ứng dụng BI hiện đại, sẵn sàng cho môi trường doanh nghiệp.

Superset cung cấp một môi trường web để người dùng: kết nối với analytical database; khám phá dữ liệu; tạo biểu đồ; xây dashboard; filter và drill-down dữ liệu; thực hiện ad-hoc analytics; và sử dụng SQL khi cần phân tích nâng cao. Điểm quan trọng là Superset phục vụ hai kiểu người dùng cùng lúc: một no-code visualization builder (Explore) cho business users, và một SQL Lab cho analyst/data users. Tài liệu chính thức cho biết Superset có hơn 40 loại visualization cài sẵn, hỗ trợ dashboard tương tác, caching, cross-filter, drill-to-detail và drill-by.

flowchart LR
  CH["ClickHouse"] --> DBT["dbt"] --> CUBE["Cube"] --> SS["SUPERSET"] --> BU["Business Users"]

Hãy tưởng tượng chúng ta đã hoàn thành Odoo → Airbyte → ClickHouse → dbt → Cube. Dữ liệu đã có, đã được làm sạch, Business Metrics đã được định nghĩa. Nhưng CEO không muốn viết SQL, và Sales Manager cũng không muốn gọi API. Họ muốn nhìn thấy: Revenue tháng này bao nhiêu? So với tháng trước tăng hay giảm? Product nào đang tăng trưởng? Region nào đang giảm? Customer nào đóng góp nhiều nhất? Gross Margin đang biến động ra sao?

Đó là lý do cần BI. Chuỗi giá trị ở đây là Trusted Data → Trusted Metrics → Visualization → Insight → Decision, và trong Open Source architecture của DataValue, Superset đảm nhiệm lớp Visualization & Business Intelligence này.

Dashboard — chức năng dễ nhìn thấy nhất

Phần tiêu đề “Dashboard — chức năng dễ nhìn thấy nhất”

Capability quen thuộc nhất của Superset là Dashboard. Một dashboard có thể kết hợp nhiều visualization để tạo một góc nhìn quản trị hoàn chỉnh. Ví dụ một Sales Executive Dashboard có thể gồm hàng KPI (Revenue, Margin, Orders, Customers) ở trên cùng, một biểu đồ Revenue Trend ở giữa, rồi các ô Revenue by Region, Revenue by Product, Top Customers, Margin Analysis phía dưới.

Điều quan trọng là người quản lý không cần biết dữ liệu đến từ sale_order, sale_order_line, account_move, res_partner, product_product. Họ chỉ nhìn thấy Revenue, Customer, Product, Margin, Region, Period. Đây chính là giá trị của việc tách Business Experience khỏi Technical Data Model.

Không phải mọi câu hỏi đều có thể được dự đoán trước để đưa lên Dashboard. Một Sales Manager có thể bất ngờ muốn biết “Revenue của Product Group A tại miền Nam trong 6 tháng gần nhất?” hoặc “những khách hàng nào giảm doanh thu trên 20%?”. Superset cung cấp Explore, một giao diện no-code cho phép người dùng lựa chọn Dataset, Metric, Dimension, Filter và Visualization mà không nhất thiết phải viết SQL (Dataset → Select Metric → Select Dimension → Add Filter → Choose Visualization → Analyze). Ví dụ đặt Metric = Revenue, Dimension = Customer, Filter = Region South, Period = Last 12 Months và Superset tạo visualization. Đây chính là Self-Service Analytics.

Visualization — biến con số thành thông tin dễ hiểu

Phần tiêu đề “Visualization — biến con số thành thông tin dễ hiểu”

Một bảng có 10 triệu transactions không giúp người quản lý hiểu doanh nghiệp. Visualization giúp chuyển 10.000.000 transactions thành Revenue Trend, Customer Distribution, Product Performance, Regional Performance, Margin Analysis. Superset cung cấp hơn 40 visualization cài sẵn, từ các biểu đồ phổ biến (KPI, Bar, Line, Area, Pie/Donut, Pivot Table, Heatmap, Treemap, Map, Time Series) tới geospatial visualization; kiến trúc plugin cũng cho phép bổ sung visualization tùy chỉnh. Nhưng giá trị của Visualization không phải là “biểu đồ đẹp” — mục đích thực sự là giúp người dùng nhìn ra pattern, exception và trend nhanh hơn.

Filter — cùng một Dashboard nhưng nhiều góc nhìn

Phần tiêu đề “Filter — cùng một Dashboard nhưng nhiều góc nhìn”

Management Dashboard thường phải phục vụ nhiều người: CEO muốn xem toàn công ty, Regional Manager muốn xem region của mình, Product Manager muốn xem một nhóm sản phẩm. Superset hỗ trợ dashboard filters để người dùng thay đổi góc nhìn dữ liệu — một Revenue Dashboard có thể có các filter Period, Company, Region, Product Category, Customer Segment, Salesperson. Người dùng chọn Period = 2026, Region = South, Product Category = Beverage và toàn bộ dashboard thay đổi theo context đó.

Cross-Filter — một biểu đồ có thể điều khiển biểu đồ khác

Phần tiêu đề “Cross-Filter — một biểu đồ có thể điều khiển biểu đồ khác”

Một analytical dashboard tốt không chỉ hiển thị dữ liệu — nó cho phép người dùng khám phá dữ liệu tương tác. Ví dụ trên biểu đồ Revenue by Region, khi người dùng click vào “South”, toàn bộ dashboard được lọc theo miền Nam, và các ô Top Products, Top Customers, Margin, Orders đều được cập nhật theo. Superset hỗ trợ cross-filter cùng drill-to-detail và drill-by để người dùng tiếp tục đào sâu.

Dashboard cho Management thường bắt đầu ở mức tổng quan (ví dụ Revenue = 100 Billion). Nhưng khi phát hiện Revenue giảm, người dùng muốn hỏi “giảm ở đâu?” và có thể tiếp tục đào theo Revenue → Region → Product Category → Product → Customer. Ví dụ Revenue ↓ 8% → South ↓ 15% → Product Group A ↓ 24% → Customer C001 ↓ 60%. Đây là quá trình Observe → Explore → Diagnose — BI không chỉ nói “Revenue giảm” mà giúp người dùng tìm “Revenue giảm ở đâu?”.

SQL Lab — dành cho Data Analyst và người dùng nâng cao

Phần tiêu đề “SQL Lab — dành cho Data Analyst và người dùng nâng cao”

Không phải tất cả người dùng Superset đều là business users. Data Analyst đôi khi cần truy vấn trực tiếp dữ liệu. Superset cung cấp SQL Lab, một SQL IDE trên web để viết SQL, thực thi query, xem kết quả, khám phá database metadata, format SQL, xuất kết quả, và phát triển query cho phân tích ad-hoc. Superset xem SQL Lab là một trong hai interface chính để khám phá dữ liệu, bên cạnh Explore. Như vậy Superset phục vụ được cả Business User (no-code) và Data Analyst (SQL).

Dataset — cầu nối giữa Database và Visualization

Phần tiêu đề “Dataset — cầu nối giữa Database và Visualization”

Trong Superset, chart thường được xây trên Dataset (ClickHouse → Dataset → Chart → Dashboard). Superset hỗ trợ cả physical và virtual datasets để hỗ trợ việc xây chart và data exploration. Ví dụ DataValue có thể có các dataset sales_analysis, customer_analysis, inventory_analysis, financial_analysis. Business users không cần nhìn thấy toàn bộ database schema — họ chỉ cần những Dataset phù hợp với analytical use case.

Superset có Semantic Layer — nhưng tại sao vẫn dùng Cube?

Phần tiêu đề “Superset có Semantic Layer — nhưng tại sao vẫn dùng Cube?”

Đây là một câu hỏi rất quan trọng. Superset bản thân có một lightweight semantic layer — nó có thể lưu virtual metrics, calculated columns, certified metrics (ví dụ Revenue = SUM(net_revenue), Margin = SUM(revenue) − SUM(cost)). Đây là capability hữu ích cho một Superset-only implementation.

Nhưng DataValue không muốn Business Semantics bị khóa vào riêng Superset, vì chúng ta còn có Power BI, AI Agents, Applications, APIs. Nếu mỗi consumer tự định nghĩa Semantic (Superset → Revenue A, Power BI → Revenue B, AI → Revenue C, Application → Revenue D), chúng ta quay lại vấn đề cũ — cùng một KPI nhưng nhiều con số. Do đó DataValue sử dụng Cube làm Universal Semantic Layer (Cube → {Superset, AI, Apps}): Cube là nơi sở hữu Business Meaning, Superset là nơi Visualize & Explore.

Đáng chú ý, Superset hiện đã mô tả khả năng kết nối external semantic layers, trong đó có Cube, thông qua tính năng Semantic Layers — semantic views từ Cube có thể xuất hiện bên cạnh Dataset và được dùng cho dashboard/filter (tài liệu đánh dấu capability này là experimental và cần bật feature flag). Về mặt kiến trúc, đây chính là hướng DataValue muốn: ClickHouse → dbt → Cube → Superset, thay vì để Superset tự định nghĩa lại toàn bộ Metrics.

Ví dụ hoàn chỉnh: Sales, Inventory & Customer 360

Phần tiêu đề “Ví dụ hoàn chỉnh: Sales, Inventory & Customer 360”

Sales Performance Dashboard đi xuyên toàn bộ DataValue: Odoo (Customer, Sales Order, Sales Order Line, Product, Invoice, Payment) → Airbyte → ClickHouse → dbt (DimCustomer, DimProduct, DimDate, DimSalesperson, FactSales, FactInvoice, FactPayment) → Cube (Revenue, Net Revenue, Quantity, Gross Margin, Average Selling Price, Order Count, Active Customer) → Superset (Executive Sales Dashboard: Revenue, Revenue Growth, Gross Margin, Active Customers + Revenue Trend/by Region/by Product/by Customer + Margin Analysis). Đây chính là hành trình Transaction → Data → Model → Meaning → Insight.

Tương tự, Inventory Dashboard: Odoo có hàng triệu Stock Movements mà business không muốn xem từng cái; dbt tạo FactInventoryMovement, FactInventoryBalance, DimProduct, DimWarehouse, DimDate, Cube định nghĩa Inventory On Hand, Inventory Value, Inventory Turnover, Days of Inventory, Slow-moving Inventory, và Superset hiển thị một Inventory Control Dashboard (Inventory Value, Stock on Hand, Turnover, Inventory by Warehouse/Product, Slow-moving Items, Stock-out Risk, Trend) — Management nhanh chóng nhìn thấy khu vực cần quan tâm. Customer 360 Dashboard: khi tích hợp thêm Odoo, CRM, eCommerce, Marketing, Customer Service, dbt tạo Customer 360 Model, Cube định nghĩa Customer Revenue, Purchase Frequency, Average Order Value, Last Purchase Date, Customer Margin, Active Customer, và Superset cung cấp góc nhìn Customer Value, Revenue Trend, Purchase Frequency, Product Preference, Customer Segment, Customer Activity — Sales Manager nhanh chóng nhìn ra khách giá trị cao, khách giảm mua, nhóm tăng trưởng và product preference.

Ranh giới: Superset không lưu, không transform, không semantic

Phần tiêu đề “Ranh giới: Superset không lưu, không transform, không semantic”

Superset không phải Data Warehouse. Tài liệu chính thức nhấn mạnh Superset không có storage layer để lưu dữ liệu analytical của doanh nghiệp — nó kết nối tới các SQL-speaking databases/data engines hiện hữu và tận dụng compute của hệ thống phía dưới. Trong DataValue, ClickHouse = Data Storage & Analytical Processing, Superset = Analytics & Visualization; conceptually Superset --query--> ClickHouse --result--> Superset --> Visualization, chứ không phải ClickHouse → copy data → Superset database.

  • Superset không thay ClickHouse — ClickHouse chịu trách nhiệm Store & Process (ví dụ 100 triệu transactions → ClickHouse aggregation → Superset → Chart). Không nên biến BI server thành analytical database, cũng không nên bắt operational database làm toàn bộ analytical workload.
  • Superset không thay dbt — một lỗi phổ biến là viết toàn bộ transformation ngay trong BI (Dashboard A tạo Sales Logic A, Dashboard B tạo Logic B, Dashboard C tạo Logic C) → business logic phân tán. DataValue giữ Raw Data → dbt → Trusted Data Model → Superset: dbt lo Transform · Model · Test, Superset lo Explore · Analyze · Visualize.
  • Superset không thay Cube — đây có lẽ là boundary quan trọng nhất. Superset có lightweight semantic capability, nhưng DataValue dùng Cube làm Universal Semantic Layer: dbt = Model, Cube = Meaning, Superset = Insight. Điều này đảm bảo một Revenue định nghĩa ở Cube tiếp tục được dùng bởi Superset, AI Agent, API, Application.

Alerts & Reports — BI không nhất thiết chờ người dùng mở Dashboard

Phần tiêu đề “Alerts & Reports — BI không nhất thiết chờ người dùng mở Dashboard”

Superset còn hỗ trợ Alerts & Reports. Reports có thể được gửi theo lịch; Alerts có thể được kích hoạt khi một SQL condition đạt điều kiện. Superset hỗ trợ gửi dashboard/chart qua email hoặc Slack, với định dạng như PDF, PNG và với chart có thể CSV/XLSX tùy cấu hình (capability này cần được bật và cấu hình ở môi trường triển khai). Ví dụ Every Monday 8 AM → Sales Dashboard → Executive Report, hoặc Gross Margin < 15% → Superset Alert → Notify Team.

Nhưng với DataValue, các workflow business phức tạp hơn vẫn nên đưa sang n8n. Khác biệt: Superset Alert chỉ “Gross Margin < 15% → gửi cảnh báo” (Inform); còn n8n có thể “Gross Margin < 15% → tìm Product Manager → lấy danh sách affected products → gọi AI phân tích nguyên nhân → tạo task → gửi approval → theo dõi action” (Act). Trong chuỗi đầy đủ: Superset → See · AI → Reason · n8n → Act.

Embedded Analytics

Dashboard không nhất thiết mở trong riêng giao diện Superset — Superset hỗ trợ embed dashboard vào host application qua Embedded SDK và guest-token mechanism (khi deployment được cấu hình phù hợp). Ví dụ một DataValue Portal có thể embed sẵn Sales/Inventory/Customer/Finance Dashboard, người dùng thấy một DataValue Experience thống nhất thay vì phải biết dashboard được xây bằng Superset.

API & Extensibility

Superset không chỉ là một ứng dụng giao diện — nó có REST API và extension capabilities, cho phép tích hợp BI sâu hơn với application và automation architecture (Data Value Application → Superset API → Charts/Dashboards/Data). Phù hợp triết lý: BI không phải một silo, BI là một capability của Data Platform.

Security & Access Control

Một enterprise BI platform phải kiểm soát: ai được xem dashboard nào? truy cập dataset nào? tạo chart? chạy SQL? quản trị database connection? Superset cung cấp security roles và authentication mechanisms cấu hình khá sâu (CEO → Enterprise Dashboard, Finance → Finance Analytics, Sales Manager → Sales Analytics, Data Analyst → Explore + SQL Lab). Kết hợp Cube, DataValue kiểm soát access ở nhiều lớp (Data → Semantic Governance → BI Access).

Caching

Dashboard có thể được hàng trăm người dùng cùng lúc; nếu mỗi lần mở đều chạy tất cả query từ đầu, Data Platform phải xử lý khối lượng lớn. Superset hỗ trợ configurable caching để giảm tải database và cải thiện thời gian load. DataValue có nhiều lớp tối ưu: ClickHouse → Cube Pre-aggregation/Cache → Superset Cache → Users — mỗi lớp giải quyết một vấn đề performance khác nhau.

Superset và AI — một xu hướng đáng chú ý là BI đang hội tụ với AI. Tài liệu Superset đã mô tả khả năng kết nối AI Assistant thông qua Model Context Protocol — MCP; với cấu hình phù hợp, AI client có thể khám phá datasets, charts, dashboards và thực hiện phân tích qua natural language (User → AI Assistant → MCP → Superset → Analytics) — capability này yêu cầu Superset MCP server được triển khai/bật. Điều này mở ra hướng thú vị: không chỉ “Click Dashboard” mà còn “Ask the Data”. Nhưng AI không nên bỏ qua Cube — với những câu hỏi yêu cầu governed business semantics, DataValue vẫn khuyến nghị AI Agent → Cube → Trusted Metrics → ClickHouse. Superset đóng vai trò Human Analytics Experience (và AI-enabled analytics experience), còn Cube vẫn là Trusted Business Meaning — mỗi lớp vẫn có trách nhiệm rõ ràng.

Superset giúp DataValue xây nhiều Business Analytics Solutions

Phần tiêu đề “Superset giúp DataValue xây nhiều Business Analytics Solutions”

Từ cùng một platform, DataValue có thể cung cấp nhiều analytical solution theo domain: Executive Analytics (Revenue, Margin, Cash, Inventory, Customer, Growth), Sales Analytics (Revenue/Customer/Product/Salesperson Performance, Sales Trend), Finance Analytics (Revenue, Cost, Margin, AR, AP, Cash, Budget vs Actual), Supply Chain Analytics (Inventory, Purchasing, Supplier, Stock-out, Slow Moving, Warehouse), Customer Analytics (Customer 360, Customer Value, Purchase Behavior, Segment, Retention). Superset trở thành visual analytics experience cho toàn bộ các Data Products của DataValue.

Đây cũng là cách DataValue nên định vị sản phẩm. Superset không cần được giới thiệu là “tốt hơn” Power BI hay Tableau — ba sản phẩm phục vụ những phân khúc và nhu cầu khác nhau. Trong DataValue: Superset là Open Source BI & Analytics (hợp với Open Source Data Platform, self-hosted architecture, embedded analytics, SQL-oriented analytics, doanh nghiệp muốn giảm phụ thuộc licensing, application cần tích hợp BI). Power BI là Enterprise BI trong Microsoft ecosystem (đặc biệt mạnh khi doanh nghiệp đã dùng Microsoft 365, Fabric, Azure, Power Platform). Tableau là Enterprise Visual Analytics (mạnh về data exploration, visualization và enterprise analytics experience). Do đó DataValue có thể duy trì capability ANALYTICS & BI → {Open Source → Superset, Enterprise → Power BI/Tableau} mà architecture phía dưới không nhất thiết thay đổi.

Giá trị chiến lược của việc tách BI khỏi Data Platform

Phần tiêu đề “Giá trị chiến lược của việc tách BI khỏi Data Platform”

Điều này rất quan trọng. Nếu toàn bộ business logic được nhúng vào Power BI hoặc Superset (Data Platform → BI Tool → Business Logic), thì đổi BI tool có thể đồng nghĩa với rebuild logic. DataValue làm khác: ClickHouse → dbt → Cube → (Superset hoặc Power BI hoặc Tableau). Business Logic vẫn ở Data Platform/Semantic Layer; BI trở thành consumer. Đây là cách DataValue giảm BI Vendor Lock-in.

flowchart TB
  ODOO["ODOO 19 · Operate"] --> AB["AIRBYTE · Ingest"] --> CH["CLICKHOUSE · Store & Process"]
  CH --> DBT["dbt · Transform · Model · Test"] --> CUBE["CUBE · Semantic · Metrics"]
  CUBE --> SS["SUPERSET · Explore & Analyze"] & AI["AI · Reason"] & API["APIs"]
  AI --> N8N["n8n · Automate & Act"]
  SS --> DEC["Business Decision"]
  N8N --> DEC --> ACT["Business Action → Outcome"]

Role: Odoo Operate · Airbyte Ingest · ClickHouse Store & Process · dbt Transform & Model · Cube Define & Understand · Superset — Explore & Analyze · AI Reason · n8n Automate & Act.

Nhìn lại toàn bộ hành trình Operational Data → Airbyte → Analytical Data → ClickHouse → Trusted Model → dbt → Trusted Meaning → Cube → Business Insight → Superset, đây là bước mà dữ liệu bắt đầu được đưa tới con người: không còn là table, không còn là SQL, không còn là database schema, mà trở thành KPI, Trend, Exception, Comparison, Pattern, Business Insight.

Superset không phải database, không phải ingestion engine, không phải transformation framework, cũng không phải Universal Semantic Layer. Nó giải quyết một câu hỏi hoàn toàn khác: làm thế nào để con người có thể nhìn thấy, khám phá và hiểu dữ liệu một cách nhanh chóng? Trong DataValue, câu trả lời là Apache Superset — Open Source Business Intelligence & Data Exploration. Nếu Airbyte đưa Data vào, ClickHouse giúp Data có nơi để sống, dbt làm cho Data đáng tin cậy, Cube làm cho Data có ý nghĩa, thì Superset giúp con người nhìn thấy ý nghĩa đó.

Nhưng DataValue không dừng tại Dashboard — sau Insight còn có Reasoning → Decision → Action → Outcome. Vì vậy hành trình đầy đủ là Data → Trusted Data → Trusted Meaning → Insight → Intelligence → Action → Outcome → Value, và đó chính là vị trí của Apache Superset trong DataValue: lớp biến Trusted Data thành Business Insight, để con người có thể hiểu dữ liệu và đưa ra quyết định tốt hơn.

Chia sẻ: