5 điểm bởi GN⁺ 2024-02-27 | 1 bình luận | Chia sẻ qua WhatsApp
  • Apache Superset là nền tảng phân tích mã nguồn mở xử lý việc khám phá và trực quan hóa dữ liệu tại một nơi, cho phép người dùng ở nhiều mức độ thành thạo khác nhau làm việc với dữ liệu thông qua biểu đồ và dashboard
  • Cung cấp đồng thời trình dựng trực quan hóa không cần code và SQL IDE, giúp người dùng nghiệp vụ và người dùng SQL khám phá dữ liệu theo cách riêng của họ
  • Kết nối với các cơ sở dữ liệu dựa trên SQL, đồng thời có thể tận dụng cả cơ sở dữ liệu và engine cloud-native ở quy mô petabyte
  • Hướng tới kiến trúc nhẹ và có khả năng mở rộng, vận hành trên hạ tầng dữ liệu hiện có, không yêu cầu tầng thu thập riêng
  • Hỗ trợ luồng phân tích tự phục vụ với hơn 40 kiểu trực quan hóa, khả năng mở rộng dựa trên plugin, caching, template Jinja, bộ lọc dashboard và semantic layer

Nền tảng khám phá và trực quan hóa dữ liệu

  • Apache Superset™ là nền tảng khám phá và trực quan hóa dữ liệu mã nguồn mở
  • Nhấn mạnh tính nhanh, nhẹ và trực quan, hỗ trợ nhiều dạng trực quan hóa từ biểu đồ tuyến tính đơn giản đến biểu đồ không gian địa lý chi tiết
  • Người dùng có thể khám phá dữ liệu thông qua trình dựng trực quan hóa không cần code hoặc SQL IDE
  • Có thể kết nối với các cơ sở dữ liệu dựa trên SQL, và cũng bao gồm các cơ sở dữ liệu cloud-native hiện đại cùng các engine ở quy mô petabyte
  • Có kiến trúc nhẹ, khả năng mở rộng cao, tận dụng hạ tầng dữ liệu hiện có và không cần tầng thu thập bổ sung
  • Cung cấp hơn 40 loại trực quan hóa được cài sẵn, đồng thời có thể tạo trực quan hóa tùy chỉnh bằng kiến trúc plugin

Tài liệu theo vai trò và cộng đồng

  • User Docs: tài liệu dành cho nhà phân tích và người dùng nghiệp vụ, bao quát khám phá dữ liệu, tạo biểu đồ, tạo dashboard và kết nối cơ sở dữ liệu
  • Administrator Guide: tài liệu dành cho các nhóm phụ trách cài đặt và vận hành Superset, bao quát cài đặt, cấu hình, bảo mật và driver cơ sở dữ liệu
  • Developer Guide: tài liệu dành cho kỹ sư đóng góp cho Superset hoặc phát triển các tính năng nền tảng, bao quát REST API, mở rộng và quy trình đóng góp
  • Community: cung cấp tài nguyên cộng đồng như Slack, GitHub, mailing list và các meetup sắp diễn ra

Tính năng phân tích tự phục vụ

  • Superset hỗ trợ luồng khám phá dữ liệu và tìm insight trên dashboard tương tác thông qua dashboard, Chart Builder, SQL Lab và Datasets
  • Tạo trực quan hóa và dashboard

    • Cung cấp hơn 40 trực quan hóa được cài sẵn
    • Hỗ trợ cả kéo-thả và truy vấn SQL
    • Cung cấp data caching để giảm thời gian tải biểu đồ và dashboard
    • Có thể xây dựng dashboard tương tác bằng template Jinja và bộ lọc dashboard
    • Có thể dùng template CSS để trang trí biểu đồ và dashboard phù hợp với look and feel của thương hiệu
  • Tính năng mở rộng phân tích

    • Cung cấp semantic layer cho chuyển đổi dữ liệu SQL
    • Hỗ trợ phân tích dữ liệu sâu hơn bằng cross-filter, drill-to-detail và drill-by
    • Có thể tận dụng virtual datasets cho khám phá dữ liệu tạm thời
    • Có thể truy cập các tính năng mới thông qua feature flags

Các tổ chức sử dụng

  • Superset cho biết có hàng nghìn công ty sử dụng nền tảng này để khám phá và trực quan hóa dữ liệu
  • Các ví dụ về tổ chức sử dụng được hiển thị dưới dạng liên kết gồm Xnet Mobile, UserGuiding, Preset, PlaidCloud, VLMedia và Cirrus Assessment

1 bình luận

 
GN⁺ 2024-02-27
Ý kiến trên Hacker News
  • Tôi đã dùng Superset rất hài lòng, và sau khi thay thế Tableau thì không còn ý định quay lại nữa
    Tôi đã mất khá nhiều thời gian để tìm hiểu cách nhúng vào ứng dụng bằng Superset Embedded SDK. SDK này cho phép dùng cơ chế xác thực của ứng dụng để đưa dashboard Superset vào chính ứng dụng đó, theo cách chèn một iframe chứa trang Superset vào ứng dụng host
    https://github.com/apache/superset/tree/master/superset-embe...
    Superset được xây dựng trên ECharts, một thư viện biểu đồ chất lượng cao và được duy trì tốt
    https://echarts.apache.org/examples/en/#chart-type-linesG
    Lộ trình cộng đồng cũng được công khai
    https://github.com/apache/superset/projects?query=is%3Aopen
    Tôi rất tôn trọng Preset.io và đội ngũ vì những đóng góp của họ cho dự án và việc giữ cho nó ở trạng thái tốt
    https://preset.io/blog/
    Mã nguồn của Superset dễ đọc và dễ hiểu, nên cũng có thể triển khai các kỹ thuật cache nâng cao để giảm tải cho biểu đồ. Không có BI nào là hoàn hảo, nhưng sau vài năm theo dõi, tôi có được sự tin tưởng rằng đây là một dự án sẽ tiếp tục hoạt động đúng như định hướng, và biết đâu sau này một số package có thể được tái sử dụng cho nhiều kiểu trực quan hóa và khai phá dữ liệu khác nhau
    Tôi thường chọn cách bắt đầu phần trực quan hóa với ECharts và một lớp bọc React đơn giản, rồi chạy Superset trên một subdomain cho nhóm power user để xem bên nào phù hợp hơn. Nếu giữ cùng một diện mạo thì trải nghiệm người dùng khá tốt

    • Công cụ BI mã nguồn mở Evidence cũng dùng ECharts, và đó là một thư viện tuyệt vời. Nó đã giúp ích rất nhiều trong việc tạo ra cú pháp khai báo trực quan hóa có thể quản lý bằng version control
      https://evidence.dev
      Thảo luận HN trước đó: https://news.ycombinator.com/item?id=35645464 (97 bình luận)
    • Tôi muốn biết họ xử lý khả năng hiển thị dữ liệu và quyền truy cập như thế nào. Hầu hết các bảng đều có dữ liệu chỉ nên cho một số người dùng hoặc group ID cụ thể xem, và thường tầng đó do ứng dụng đảm nhiệm. Sẽ rất hay nếu có thể đưa các tính năng của Superset đến người dùng, nhưng việc dựng lớp bảo mật có lẽ sẽ khá vất vả
    • ECharts rất tuyệt. https://github.com/openobserve/openobserve đã dùng Plotly vài tháng rồi chuyển sang ECharts, và tôi rất hài lòng
    • Sẽ tốt nếu các ứng dụng kiểu này bắt đầu cung cấp những thứ như biểu đồ dưới dạng nhúng SVG. iframe quá phiền phức
    • Tôi chưa từng dùng Superset. Tôi tò mò liệu bạn có thể giải thích thêm vài điểm mà bạn cho là nó vượt trội hơn Tableau không
  • Tôi đã dùng Superset vài năm trước, và có thể giờ nó đã khác, nhưng nếu phải mô tả thì trực quan là từ tôi muốn dùng sau cùng
    Những việc ở các công cụ BI khác có thể hiểu ra chỉ trong vài phút thì với Superset tôi đã phải mất hàng giờ đúng nghĩa để mò. Việc họ đổi tên một khái niệm cốt lõi ở giữa chừng khiến một nửa tài liệu trên mạng không còn khớp nữa cũng chẳng giúp ích gì. Các đồng nghiệp trong công ty từng dùng cùng tôi lúc đó cũng có cảm nhận tương tự

    • Superset không trực quan cả khi dùng lẫn khi cấu hình. Cuối cùng tôi đã dựng Metabase, vì nó có thể chạy bằng một file jar duy nhất nên bắt đầu cực kỳ dễ
      Người dùng kinh doanh cũng thích nó và tôi cũng hài lòng, còn việc gắn backend Postgres thay cho cơ sở dữ liệu h2 nội bộ để quản trị cũng khá dễ dàng
    • Thành thật mà nói, khi mô tả phần lớn các dự án Apache, từ “trực quan” thường là từ cuối cùng tôi nghĩ tới
    • Tôi cũng có trải nghiệm tương tự với Superset. Tôi đồng ý rằng Metabase tốt hơn, nhưng nếu bạn đang tìm một cách tiếp cận khác với dữ liệu thì cũng đáng xem Definite(https://www.definite.app/). Nó gần giống một “data stack trong hộp” hơn
      Nó có thể dựng một cơ sở dữ liệu DuckDB làm data warehouse tích hợp để nạp dữ liệu vào, và với hơn 500 connector, nó có thể tự động lấy dữ liệu từ Postgres, Stripe, HubSpot, Zendesk mà không cần ETL riêng
      Ở semantic layer, bạn định nghĩa dimension, metric và join ở cùng một chỗ, và cũng có các model dựng sẵn cho từng nguồn được hỗ trợ. Ví dụ, model Stripe đã có sẵn các metric như MRR và churn
      Theo kiểu BI đơn giản, bạn tạo bảng dữ liệu mình muốn rồi tạo trực quan hóa từ bảng đó. Nếu có câu hỏi, có thể liên hệ mike@definite.app
    • Tôi đang thử Superset một chút và đồng ý. Những việc dễ trong SQL thì trong Superset lại khó hoặc mơ hồ đến mức đáng lo
      Tài liệu cũng khá sơ sài, nói nhẹ thì là vậy
    • Khi tôi dùng thì nó cũng không nhanh
      Bù lại, nó đầy rẫy lỗi runtime Python và vô số lỗi vặt không đếm xuể. Hiện giờ Metabase có vẻ gần với đáp án đúng hơn
  • Các công cụ BI đầy đủ như Superset hay Metabase rất tuyệt cho đúng trường hợp sử dụng mà chúng nhắm tới
    Nhưng nếu mục đích chính chỉ là thỉnh thoảng tạo các báo cáo hơi có tính tương tác cho người dùng cuối không chuyên kỹ thuật, và phần lớn chỉ cần biểu đồ tiêu chuẩn cùng bảng là đủ, thì chúng có thể là quá mức cần thiết. Điều này càng đúng nếu bạn đã quen với SQL và có quyền truy cập vào nguồn dữ liệu gốc
    Trong những trường hợp như vậy, SQLPageEvidence rất hữu ích. Bạn có thể nhanh chóng viết SQL rồi biến nó thành một web UI sạch sẽ, chuyên nghiệp để đưa cho người dùng cuối. Evidence là trang web tạo tĩnh, còn SQLPage là ứng dụng web kết nối tới cơ sở dữ liệu thời gian thực
    SQLPage: https://sql.ophir.dev/
    Evidence: https://evidence.dev

  • Tôi thích Superset.
    Từ năm 2017, tôi đã đưa nó vào môi trường production ở hai công ty, và công ty hiện tại là một doanh nghiệp lớn.
    Với vai trò một hệ thống dashboard dựa trên cơ sở dữ liệu đa dụng, tôi cho rằng đây là tốt nhất. Tôi không có ý định trả tiền cho Tableau hay Power BI.
    Airflow cũng vậy.

    • Tôi không rõ “Airflow cũng vậy” có nghĩa là gì.
  • Dùng instance Superset của Wikipedia thì có thể truy vấn cơ sở dữ liệu nội bộ của Wikipedia.
    https://superset.wmcloud.org
    https://phabricator.wikimedia.org/T169452
    Trước đây tôi đã dùng nó để tạo thống kê tùy chỉnh.
    https://github.com/altilunium/wikiidmon

  • Đây là các bài liên quan. Không biết còn bài nào khác không.
    Open source Business intelligence platform made with Python - https://news.ycombinator.com/item?id=29368664 - tháng 11 năm 2021 (49 bình luận)
    Apache Superset 1.1 - https://news.ycombinator.com/item?id=27439939 - tháng 6 năm 2021 (28 bình luận)
    The Apache Software Foundation Announces Apache Superset as a Top-Level Project - https://news.ycombinator.com/item?id=25905277 - tháng 1 năm 2021 (1 bình luận)
    Apache Superset is an enterprise-ready business intelligence web application - https://news.ycombinator.com/item?id=21133931 - tháng 10 năm 2019 (7 bình luận)

  • Superset rất mạnh, nhưng tôi thắc mắc vì sao họ không sửa những bất tiện nhỏ nhặt. Ví dụ như pixel của spinner bị lệch, không thể sao chép giá trị ô trong bảng, hoặc không dùng font monospace cho các con số trong bảng. Có hàng trăm điều bực mình nho nhỏ như vậy trong sản phẩm.

    • Chúng tôi đang cố sửa. Nếu có điểm nào bất tiện thì tất nhiên chúng tôi cũng nhận PR và issue.
      Luôn phải cân bằng giữa việc làm các tính năng mới mà mọi người yêu cầu và sửa những vấn đề bề ngoài kiểu này vốn cứ tiếp tục xuất hiện.
  • Tôi muốn biết có ai đã dùng cả Superset lẫn Metabase chưa. Tôi đã dùng Metabase cho vài dự án và thấy nó khá ổn. Superset có vẻ mạnh hơn.
    Không biết nó có đáng dùng cả cho BI với bộ dữ liệu nhỏ không.

    • Ở công ty hiện tại tôi đang dùng Metabase, và cũng đã có khá nhiều kinh nghiệm với Superset, dù là từ vài năm trước.
      Lý do chúng tôi chọn Metabase là vì có table join. Khi tôi dùng Superset thì nó chưa có join, và tôi không biết sau này đã được thêm vào chưa. Giao diện của Metabase cũng trông trau chuốt hơn một chút.
      Dù vậy, cá nhân tôi vẫn thích Superset hơn nhiều. Để Metabase dùng được thì tôi phải tắt khá nhiều tính năng, và từ chuyện nó hiển thị “the_table” thành “The Table” cho đến sự mập mờ giữa model và “question” đều khiến tôi khó chịu. Mỗi lần muốn sửa một question thì nó lại cố tạo question mới, cũng rất bực.
      Đặc biệt, khi muốn đổi nguồn dữ liệu của nhiều question, đây là vấn đề lớn vì Metabase không có cách gọn gàng để đổi mà không tạo question mới.
      Ngoài ra, Metabase chỉ cho serialization nếu bạn tự host và trả tiền. Tự host mà còn phải trả tiền cho chính xác cái gì thì tôi không rõ, và điều đó khá khó chịu.
      https://www.metabase.com/docs/latest/installation-and-operat...
      Nhưng dù sao thì nó có table join. Đôi khi chỉ riêng điều đó cũng đủ đáng để chấp nhận Metabase.
    • Nhắc lại những gì tôi đã viết khoảng 60 ngày trước: gần đây tôi có so sánh nhanh Superset, Metabase và Lightdash; cả ba đều là mã nguồn mở và đều có tùy chọn hosting. Cả ba đều có những điểm yếu không hề nhỏ, nhưng cuối cùng tôi chọn Lightdash.
      Nếu chỉ xét riêng trực quan hóa dữ liệu thì Superset là tốt nhất, nhưng với vai trò BI tự phục vụ cho người dùng doanh nghiệp trên một star schema sẵn có thì tôi thấy nó gần như vô dụng. Issue này về cách làm join trong Superset cho thấy rất rõ khó khăn của BI trên Superset, kể cả chuyện stalebot làm rối tung mọi thứ.
      https://github.com/apache/superset/issues/8645
      Metabase khá xuất sắc, và rõ ràng là lựa chọn phù hợp cho các startup muốn dựng BI nhanh với chi phí thấp. Nó vẫn mang góc nhìn thiên về bảng khá nhiều, nhưng tôi có cảm giác nó được tạo ra cho BI nhiều hơn là chỉ để trực quan hóa đơn thuần.
      Lightdash có những khuyết điểm lớn như YAML, pivot thực hiện ở frontend, và thiếu symmetric aggregates, nhưng rõ ràng chịu ảnh hưởng từ Looker và dễ trình bày table group cho người dùng doanh nghiệp theo cách họ có thể dùng ngay. Tôi thích Looker trước khi bị Google mua lại, và người dùng doanh nghiệp của chúng tôi tuy không biết các thuật ngữ star schema hay snowflake schema, nhưng lại quen với kiểu cấu trúc đó, nên rất dễ đặt Lightdash lên trên data warehouse hiện có.
    • Nói thật thì Metabase thân thiện với người dùng hơn Superset. Đổi lại, Superset có giấy phép tự do hơn rất nhiều, nên lý tưởng cho những ai muốn tùy biến Superset hoặc xây dựng data app.
    • Metabase tốt. Tôi đang dùng nó cùng với Oracle Database.
  • Ở công ty tôi dùng Metabase khá nhiều. Nhưng điểm mà các công cụ kiểu này đều có vẻ yếu là cách sắp xếp hàng trăm dashboard và câu hỏi
    Sẽ rất hay nếu có thứ gì đó như wiki tích hợp để xây dựng cấu trúc khám phá tốt hơn. Không biết có ai biết cách hay nào không

    • Hoàn toàn đồng ý
      Một cách hữu ích là kết nối Metabase với chính cơ sở dữ liệu của nó để tạo truy vấn cho các truy vấn
      select *
      from report_card
      where dataset_query ilike '%' || {{query}} || '%'
      Bạn cũng có thể join thêm metadata như tác giả hoặc thời điểm chạy gần nhất
      Tôi thực sự cố gắng giữ cấu trúc thư mục Collection sạch sẽ và nhất quán, nhưng dù vậy vẫn rất khó
    • Có lẽ nên xem thử https://datahubproject.io/integrations. Hôm nay tôi mới nghe đến, nhưng trông khá hứa hẹn. Đây là mã nguồn mở tách ra từ LinkedIn và có nhiều tích hợp, bao gồm cả Metabase
    • Điều này làm tôi nảy ra một ý tưởng. Có thể nhóm các truy vấn SQL của Metabase theo độ tương đồng của kết quả hoặc của chính truy vấn không?
      Một cách khác có thể là dùng LLM để tóm tắt, gắn thẻ và nhóm các truy vấn để dễ tìm hơn
  • Tôi tò mò không biết Superset có phải là công cụ ổn ngay cả khi làm phân tích dữ liệu một mình không
    Ví dụ, tôi có vài cơ sở dữ liệu sqlite và chỉ muốn phát triển truy vấn cùng biểu đồ. Tôi đã xem Tableau, Power BI và Superset, nhưng cả ba đều có vẻ khá nặng đối với người dùng đơn lẻ, và thiết lập cục bộ cũng không có vẻ quá dễ
    Nếu có phần mềm nào tốt cho người dùng đơn lẻ, hoặc cách nào để chạy những công cụ nặng như thế thuận tiện hơn, tôi rất muốn được gợi ý

    • Nếu mục tiêu là phân tích dữ liệu, thì ba công cụ bạn nêu có lẽ không giúp được nhiều
      Tôi xem các sản phẩm này gần với công cụ trực quan hóa dữ liệu và báo cáo hơn, tức là để trình bày các bộ dữ liệu đã chuẩn bị sẵn sao cho đẹp mắt cho người dùng. Chúng kém phù hợp hơn cho phân tích nghiêm túc
      Tôi không rành Superset hay Tableau, nhưng Power BI thì tôi quen vì đã được triển khai trên toàn tổ chức. Các thống kê có thể làm bằng Power BI khá cơ bản. Vượt quá các tóm tắt như đếm, trung bình, nhỏ nhất, lớn nhất thì sẽ không còn dễ nữa
      Tôi dùng SAS hoặc R cho phân tích dữ liệu. Những phần mềm này có thể làm các việc như hồi quy đa biến, dự báo chuỗi thời gian, phân tích thành phần chính, phân cụm, và cũng có khả năng vẽ biểu đồ
      Cả hai đều hơi cũ một chút. Tôi đã dùng từ đầu những năm 2000, còn cách làm hiện nay có vẻ là Python. Nhân sự khoa học dữ liệu gần đây của tổ chức tôi hầu như đều dùng Python, đặc biệt là các thư viện như Pandas và Seaborn(https://seaborn.pydata.org/)
      Những power user của Power BI trong tổ chức tôi chủ yếu thuộc mảng tài chính hoặc HR, và thường dùng nó để drill-down số liệu chi phí hoặc hiển thị KPI cùng các chỉ số chính cho lãnh đạo theo cách tương tác
    • Tableau là lựa chọn tốt nhất trong ba cái, mạnh nhất, trưởng thành nhất, hoàn thiện tính năng nhất, và cũng dễ dùng nhất. Tôi nhớ là nó có bản dùng thử 30 ngày
      Nó có thể dùng như một ứng dụng cho người dùng đơn lẻ, và miễn là bạn không nhúng nó như một phần của ứng dụng mình xây dựng thì cứ dùng theo cách đó là được