⚠️ WARN: This doc might be outdated. Use with caution. Only tested with Python v3.7
🙋♂️ INFO: If you have fixes/suggestions to for this doc, please comment below.
🌟 STAR: This doc if you found this document helpful.
Pre-Requisites
-
Install Microsoft Visual C++ 14.x standalone: Build Tools for Visual Studio 2019 (x86, x64, ARM, ARM64)
-
Select latest version of MSVCv142 — VS 2019 C++ x64/x86 build tools
-
Select Windows 10 SDK
-
-
Install Python 3.7.x
-
Install PIP within the installer
-
Add Python 3.7 to PATH
-
-
Use CMD to execute below commands (Recommended)
Installation
Ideally run these commands sequentially …
:: Create directory to host the files mkdir D:\superset cd /d D:\superset :: Check Versions python --version pip --version systeminfo | findstr /C:"OS" :: Upgrade Setuptools & PIP pip install --upgrade setuptools pip :: Create Virtual Environment named venv python -m venv venv :: Activate Virtual Environment venv\Scripts\activate :: Workaround - Install PIP within Virtual Environment curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py --ssl-no-revoke python get-pip.py :: Workaround - Upgrade Setuptools & PIP within venv pip install --upgrade setuptools pip :: (OUTDATED) Install Superset Requirements - Not required towards end of 2020 :: -- ref: https://gist.github.com/mark05e/d9cccae129dd11a21d7219eddd7d9923#gistcomment-3614048 :: curl https://raw.githubusercontent.com/apache/incubator-superset/master/requirements.txt -o requirements.txt --ssl-no-revoke :: pip install -r requirements.txt :: Install Superset pip install apache-superset :: (OUTDATED) Workaround - Install specific versions for compatibility (USE WITH CAUTION - ONLY IF NEEDED) :: pip uninstall pandas :: pip install pandas==0.23.4 :: pip install Flask==1.0 :: pip install SQLAlchemy==1.2.18 :: Install DB Drivers - Postgres & MS SQL pip install psycopg2 pip install pymssql :: Open Scripts folder to do superset related stuff cd venv\Scripts :: Create application database python superset db upgrade :: Create admin user set FLASK_APP=superset flask fab create-admin :: Load some data to play with (optional) python superset load_examples :: Create default roles and permissions python superset init :: Start web server on port 8088 python superset run -p 8088 --with-threads --reload --debugger
(OUTDATED) Sample requirements.txt
Click to expand!
This sample can be used as a reference if something does not work correctly or incase of any installation issues.
alembic==1.0.11
amqp==2.5.0
apispec==1.3.3
asn1crypto==0.24.0
attrs==19.1.0
Babel==2.7.0
billiard==3.6.0.0
bleach==3.1.0
boto3==1.4.7
botocore==1.7.48
cchardet==2.1.4
celery==4.3.0
certifi==2019.6.16
cffi==1.12.3
chardet==3.0.4
click==6.7
colorama==0.3.9
contextlib2==0.5.5
cryptography==2.7
defusedxml==0.6.0
docutils==0.15.2
et-xmlfile==1.0.1
Flask==1.0
Flask-AppBuilder==2.1.10
Flask-Babel==0.12.2
Flask-Caching==1.7.2
Flask-Compress==1.4.0
Flask-JWT-Extended==3.21.0
Flask-Login==0.4.1
Flask-Migrate==2.5.2
Flask-OpenID==1.2.5
Flask-SQLAlchemy==2.4.0
Flask-WTF==0.14.2
flower==0.9.3
future==0.16.0
geographiclib==1.49
geopy==1.20.0
gunicorn==19.9.0
humanize==0.5.1
idna==2.8
ijson==2.4
isodate==0.6.0
itsdangerous==1.1.0
jdcal==1.4.1
Jinja2==2.10.1
jmespath==0.9.4
jsonlines==1.2.0
jsonschema==3.0.2
kombu==4.6.3
linear-tsv==1.1.0
Mako==1.1.0
Markdown==3.1.1
MarkupSafe==1.1.1
marshmallow==2.19.5
marshmallow-enum==1.4.1
marshmallow-sqlalchemy==0.17.0
numpy==1.17.0
openpyxl==2.4.11
pandas==0.23.4
parsedatetime==2.4
pathlib2==2.3.4
polyline==1.4.0
prison==0.1.2
psycopg2==2.8.3
pure-sasl==0.6.1
pycparser==2.19
pydruid==0.5.6
PyHive==0.6.1
PyJWT==1.7.1
pymssql==2.1.4
pyrsistent==0.15.4
python-dateutil==2.8.0
python-editor==1.0.4
python-geohash==0.8.5
python3-openid==3.1.0
pytz==2019.2
PyYAML==5.1.2
requests==2.22.0
rfc3986==1.3.2
s3transfer==0.1.13
simplejson==3.16.0
six==1.12.0
SQLAlchemy==1.2.18
SQLAlchemy-Utils==0.34.1
sqlparse==0.3.0
superset==0.28.1
tableschema==1.6.0
tabulator==1.23.0
thrift==0.11.0
thrift-sasl==0.3.0
tornado==5.1.1
unicodecsv==0.14.1
Unidecode==1.1.1
urllib3==1.25.3
vine==1.3.0
webencodings==0.5.1
Werkzeug==0.15.5
WTForms==2.2.1
xlrd==1.2.0
This output can be obtained by running this command against your venv
pip freeze > requirements.txt
🔎 References
-
Superset Installation Guide
-
Windows Compilers for Python
-
Direct Link to download Visual Studio Build Tools 2019 (might be broken)
-
Stackoverflow — Remove PIP installed packages
-
Workaround — Pandas package downgrade (Ref 1, Ref 2)
-
Workaround — SQLAlchaemy package downgrade (Ref 1)
-
@philip-sparks suggestion from superset issue #5788
-
@hainv suggestion
-
@ronna update command — ref 1, ref 2
mark05e / apache-superset-on-windows10.md
Introduction
What is Superset
- Superset is a Data Visualization tool which is cloud-native, highly available and scalable as it works very well with containers.
- You can easily install it on a Kubernetes cluster using helm charts and then customize it to your needs
- It was developed at Airbnb by the creator of Airflow, Maxime Beauchemin and became a top level project in Apache foundation in 2021.
– Significant contributions were made by Lyft and Dropbox.
– It is also available as a managed service by Maxime’s company Preset - Superset is currently run at scale at many companies. For example, Superset is run in Airbnb’s production environment inside Kubernetes and serves 600+ daily active users viewing over 100K charts a day.
What this article will cover
This article will cover steps to locally install superset on Windows with DB drivers for MS SQL Server, Dremio, MySQL and Pyodbc. While performing this installation I had to dig a lot to get it working. The end result is the article below especially the Dockerfile below which will be very helpful for you.
Prerequisites
Docker Desktop
If you do not already have Docker Desktop installed please follow the steps mentioned in the link below.
https://docs.docker.com/desktop/windows/install/
Once everything is installed correctly you should see a Docker icon in your system tray
MSSQL Server
This is only needed if you are using local version of MSSQL server.
For installing MSSQL Server Download the server installation from below link
https://go.microsoft.com/fwlink/?linkid=866662
Once server is installed install the SQL Server Management Studio (SSMS) from below link from Microsoft
https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15
Once SSMS is installed, connect to the server using localhost and Windows Authentication mode using SSMS.
After you are connected, create a new user login and call it anything you want. I named it superset. Important thing to note is to enable “SQL Server and Windows Authentication mode” on server properties (as shown below). You can skip all these steps if you already have a SQL Server available anywhere on your network.
Dremio
To install Dremio you will need to download the docker image from docker hub
https://hub.docker.com/r/dremio/dremio-oss/
The way you can do is from your command prompt on Windows.
Step1:- Open Command Prompt
Step2:- Run the following command
docker pull dremio/dremio-oss
Step3:- Then run below docker command to start the container
docker run -p 9047:9047 -p 31010:31010 -p 45678:45678 dremio/dremio-oss
Once the command completes check your Docker containers list as shown in Docker step above (in Docker Desktop section), you should see a Dremio container running.
Step4:- Then go to the page localhost:9047 on your web browser and for the first time it will ask you to setup a new user account. Create the account by following the instructions on the screen and keep a note of the username and password. You will need them while connecting from Superset to Dremio
Step5:- Once you are logged in to Dremio, upload a sample csv file to Dremio with data which you would like to visualize on superset. As you can see in below screenshot I have uploaded WheatWorldPSD.csv file using the button highlighted in red
Now you are all set to install Superset along with necessary drivers
Custom Dockerfile for Superset
I have spent lots of hours in getting this right so that everything works. Please use below Dockerfile I used to install custom DB drivers for MSSQL, MYSQL and DREMIO.
FROM apache/superset # Switching to root to install the required packages USER root # install FreeTDS and dependencies RUN apt-get update \ && apt-get install unixodbc -y \ && apt-get install unixodbc-dev -y \ && apt-get install freetds-dev -y \ && apt-get install freetds-bin -y \ && apt-get install tdsodbc -y \ && apt-get install --reinstall build-essential -y \ && apt-get install rpm2cpio -y \ && apt-get install cpio -y # populate "ocbcinst.ini" RUN echo "[FreeTDS]\n\ Description = FreeTDS unixODBC Driver\n\ Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so\n\ Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so" >> /etc/odbcinst.ini # Install Dremio ODBC driver RUN pip install pyodbc RUN wget https://download.dremio.com/odbc-driver/1.5.4.1002/dremio-odbc-1.5.4.1002-1.x86_64.rpm RUN rpm2cpio dremio-odbc-1.5.4.1002-1.x86_64.rpm | cpio -idmv RUN mv opt/dremio-odbc /opt/dremio-odbc # Example: installing the MySQL driver to connect to the metadata database # if you prefer Postgres, you may want to use `psycopg2-binary` instead RUN pip install mysqlclient # Example: installing a driver to connect to Redshift # Find which driver you need based on the analytics database # you want to connect to here: # https://superset.apache.org/installation.html#database-dependencies #RUN pip install pydobc RUN pip install sqlalchemy-redshift RUN pip install sqlalchemy-dremio RUN pip install pymssql # Switching back to using the `superset` user USER superset
How to run the above docker file
Open the above dockerfile in Visual Studio code
Build the image (may take some time) – remember the dot “.” is important at the end of command. Do not miss it!. Run below command in the terminal window of your VS code
docker build -t custom_superset .
Run Docker container
docker run -d -p 8080:8088 --name superset custom_superset
Create Superset admin account
docker exec -it superset superset fab create-admin --username admin --firstname Superset --lastname Admin --email admin@superset.com --password admin
Migrate local DB to latest
docker exec -it superset superset db upgrade
Load Examples
docker exec -it superset superset load_examples
Initialize Superset
docker exec -it superset superset init
Then login at below URL with username/password as admin/admin
http://localhost:8080/login/ — u/p: [admin/admin]
There you have it Superset running as a docker container on your local machine 🙂 You are wlecome!
Next time you want to run it just start it from the Container list window on your Docker Desktop. All your connectivity settings will remain intact.
Connectivity to MS SQL server
Step1: Goto Data->Databases dropdown and select Add Database as shown in the screenshot below
Step2:- Choose Microsoft SQL Server from the Supported Databases dropdown in the popup as shown below. You can select Other if you don’t see it as an option.
Step3:- On the next screen give a meaningful name to your connection and enter the below string as SQLALCHEMY URI. Replace the username and password which is superset and superset90 in my case.
Also as superset is running under docker container and my MS SQL Server is running on local host, I needed to use the host.docker.internal as hostname. You can replace it with your SQL server hostname.
Connection String
mssql+pymssql://superset:superset90@host.docker.internal:1433/RawData/
Connectivity to Dremio
Steps for Dremio are similar to as shown above for MSSQL server. Just use the below connection string.
Connection String
dremio://raghav.ds:dremio9003@172.17.0.3:31010/dremio?SSL=1
Again, here also replace your own username and password. Mine were raghav.ds and dremio9003 respectively.
To replace the hostname (172.17.0.33) get the bridge network IP address that Docker has assigned to your Dremio container using the below command
docker network inspect bridge
Conclusion
I had to research and try a lot of things to get everything working. I am sharing the result of my hard work here. If you like this please do share it with people who need it. Also let me know if you have any questions.
I have a Masters in Data Analytics and 15 years of experience in Data Engineering and Data Science space.
View all posts by Raghav
Apache Superset is a modern data exploration and visualization platform. Superset can be installed locally using Docker and Docker Compose or from scratch. On Windows Apache Superset is not officially supported, however, there are other option to get superset running on Windows such as installation of VM or Windows Subsystem for Linux (WSL) 2. Superset is also provided as a SaaS service by Preset. In this post we will see how to install Apache Superset in Windows computer.
Superset Configuration Components
Superset is a cloud-native scalable business intelligence platform which allows you to configure below components;
- Web Server. Superset can run on the following web servers; Gunicorn, Nginx and Apache.
- Metadata Database. Metadata can be stored in MySQL, Postgres or MariaDB databases among other database systems. However, as of now the default metadata database is SQLite.
- Message Queue. Superset supports Redis, RabbitMQ,SQS among other messaging services.
- Results Backend. Superset uses the following backend services; S3, Redis, Memcached etc.
- Caching Services. Superset leverages Redis and Memcached caching services among others.
Apache Superset installation on Windows
- Ensure you have Python installed. Run this command in CMD to check for Python and its version. If you don’t have Python,install it and add the path to the environment variable.
- Check if you have pip utility installed with the below command in CMD. If not install it before you proceed.
In case you’ve installed pip run the below command to upgrade.
python -m pip install --upgrade pip
- Navigate to your preferred location and create a folder. In my case I have created a folder called superset inside my C directory.
- Create virtual environment. Open CMD terminal in the folder you have created for superset installation. Run below command in CMD to create the virtual environment called supersetvenv.
python -m venv supersetvenv
- Activate Virtual Environment. In your CMD navigate to the Scripts folder inside the virtual environment folder and activate it using the command below.
- Install apache-superset. Use below command to install superset.
pip install apache-superset
You can also specify a specific version of superset using below command. Make sure to check the versions available from the pypi site.
pip install apache-superset==0.37.2
- Initialize metadata database. Use the command below to setup application database.
python superset db upgrade
- Create an admin user in your metadata database. Use `admin` as username to be able to load the examples.
set FLASK_APP=superset
flask fab create-admin
- Load examples.
python superset load_examples
- Create default roles and permissions.
- Start web server on port 8088.
python superset run -p 8088 --with-threads --reload --debugger
After starting the web server open your browser and navigate to the specified address. http://127.0.0.1:8088/ . You should be able to view the below Apache Superset login page. Login with the admin username and password you created during installation.
Conclusion
In this post we seen how to install Apache Superset on Windows computer from scratch. Apache superset is a heavily uses Python programming language as a backend language and hence requires you to have Python installed to proceed with the installation process. Superset enables you to select the webserver to use such as Gunicorn, Nginx and Apache. Also you can set up the metadata database using standard database systems such as MySQL and Postgres. In the next post we will discuss about various components of Apache Superset. To learn more about Superset visit our previous post.
Apache SuperSet is a «modern enterprise-class BI (business intelligence) Web application» open source by Airbnb that provides a lightweight data query and visualization solution for data analysis by creating and sharing dashboards.
With the recent release of the new 1.2.0 version, this tutorial starts from the beginning with Apache SuperSet.
For those of you who don’t want to go to the official website to download the installation file, please pay attention to the big data flow, reply to superset20210712 to download the installation file.
Apache Superset installation (Windows version)
Windows Superset installation is very simple, since the latest version of the PIP library has been added, so we can use the PIP library to install the superset easily.
Install the Python environment
We used Anaconda to quickly install the Python environment.
Anaconda refers to an open source Python distribution that contains a large number of science packages. Also provides a lot of useful tools, installation is very friendly.
The most recent installation package download address
https://www.anaconda.com/prod…
Various versions of the package can be downloaded from the following address.
https://repo.anaconda.com/arc…
We just need to download the Windows version. Install the exe file after downloading.
Remember to check the Add Environment Variable box during installation
With your Python environment in place, go to the CMD command line and enter a command to verify
python -V
Python 3.8.3
Apache Superset installation
Update the PIP library
First update the PIP library
pip install --upgrade pip
After you wait for the update to complete, you can take a look at the apache-superset version of the library
pip install apache-superset==
As you can see, the latest version is 1.2.0
2 install the apache — superset
pip install --upgrade apache-superset
It takes some time for the dependency packages to be installed. Make sure everything is installed properly and any problems are fixed.
3 configure apache — superset
# SuperSet DB Upgrade
# initialize user superset fab create-admin
Set the username and password in turn
Superset init; superset init
4 start
Start the superset with the following instruction
superset run -p 8088 --with-threads --reload --debugger
Use the set user name and password to log in
A brand new page. Try it out.
This article explains in detail the installation process of Apache SuperSet version 1.2.0 (Windows version). In the next article, we will conduct the specific operation and practice of SuperSet.
For more SuperSet articles, check out Big Data Flowing
For those of you who don’t want to go to the official website to download the various packages in this article, please pay attention to the flow of big data and reply to superset20210712 in the background to download.
Appendix: Pit record
PyYAML failed to install superset
Attempting uninstall: pyyaml Found existing installation: PyYAML 5.3.1
ERROR: Cannot uninstall ‘PyYAML’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
Use the following instructions to install
pip install pyyaml --ignore-installed PyYAML
2. The superset fails to install Python-Geohash
ERROR: Microsoft Visual C++ 14.0 is required. Get it with «Build Tools for Visual Studio»: https://visualstudio.microsof…
ERROR: Failed building wheel for python-geohash
Microsoft Visual C++ 14.0 Microsoft Visual C++ 14.0 Microsoft Visual C++ 14.0
3, load_examples failed
Ask me that question privately
4, enter the page error permission problem
The superset init was not executed
This article by the blog multiple platform
OpenWriteRelease!
Contents
- 1 How To Install Apache Superset On Windows
- 2 How To Install Apache Superset On Windows | Dashboard Building | Data Analytics | Ashutosh Tripathi
- 2.1 Conclusion
- 2.1.1 Related image with how to install apache superset on windows
- 2.1.2 Related image with how to install apache superset on windows
- 2.1 Conclusion
Welcome to our blog, where How To Install Apache Superset On Windows takes center stage. We believe in the power of How To Install Apache Superset On Windows to transform lives, ignite passions, and drive change. Through our carefully curated articles and insightful content, we aim to provide you with a deep understanding of How To Install Apache Superset On Windows and its impact on various aspects of life. Join us on this enriching journey as we explore the endless possibilities and uncover the hidden gems within How To Install Apache Superset On Windows. Incubator compose docker clone repo current 2 you supersets that new superset completes git step Step repository launch incubator terminal superset-git folder supersets 1 apache via github in superset github up- should your clone in a successfully your clone with the once following command command directory- see
How To Install Apache Superset On Windows Dashboard Building Data
How To Install Apache Superset On Windows Dashboard Building Data
1 2 in your case, i would install it in a docker. – malt jul 24, 2019 at 6:05 add a comment 2 answers sorted by: 0 with the help of python 3.8.10 embed amd64.zip, you can do the job. and here is the solution in details, github alitrack superset app prepare job download 3 files python 3.8.10 embed amd64.zip get pip.py. Installing superset from scratch os dependencies superset stores database connection information in its metadata database. for that purpose, we use the cryptography python library to encrypt connection passwords. unfortunately, this library has os level dependencies. debian and ubuntu.
Cómo Instalar Apache En Windows Con Imágenes Wikihow
Cómo Instalar Apache En Windows Con Imágenes Wikihow
Step 1 clone superset’s github repository clone superset’s repo in your terminal with the following command: $ git clone github apache incubator superset.git once that command completes successfully, you should see a new incubator superset folder in your current directory. step 2 launch superset via `docker compose up`. · jul 7, 2021 learn to install apache superset in windows subsystem for linux ubuntu 20.04 now to install apache superset in windows subsystem for linux with ubuntu os, please. How to install apache superset on windows | #apachesuperset | #dataanalytics step 1: install docker desktop for windows:download using this link: www. How to install apache superset locally on windows with database drivers for ms sql server, dremio, mysql and pyodbc. introduction what is superset superset is a data visualization tool which is cloud native, highly available and scalable as it works very well with containers.
How To Install Apache Superset On Windows | Dashboard Building | Data Analytics | Ashutosh Tripathi
How To Install Apache Superset On Windows | Dashboard Building | Data Analytics | Ashutosh Tripathi
how to install apache superset on windows | #apachesuperset | #dataanalytics step 1: install docker desktop for windows: with a install.py, it is very easy to install apache superset on windows. this video will guide you to install apache superset without any issue on windows 10. below are instruction and commands this is a tutorial on apache superset. in this tutorial, i am simply setting up the environment for this data visualisation tool. though this is quick video on how to install apache superset in windows subsystem for linux. in this video we will learn how to setup apache superset. easy way to install apache superset on windows 10, for the last version, please visit github alitrack superset app. i will walk you through pulling down apache superset and pushing it into a docker container. this is quick video for apache superset & how to install it in windows 8.1. this is tested with python 3.6 and visual studio build apache superset installation and configuration contact: రవి కుమార్ . లంకె ravi kumar lanke blog: download apache: apachelounge download how to install the apache2.4 httpd webserver as a service on a
Conclusion
After exploring the topic in depth, it is clear that the article provides valuable insights concerning How To Install Apache Superset On Windows. From start to finish, the writer presents an impressive level of expertise on the topic. In particular, the section on Y stands out as particularly informative. Thank you for reading this article. If you have any questions, feel free to reach out via the comments. I look forward to your feedback. Furthermore, here are some similar articles that might be helpful: