Airbnb/Apache Superset – the open source dashboards and visualization tool – first impressions and link to a demo
https://assemblinganalytics.com/post/airbnbapache-superset-first-impressions-and-link-to-a-demo/
Today I spent some time looking into Superset, the analytics and BI open source tool from Airbnb which is now being incubated into Apache. Superset is into the Tableau and PowerBI arena and it is quite mature already, mature enough for business users too (though not as customizable as other solutions).
You can try Superset yourself by visiting the demo I set up at superset.assemblinganalytics.com (user and password “demo”).
Superset dashboards look like this:
It does not get to the level of polish of Tableau yet from a design perspective, but dashboards do look beautiful and definitely much better than what business users are used to today from the MS Office software. One thing to notice right from the start is that Superset is set to support as many visualizations as possible by leveraging existing open source projects (like plot.ly), this is a big differentiator versus other dashboard solutions where visualizations are less numerous.
But they key differentiator of Superset is that it is open source and that is built on an extensible framework (Flask) in a programming language that is becoming the de-facto go-to language for data science (Python). I have run into issues with traditional enterprise software vendors many times on missing feature xyz or even visualization xyz, in this cases if you are lucky you can get that feature in the next release 6-8 months from now, if not (which is usually the case) you just have to deal with the missing feature. One example of that is the lack of an Excel export in Tableau, which is due to Tableau just not listening to its users and wanting to push online usage rather than data export, so bottom line I had to build something myself, but it’s a hack and right now not supported.
Being open source Superset is also more flexible, adding features or visualization is something you could do if you can program, or you could sponsor if you have a budget. Talking about budget, Superset is completely free, no limitations other than the computing power of your server. This means that adding an additional, say, 1,000 users is going to be very cheap. Cost is important as developing a data-driven organization means all your employees have access to not only advanced analytical dashboards but also to powerful tools to do additional analysis on their own, this is one of the weak points of Tableau.
OK, so Superset is cool and might have a bright future, but is it ready for enterprise usage now? The answer is: it depends, analytics culture plays an important role here. To highlight pros and cons more in detail, I’ll go over a point by point analysis comparing with tools I have used in my work experience (Tableau, Cognos and BusinessObjects).
Please remember those are first impressions about Superset.
Learning curve
Superset is much easier to start with than Tableau and let’s not even compare to old stuff like Cognos or Business Objects. Superset wins hands down in this department.
Online vs desktop
Superset works on all most used browsers and has been built as a web app, so it does not require any additional desktop installations for power features. As such, Superset is the only tool out there that can be used completely in the web browser which is an advantage. You might think Business Objects is also used online, but the way I have seen it being used by most users is to extract Excel files to then work on desktop, this is not a fully online data exploration workflow.
Data exploration
Superset’s mission is to make it easy to explore data and find insight. This is something that has a lot of potentials as it can scale (a big part of that is the lack of license costs on a per user basis). Below you can see how this data explore works, it changes depending on the chart type that you want to visualize.
It’s snappy and quite responsive, but there is no refresh button so sometimes you have to save in order to “refresh”, a bit un-intuitive but it works. The experience is not as interactive as Tableau and there is a lot of small details that are missing. Overall it works, but it needs to develop further. Reading around, the team at Airbnb seems to be very focused on making this experience better, so I expect there will be improvements in the future. However, it’s already a quite impressive tool and once you get into the flow you can use it to get business insights already.
I plan to test this further with my own data, so stay tuned for more commentary on this one!
Adding data
As of now, uploading data in Superset is not possible, you have to upload data separately in a database. While I understand why this is the case – data management does not belong into an analytics tool – I do see some challenges with that, especially for beginners. You can, however, build a relatively small Flask app to handle this use case (which is uploading Excel files, .csv, etc.). One thing I am wondering is if the Superset navigation bar on top can inherit additional drop down menus. Ideally, users would not even realize they are not using Superset when doing data operations and uploads.
Visual filters
This is a big one for me and right now it’s a miss in Superset. In Tableau users can click on graphs and that can trigger additional actions (usually a filter on other graphs). Filtering features, in general, are a bit limited in Superset and I hope that will improve over time. I did some research on the roadmap, but I could not find any discussions about action triggers on charts.
Tooltips
The tooltips in Superset cannot be customized. Tableau has very powerful tool tips that can display a lot of information on various fields, this is not the case in Superset.
As you can see above, the highlighted tooltip is good, but no additional information can be added to it.
Calculations
Superset queries databases, there is a nice SQL editor to build custom SQL, but that’s where it stops. This means that right now if you step out of SQL you can’t build the calculations you need.
However, Superset runs on top of Pandas, which is THE python library for data crunching and manipulations (in many cases it can replace R and SASS easily). So, I think that SQL Lab might expand one day in something more than just SQL, maybe adding custom functions that run on top of Pandas data frames? I think this direction would make sense, so I wouldn’t be surprised to see it coming at some point.
Some ideas of future developments
One strong advantage of Superset, which right now does not have as many features as Tableau or even PowerBI, is that it is open source. You know what else is open source? WordPress. What if Superset goes the direction of WordPress? What if Superset becomes the WordPress of analytic CMS’s? Superset could easily go in that direction as by using the blueprints framework of Flask it can be extended with additional web apps and plugins – easily. Although there doesn’t seem to be an integration for this use case yet if this happens Superset might scale beyond being a dashboard web application to be a full-fledged BI and data science solution. This architecture makes sense as by leveraging plugins you can fit analytics to the exact needs of your organization. Compare that to running a full fledged Business Objects solution, which is an “all in but not what you need” solution, and you’ll see the benefits.
Some ideas that come to mind of additional functionality that could be built as a plugin:
- A notification system. Think a system where admins can schedule email reports or alert rules for sending a notification when some event happens (i.e. you just converted a big customer today, etc.).
- A data management system. Think running simple ETL tasks using a simple online data pipeline tool. I am guessing a web interface for Airbnb Airflow would suffice, but I did not check this one out yet
- A wiki
- A forum
- A certification system to rank the quality of dashboards (maybe some dashboards for executives needs to be checked by finance first before they get an “updated as of…” flag, etc.)
- An integration with one of the data science notebook or workbench applications
- And much much more
I think there are so many ways this could go, which is why I am studying Superset and I plan to keep an eye on it. To be completely fair, some of the above could be done also with Tableau and PowerBI by leveraging their javascript API, but so far that ecosystem has not produced any quality plug-ins I can think of. Also, Superset is built from the ground up to be used on the web browser and to be extended modularly, it’s a much better premise for flexibility and extensibility than closed source software.
Conclusions
Is Superset a replacement of all other BI tools out there? No. Can it grow to be a strong competitor? Yes. I do suspect Superset will always do things slightly differently though, so the organizations leveraging it do need to have a certain culture of analytics, but there is potential. Superset can live together with other analytics tools such as Tableau or Power BI. It is important to keep in mind that Superset scales better as you don’t incur enormous license costs and it’s built with data analysts in mind. Superset wants everybody in the organization to be a data scientist, at least a bit. Other tools are more geared towards power users that distribute reports and dashboards. Ultimately, it’s this difference in vision that might set Superset apart from other similar tools in the enterprise world.
Airbnb/Apache Superset – the open source dashboards and visualization tool – first impressions and link to a demo的更多相关文章
- [EXP]Apache Superset < 0.23 - Remote Code Execution
# Exploit Title: Apache Superset < 0.23 - Remote Code Execution # Date: 2018-05-17 # Exploit Auth ...
- root cause org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, "XXX")
在执行一个查询语句的时候,mybatis报错:root cause org.apache.ibatis.ognl.OgnlException: source is null for getProper ...
- org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, "enterpCd")-Mybatis报错
一.问题由来 下午快要下班时,登录测试服务器查看日志信息,看看有没有新的异常信息,如果有的话好及时修改.结果一看果然有新的异常信息. 主要的异常信息如下: 2020-10-13 14:51:03,03 ...
- 使用 Apache Superset 可视化 ClickHouse 数据
Apache Superset是一个强大的BI工具,它提供了查看和探索数据的方法.它在 ClickHouse 用户中也越来越受欢迎. 我们将介绍安装 Superset 的 2 种方法,然后展示如何从 ...
- Apache Superset 1.2.0教程 (二)——快速入门(可视化王者英雄数据)
上一篇我们已经成功的安装了superset,那么该如何可视化我们的数据呢?本文将可视化王者英雄的数据,快速的入门Superset. 一.连接数据源 首先确保mysql可以正常连接使用,并且准备好数据. ...
- 【译】Six Open Source Dashboards to Organize Your Data
作者:Ben Gregory on Jun 29, 2016 译者:carsonzhu 在天文学家看来,我们相信每个组织都可以从数据的正确集中,组织和清理中受益. 我们正在建立一个公司来做到这一点 ...
- win10下apache superset的使用
官方文档:http://superset.apache.org/ 一.环境准备 安装python3即3.4以上版本 二.python创建一个虚拟环境用来作为superset的容器 -pip3 inst ...
- Apache Superset 1.2.0教程 (三)—— 图表功能详解
通过之前章节的学习,我们已经成功地安装了superset,并且连接mysql数据库,可视化了王者英雄的数据.使用的是最简单Table类型的图表,但是superset还支持非常多的图表类型. 本文我们将 ...
- Caused by: org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, "mil_id")
今天在使用mybatis处理数据库的时候,突然抛出了上述异常,让我感到很惊讶,因为在处理save的时候,在Mybatis的配置文件中,我根本就没有使用到ognl表达式,系统怎么会抛出上述异常.而且之前 ...
随机推荐
- Oracle Enterprise Linux 64-bit 下Oracle11g的监听配置修改及测试步骤
测试环境:Oracle Enterprise Linux 64-bit (5.8版本) + Oracle 11g 64位 相关说明: Oracle11g64位软件的安装位置为/u01/app/orac ...
- mysql删除重复数据只保留一条
mysql删除重复数据只保留一条 新建一张测试表: CREATE TABLE `book` ( `id` char(32) NOT NULL DEFAULT '', `name` varchar(10 ...
- 12.2、Libgdx的图像之清屏
(官网:www.libgdx.cn) 在Libgdx中的清屏操作不同于普通的OpenGL应用.唯一的不同是访问OpenGL context. 代码如下: @Override public void r ...
- Dynamics CRM2013 picklist下拉项行数控制
CRM2013和前面几个版本相比有了很大的变化,本文中讲述的picklist亦然.CRM2013的picklist效果图如下所示 目前能看到的是会根据下拉内容项的数量不同而显示不同的下拉行数,但有时客 ...
- Linux多线程实践(9) --简单线程池的设计与实现
线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收.所以 ...
- Linux多线程实践(8) --Posix条件变量解决生产者消费者问题
Posix条件变量 int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr); int pthread_co ...
- [java]负数的二进制编码——越是基础的越是要掌握
),第二位代表有几个10(即几个101),第三位代表有几个100(即有几个102)-,用小学课本上的说法就是:个位上的数表示几个1,十位上的数表示向个10,百位上的数表示几个100-- 同理可证 ...
- java中throw与throws
类或函数声明,用throws表示,函数体中,可能抛出的错误,后接多个. 1.系统自动抛出的异常 系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常. 2.语句抛出的异常 用户程序自定义的异常和 ...
- 任务管理器中的PID找不到
PID是Process ID的简称,这对WINDOWS开发人员来说是非常有用的信息,但对于普通用户来说则根本不必去理会. 举个例子来说: 在网站发布的时候,需要安装IIS,那么iis的tcp的80 ...
- Working with DVT Components
Introduction to ADF Data Visualization Components - Graphs, Gauge, Maps, Pivot Table and Gantt Pur ...