文章最前: 我是Octopus,这个名字来源于我的中文名--章鱼;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github ;这博客是记录我学习的点点滴滴,如果您对 Python、Java、AI、算法有兴趣,可以关注我的动态,一起学习,共同进步。
相关文章:
- LeetCode:55. Jump Game(跳远比赛)
- Leetcode:300. Longest Increasing Subsequence(最大增长序列)
- LeetCode:560. Subarray Sum Equals K(找出数组中连续子串和等于k)
文章目录:
1) 各种BI工具对比
Superset 和 Redash 都是流行的开源BI(商业智能)工具,用于数据可视化和报表。以下是对两者的比较:
-
项目活跃度与社区支持:
- Superset 在 GitHub 上的星数领先,但迭代速度和开发者数量上可能不如 Redash。
- Metabase 在项目的完成度和更新速度上表现更佳,但本回答主要关注 Superset 和 Redash。
-
技术架构:
- Redash 使用 Python 作为服务器端语言,基于 Flask 框架,拥有成熟的组件生态,API 框架为 Flask-RESTful。
- Superset 的技术架构信息在搜索结果中未明确提及,但已知其后端基于 Python 开发。
-
数据可视化:
- Superset 提供了丰富的数据可视化选项,支持多种图表类型,用户界面友好,易于使用。
- Redash 也提供了多种图表类型,但在颜值方面可能略逊于 Superset。
-
易用性与上手难度:
- Superset 的上手难度相对较高,尤其是在配置数据源和建立查询时。
- Redash 被认为上手简单,其查询功能强大,支持使用 SQL 语句进行数据查询。
-
数据源支持:
- Superset 支持多种数据源,如 MySQL、Oracle、PostgreSQL 等,也支持大数据解决方案如 Druid。
- Redash 支持超过 35 个 SQL 和 NoSQL 数据源,包括 MySQL、PostgreSQL、MongoDB 等。
-
安全性与权限控制:
- Superset 提供了细粒度的安全模型,支持多种鉴权方式,如数据库、OpenID、LDAP、OAuth 等。
- Redash 在权限控制方面的具体信息在搜索结果中未明确提及。
-
扩展性与定制化:
- Superset 的扩展性和定制化能力有限,可能无法满足特定需求。
- Redash 在扩展性和定制化方面的表现在搜索结果中未明确说明。
Redash的用户体验要比Superset好,因为够简单。如果是进行深度二次开发,那选择Redash就更加嗨了!Redash的源码可读性很好,易于开发新feature。
如果你非常需要丰富图表,不想自己定制开发,那用superset也可。
但是,中型团队或者创业公司,更推荐使用Redash。运维Redash 1年多,累计注册人数2k,30日平均UV 160、PV 6k+,后台单节点PG元数据60G+,基本没啥运维压力和事故。
一个Redash的作用约等于半个BI部门的力量,还可以无限培养BI分析师,使人人(产品\开发...)都是数据分析师成为可能.....
2)Superset
优点:
- 可视化的选项更多,比如只要定义了Date字段,可以方便的在不同时间维度做Aggregation(日/周/月)。在显示指标的折线图时,可以与某段时间之前的指标在一张图上做对比。或是在折线图上显示一个指标的rolling averages。这些在做指标分析时挺有用的。
缺点:
- 每一张用的表,都需要Sources -> Tables里定义。每一个用到的指标也需要定义。不适合做adhoc query的可视化。
- SQL Lab虽然可以做adhoc query的可视化,但每次都会生成一堆临时table,把Sources -> Tables里面的对象搞得很乱
- Dashboard不能分类,多了以后很难管理和查找
- 权限系统特别复杂,而且不好用
3)Redash
优点:
- 理念很简单,就是把一个SQL Query的结果可视化。不需要像Superset里定义一堆东西之后才能用。
- SQL Query可以定制参数。比如一个App的日活指标,我可能有时要按iOS/App切分,有时要按地域切分,或是按新老用户切分。在Superset的Dashboard上我要做三个图。Redash里我可以把Query的groupby做为一个参数,这样就可以在一张图上搞定。用的时候,可以在一个Dropdown List选切分的方式。
- 数据源方面除了支持SQL以外,还支持ElasticSearch, Google Analytics, Google Spreadsheet, URL (JSON-Format)等。
缺点:
- 可视化的选项不如Superset多
- Superset对于非技术的人员相对友好一些。因为技术人员可以定义好数据源与每种指标,非技术人员接下来的各种查询都可以在Web UI上点选完成,而Redash则需要直接写SQL。不过实际上即使是Superset大部分运营和产品的人也只会看现成的Dashboard,很少有人会自己构建图表。
这两个开源产品的源码我也都读过,从软件架构与代码质量上来说,Redash要明显优于Superset。
770

被折叠的 条评论
为什么被折叠?



