Superset安装及教程官网(http://airbnb.io/superset/installation.html)讲解的已经够详细的了,本篇以官网教程为蓝本进行说明。

入门

Superset目前使用Python 2.7和Python 3.4+进行测试。 推荐Python 3,不支持Python 2.6。

系统依赖

Superset为了安全考虑,在其元数据数据库中存储数据库连接信息。为了这个目的,他们使用了cryptography库来加密连接密码,但是这个库有操作体统级别的依赖。如果你在进行安装和初始化时碰到了错误,就需要在OS上安装这些依赖:

对于Debian和Ubuntu,以下命令将确保安装所需的依赖关系:

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev

对于Fedora和RHEL衍生产品,以下命令将确保安装所需的依赖关系:

sudo yum upgrade python-setuptools
sudo yum install gcc libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel

OSX,不推荐使用系统python。 brew的python也有pip:

brew install pkg-config libffi openssl python
env LDFLAGS="-L$(brew
--prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography

Windows在这一点上没有正式支持,但如果你想尝试它,下载get-pip.py,并运行python
get-pip.py可能需要管理员访问。 然后运行以下命令:

C:\> pip install cryptography

# You may also have to create C:\Temp
C:\> md C:\Temp

Python Virtualenv、setup tools、pip

建议在virtualenv中安装Superset。 Python 3已经提供了virtualenv,对于Python 2你需要安装它。使用pip来安装:

pip install virtualenv

您可以通过以下方式创建和激活virtualenv:

# virtualenv is shipped in Python 3 as pyvenv
virtualenv venv
. ./venv/bin/activate

在Windows上,激活它的语法有点不同:

venv\Scripts\activate

一旦你激活你的virtualenv你所做的一切都只限于virtualenv。
要退出virtualenv只需键入deactivate。

尽可能的更新到最新版本的setuptools和pip

pip
install --upgrade setuptools pip

Superset的安装和初始化

按照以下几个简单的步骤安装Superset:

# 安装superset
pip install superset

# 创建管理员用户
fabmanager create-admin --app superset

创建的表如下:8

# 初始化数据库
superset db upgrade

创建的表如下:21

# 加载样例数据
superset load_examples

创建的表如下:6

# 创建默认角色和权限
superset init

# 在8088端口启动服务
superset runserver -p 8088

# 使用-d(开发模式)来启动服务
#
superset runserver -d

安装后,您应该能够将浏览器指向正确的主机名:port
http:// localhost:8088,使用您在创建管理员帐户时输入的凭据登录,然后Menu -> Admin -> Refresh
Metadata。这个动作刷新你的所有数据源,数据源显示在Menu -> Datasources,从那里你可以开始使用你的数据!

Superset使用gunicorn来跑web server,不支持windows。

四、Load Balancer配置

如果您在负载平衡器或逆向代理(例如AWS上的NGINX或ELB)后运行Superset,您可能需要使用运行状况检查端点,以便负载均衡器知道您的Superset实例是否正在运行。这在/health提供,如果web服务器正在运行,将返回包含“OK”的200响应。

如果负载均衡器插入X-Forwarded-For
/ X-Forwarded-Proto头,则应在超集配置文件中设置ENABLE_PROXY_FIX = True以提取和使用头。

五、Superset配置

要配置应用程序,您需要创建一个文件(模块)superset_config.py并确保它在您的PYTHONPATH中。
以下是可以在该文件中配置的一些参数:

#---------------------------------------------------------
# Superset specific config
#---------------------------------------------------------
ROW_LIMIT = 5000
SUPERSET_WORKERS = 4

SUPERSET_WEBSERVER_PORT = 8088
#---------------------------------------------------------

#---------------------------------------------------------
# Flask App Builder
configuration
#---------------------------------------------------------
# Your App secret key
SECRET_KEY = '\2\1thisismyscretkey\1\2\e\y\y\h'

# The SQLAlchemy connection string
to your database backend
# This
connection defines the path to the database that stores your
# superset metadata
(slices, connections, tables, dashboards, ...).
# Note that the connection information to
connect to the datasources
# you
want to explore are managed directly in the web UI
SQLALCHEMY_DATABASE_URI = 'sqlite:////path/to/superset.db'

# Flask-WTF flag for CSRF
CSRF_ENABLED = True

# Set this API key to enable
Mapbox visualizations
MAPBOX_API_KEY = ''

此文件还允许您定义Flask App Builder(Superset使用的Web框架)使用的配置参数。
有关如何配置Superset的更多信息,请参阅Flask App Builder文档。

请确保以下配置:

SQLALCHEMY_DATABASE_URI,默认情况下存储在~/.superset/superset.db

SECRET_KEY,一个长的随机字符串

六、数据库依赖的安装和配置

Superset不附带与数据库的连接,除了Sqlite,它是Python标准库的一部分。
您需要为要用作元数据数据库的数据库安装所需的软件包,以及连接到要通过Superset访问的数据库所需的软件包。

这里有一些推荐的软件包列表。

database pypi package SQLAlchemy URI prefix
MySQL pip install mysqlclient mysql://
Postgres pip install psycopg2 postgresql+psycopg2://
Presto pip install pyhive presto://
Oracle pip install cx_Oracle oracle://
sqlite   sqlite://
Redshift pip install sqlalchemy-redshift redshift+psycopg2://
MSSQL pip install pymssql mssql://
Impala pip install impyla impala://
SparkSQL pip install pyhive jdbc+hive://
Greenplum pip install psycopg2 postgresql+psycopg2://

注意,许多其他数据库都支持,主要标准是存在一个功能的SqlAlchemy方言和Python驱动程序。
除了描述要连接的数据库的关键字之外,搜索关键字sqlalchemy应该能够将您带到正确的位置。

七、配置缓存

Superset使用Flask-Cache进行缓存。
配置缓存后端与在superset_config.py中提供符合Flask-Cache规范的CACHE_CONFIG常量一样简单。

Flask-Cache支持多个缓存后端(Redis,Memcached,SimpleCache(内存中)或本地文件系统)。
如果你要使用Memcached请使用pylibmc客户端库,因为python-memcached不能正确处理存储二进制数据。
如果你使用Redis,请安装[python-redis](https://pypi.python.org/pypi/redis)。

对于设置超时,这是在Superset元数据中完成的,并从“切片配置”到数据源的配置,到数据库的“timeosearchpath”,并最终落回在CACHE_CONFIG中定义的全局默认值。

1-0 superset的安装和配置的更多相关文章

  1. mysql-8.0.11-winx64 免安装版配置方法

    mysql-8.0.11-winx64.zip  下载地址:https://dev.mysql.com/downloads/file/?id=476233 mysql-8.0.11-winx64.zi ...

  2. guacamole 0.9.9安装与配置

    以下命令很多都需要管理权限,建议使用管理员账号执行,遇到问题可以留言. 1.首先需要安装guacamole所需要的依赖库 必需安装的库有:Cairo.libjpeg-turbo.libpng.OSSP ...

  3. CUDA8.0+VS2013的安装和配置

    首先声明,本文借鉴自:http://blog.csdn.net/u011314529/article/details/51505029 所以,可参考链接的博文.但原文有个瑕疵就是,cublas.lib ...

  4. MySQL8.0.15的安装与配置---win10

    1.下载地址 https://dev.mysql.com/downloads/installer/ 安装文件:mysql-installer-community-8.0.15.0.msi 2.安装 默 ...

  5. mysql8.0.13免安装版配置

    一.下载 下载地址:https://dev.mysql.com/downloads/mysql/ 二.解压到某个目录,例如:D:/mysql/mysql-8.0.13-winx64 三.配置环境变量 ...

  6. [转]JIRA 7.2.6与Confluence 6.0.3的安装与配置之MS SQL Server版

    相关软件版本信息 说明:下方软件可以点击链接,通过百度云盘进行下载. 操作系统:Windows 10(密码:foht)或者Windows Server 2012(密码:lsad): 数据库:SQL S ...

  7. MYSQL-8.0.11-WINX64(免安装版)配置

    1. 解压zip包到安装目录 首先,将mysql-8.0.11-winx64.zip 解压缩到 安装D:/mysql-8.0.11-winx64 目录下, 2.配置文件 在安装根目录下添加 my.in ...

  8. Linux CentOS7.0下JAVA安装和配置环境变量

    一.前言: CentOS7.0虽然自带JDK1.7和1.8,运行“java -version”命令也可以看到版本信息,但是jdk的安装环境不全,比如缺少tool.jar和dt.jar等,这就导致“ja ...

  9. MySQL 8.0.11(zip)安装及配置

    (1)下载MySQL8.0.11: (2)解压zip文件: 我解压到了D:/MySQL/mysql-8.0.11-winx64 (3)配置环境变量:   右键此电脑->属性 高级系统设置 环境变 ...

随机推荐

  1. 使用virtualenv在ubuntu上搭建python 3开发环境

    ubuntu 13.04默认的python版本是2.7的,想在其上做python3的开发会遇到问题.比如要使用pip安装软件包时,默认安装的就是python2的包.如果想安装python3的包,就需要 ...

  2. .NET项目web自动化测试实战——Selenium 2.0

    PS:这次用公司的项目来练手,希望公司不会起诉我,因为我绝对是抱着学习的态度,没有任何恶意.仅供交流学习. 该项目是基于SharePoint平台所开发的门户网站,为了切身感受一下Selenium 2. ...

  3. 在java web中获取该项目的根路径

    在jsp页面中: <% String path = application.getRealPath("").replace("\\","\\\\ ...

  4. 强大的CSS3动画库animate.css

    今天要给大家介绍一款强大的CSS3动画库animate.css,animate.css定义了大概50多种动画形式,包括淡入淡出,文字飞入.左右摇摆动画等等.使用animate.css也非常简单,你可以 ...

  5. system v进程间通信整理

    key_t键和ftok函数 三种类型的system v IPC使用key_t值作为他们的名字.头文件<sys/types.h> 把key_t这个数据类型定义为一个整数,它通常是一个至少32 ...

  6. Dropwizard与Spring Boot比较

    在这篇文章中我们将讨论的Java轻量级框架Dropwizard和Spring Boot的相似性和差异. 首先,这是一个选择自由和速度需要,无论你在Dropwizard和Spring Boot选择哪个, ...

  7. MySQL中乐观锁和悲观锁 原理、区别

    悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁.传统的关系型数据 ...

  8. 【C++】线程_beginthreadex参数说明

    unsigned long _beginthreadex( void * _Security, //第1个参数:安全属性,NULL为默认安全属性 unsigned _StackSize, //第2个参 ...

  9. AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题

    AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子. 一 AOP的基本概念 (1)Asp ...

  10. C# HttpRequest基础连接已经关闭: 接收时发生意外错误

    在c#中使用HttpWebRequest时,频繁请求一个网址时,过段时间就会出现“基础连接已经关闭: 接收时发生意外错误”的错误提示. 将webRequest的属性设置成下面的,经测试可以解决. we ...