* Sparkline dates aren't formatting in Time Series Table (#6976) * Exclude venv for python linter to ignore * Fix NaN error * Fix the white background shown in SQL editor on drag (#7021) This PR sets the background-color css property on `.ace_scroller` instead of `.ace_content` to prevent the white background shown during resizing of the SQL editor before drag ends. * Show tooltip with time frame (#6979) * Fix time filter control (#6978) * Enhancement of query context and object. (#6962) * added more functionalities for query context and object. * fixed cache logic * added default value for groupby * updated comments and removed print (cherry picked from commitd5b9795f87) * [fix] /superset/slice/id url is too long (#6989) (cherry picked from commit6a4d507ab6) * [WIP] fix user specified JSON metadata not updating dashboard on refresh (#7027) (cherry picked from commitcc58f0e661) * feat: add ability to change font size in big number (#7003) * Add ability to change font sizes in Big Number * rename big number to header * Add comment to clarify font size values * Allow LIMIT to be specified in parameters (#7052) * [fix] Cursor jumping when editing chart and dashboard titles (#7038) (cherry picked from commitfc1770f7b7) * Changing time table viz to pass formatTime a date (#7020) (cherry picked from commit7f3c145b1f) * [db-engine-spec] Aligning Hive/Presto partition logic (#7007) (cherry picked from commit05be866117) * [fix] explore chart from dashboard missed slice title (#7046) (cherry picked from commita6d48d4052) * fix inaccurate data calculation with adata rolling and contribution (#7035) (cherry picked from commit0782e831cd) * Adding warning message for sqllab save query (#7028) (cherry picked from commitead3d48133) * [datasource] Ensuring consistent behavior of datasource editing/saving. (#7037) * Update datasource.py * Update datasource.py (cherry picked from commitc771625f10) * [csv-upload] Fixing message encoding (#6971) (cherry picked from commit48431ab5b9) * [sql-parse] Fixing LIMIT exceptions (#6963) (cherry picked from commit3e076cb60b) * Adding custom control overrides (#6956) * Adding extraOverrides to line chart * Updating extraOverrides to fit with more cases * Moving extraOverrides to index.js * Removing webpack-merge in package.json * Fixing metrics control clearing metric (cherry picked from commite6194051f4) * [sqlparse] Fixing table name extraction for ill-defined query (#7029) (cherry picked from commit07c340cf82) * [missing values] Removing replacing missing values (#4905) (cherry picked from commit61add606ca) * [SQL Lab] Improved query and results tabs rendering reliability (#7082) closes #7080 (cherry picked from commit9b58e9f492) * Fix filter_box migration PR #6523 (#7066) * Fix filter_box migration PR #6523 * Fix druid-related bug (cherry picked from commitb210742ad2) * SQL editor layout makeover (#7102) This PR includes the following layout and css tweaks: - Using flex to layout the north and south sub panes of query pane so resizing works properly in both Chrome and Firefox - Removal of necessary wrapper divs and tweaking of css in sql lab so we can scroll to the bottom of both the table list and the results pane - Make sql lab's content not overflow vertically and layout the query result area to eliminate double scroll bars - css tweaks on the basic.html page so the loading animation appears in the center of the page across the board (cherry picked from commit71f1bbd2ec) * [forms] Fix handling of NULLs (cherry picked from commite83a07d3df) * handle null column_name in sqla and druid models (cherry picked from commit2ff721ae07) * Use metric name instead of metric in filter box (#7106) (cherry picked from commit003364e74e) * Bump python lib croniter to an existing version (#7132) Package maintainers should really never delete packages, but it appears this happened with croniter and resulted in breaking our builds. This PR bumps to a more recent existing version of the library (cherry picked from commit215ed392a1) * Revert PR #6933 (#7162) * [bugfix] SQL Lab 'Filter Results' doesn't stick (#7104) When using a "Search Results" criteria, the subset of rows that match the criteria get displayed. While this the filter is applied, if another query is run, the filter is still active, but not displayed in the input text box. After this change, the state of the input box sticks after subsequent queries. (cherry picked from commitd5e8d663dc) * Injectable statsd client (#7138) * Add ability to inject statsd client; some py test/reqs updates - Updated the metrics logger to allow construction with an existing statsd client, so that it can be configured by external systems or libs. - added requirements to requirements-dev.txt which are needed to run tests-eg coverage, nose - removed dependency on mock lib, it is in python stdlib now - updated tox.ini to remove the now-superfluous deps * add license to test file, and remove blank line at EOF (cherry picked from commitba19a62412) * [Lyft-GA] Enable color consistency in a dashboard (#7135) * Enable color consistency in a dashboard Moved actions, minor UI, allowed dashboard copy Fix linting errors Undo unintentional change Updated and added unit tests Fail quietly if package has not been updated Fail quietly on dashboard copy if package is old * Update packages * Remove unnecessary code * Addressed Grace's comments * Small fix for item key * Reset chart's color during exploration * Do not reset chart form data when exploring chart * Fix double scroll bars when content of sql result table overflows horizontally (#7168) The PR substracts the scrollbar height from the height of the container of the react virtualized table so we don't see double scrollbars. (cherry picked from commit7ffcabd5c0) * Change number format default * Use smart formatter instead * fix merge issues * Use SMART_NUMBER
Superset
Apache Superset (incubating) is a modern, enterprise-ready business intelligence web application
[this project used to be named Caravel, and Panoramix in the past]
Screenshots & Gifs
View Dashboards
Slice & dice your data
Query and visualize your data with SQL Lab
Visualize geospatial data with deck.gl
Choose from a wide array of visualizations
Apache Superset
Apache Superset is a data exploration and visualization web application.
Superset provides:
- An intuitive interface to explore and visualize datasets, and create interactive dashboards.
- A wide array of beautiful visualizations to showcase your data.
- Easy, code-free, user flows to drill down and slice and dice the data underlying exposed dashboards. The dashboards and charts acts as a starting point for deeper analysis.
- A state of the art SQL editor/IDE exposing a rich metadata browser, and an easy workflow to create visualizations out of any result set.
- An extensible, high granularity security model allowing intricate rules on who can access which product features and datasets. Integration with major authentication backends (database, OpenID, LDAP, OAuth, REMOTE_USER, ...)
- A lightweight semantic layer, allowing to control how data sources are exposed to the user by defining dimensions and metrics
- Out of the box support for most SQL-speaking databases
- Deep integration with Druid allows for Superset to stay blazing fast while slicing and dicing large, realtime datasets
- Fast loading dashboards with configurable caching
Database Support
Superset speaks many SQL dialects through SQLAlchemy, a Python ORM that is compatible with most common databases.
Superset can be used to visualize data out of most databases:
- MySQL
- Postgres
- Vertica
- Oracle
- Microsoft SQL Server
- SQLite
- Greenplum
- Firebird
- MariaDB
- Sybase
- IBM DB2
- Exasol
- MonetDB
- Snowflake
- Redshift
- Clickhouse
- Apache Kylin
- Google BigQuery
- more! look for the availability of a SQLAlchemy dialect for your database to find out whether it will work with Superset
Apache Druid (Incubating)!
On top of having the ability to query your relational databases, Superset ships with deep integration with Druid (a real time distributed column-store). When querying Druid, Superset can query humongous amounts of data on top of real time dataset. Note that Superset does not require Druid in any way to function, it's simply another database backend that it can query.
Here's a description of Druid from the http://druid.io website:
Druid is an open-source analytics data store designed for business intelligence (OLAP) queries on event data. Druid provides low latency (real-time) data ingestion, flexible data exploration, and fast data aggregation. Existing Druid deployments have scaled to trillions of events and petabytes of data. Druid is best used to power analytic dashboards and applications.
Installation & Configuration
Resources
- Mailing list
- Gitter (live chat) Channel
- Docker image (community contributed)
- Slides from Strata (March 2016)
- Stackoverflow tag
- Join our Slack
- DEPRECATED Google Group
Contributing
Interested in contributing? Casual hacking? Check out Contributing.MD
Who uses Apache Superset (incubating)?
Here's a list of organizations who have taken the time to send a PR to let the world know they are using Superset. Join our growing community!
- AiHello
- Airbnb
- Airboxlab
- Aktia Bank plc
- Amino
- Apollo GraphQL
- Ascendica Development
- Astronomer
- Brilliant.org
- Capital Service S.A.
- Clark.de
- Cloudsmith
- CnOvit
- Dial Once
- Digit Game Studios
- Douban
- Endress+Hauser
- FBK - ICT center
- Faasos
- Fordeal
- GfK Data Lab
- Grassroot
- Hostnfly
- HuiShouBao
- jampp
- Konfío
- Kuaishou
- Lime
- Lyft
- Maieutical Labs
- Myra Labs
- Now
- PeopleDoc
- Ona
- Pronto Tools
- QPID Health
- Qunar
- Scoot
- ScopeAI
- Shopee
- Shopkick
- Steamroot
- Showmax
- Tails.com
- THEICONIC
- Tobii
- Tooploox
- TrustMedis
- Udemy
- VIPKID
- Windsor.ai
- Yahoo!
- Zaihang
- Zalando





