文中内容仅限技术学习与代码实践参考,市场存在不确定性,技术分析需谨慎验证,不构成任何投资建议。
Apache Superset™ 是一个开源的现代数据探索和可视化平台。对于许多团队来说,Superset 可以取代或增强专有的商业智能工具。Superset 可以与各种数据源很好地集成。
从 PyPI 安装 Superset
本页介绍如何使用发布在 PyPI 上的 apache_superset
包安装 Superset。
操作系统依赖
Superset 将其数据库连接信息存储在元数据数据库中。为此,我们使用 cryptography Python 库来加密连接密码。不幸的是,该库具有操作系统级别的依赖项。
Debian 和 Ubuntu
Ubuntu 24.04 默认使用 python 3.12,Superset 当前尚不支持。您需要添加第二个 python 3.11 安装并安装所需的额外依赖项。
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.11 python3.11-dev python3.11-venv build-essential libssl-dev libffi-dev libsasl2-dev libldap2-dev default-libmysqlclient-dev
在 Ubuntu 20.04 和 22.04 中,以下命令将确保安装所需的依赖项:
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev
在 20.04 之前 的 Ubuntu 中,以下命令将确保安装所需的依赖项:
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev
Fedora 和 RHEL 衍生 Linux 发行版
使用 yum
包管理器安装以下包:
sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
在较新的 CentOS 和 Fedora 版本中,您可能需要使用 dnf
安装一组略有不同的包:
sudo dnf install gcc gcc-c++ libffi-devel python3-devel python3-pip python3-wheel openssl-devel cyrus-sasl-devel openldap-devel
此外,在 CentOS 上,您可能需要升级 pip 才能使安装生效:
pip3 install --upgrade pip
Mac OS X
如果您未使用最新版本的 OS X,我们建议您升级,因为我们发现许多人遇到的问题与旧版本的 Mac OS X 有关。更新后,安装最新版本的 XCode 命令行工具:
xcode-select --install
我们不建议使用系统安装的 Python。相反,请先安装 homebrew 管理器,然后运行以下命令:
brew install readline pkg-config libffi openssl mysql postgresql@14
您应安装较新版本的 Python。请参阅 pyproject.toml 文件以获取 Superset 官方支持的 Python 版本列表。我们建议使用 Python 版本管理器,如 pyenv(以及 pyenv-virtualenv)。
让我们确保拥有最新版本的 pip
和 setuptools
:
pip install --upgrade setuptools pip
最后,您可能需要设置 LDFLAGS 和 CFLAGS 以便某些 Python 包正确构建。您可以使用以下命令导出这些变量:
export LDFLAGS="-L$(brew --prefix openssl)/lib"
export CFLAGS="-I$(brew --prefix openssl)/include"
这些变量现在将在 pip 安装 requirements 时可用。
Python 虚拟环境
我们强烈建议在虚拟环境中安装 Superset。
您可以使用以下命令创建并激活虚拟环境。确保您使用的是兼容的 python 版本。您可能需要显式使用例如 python3.11
而不是 python3
。
# virtualenv 在 Python 3.6+ 中作为 venv 而不是 pyvenv 提供。
# 参见 https://docs.python.org/3.6/library/venv.html
python3 -m venv venv
. venv/bin/activate
或使用 pyenv-virtualenv:
# 这里我们将虚拟环境命名为 'superset'
pyenv virtualenv superset
pyenv activate superset
激活虚拟环境后,您安装或卸载的所有 Python 包都将限制在此环境中。您可以通过在命令行上运行 deactivate
来退出环境。
安装并初始化 Superset
首先,安装 apache_superset
:
pip install apache_superset
然后,定义必需配置,SECRET_KEY 和 FLASK_APP:
export SUPERSET_SECRET_KEY=YOUR-SECRET-KEY
# 对于生产使用,请确保这是一个强密钥,例如使用 `openssl rand -base64 42` 生成。参见 https://superset.apache.org/docs/configuration/configuring-superset#specifying-a-secret_key
export FLASK_APP=superset
然后,您需要初始化数据库:
superset db upgrade
通过运行以下命令完成安装:
# 在元数据数据库中创建管理员用户(使用 `admin` 作为用户名以便加载示例)
superset fab create-admin
# 加载一些数据以供使用
superset load_examples
# 创建默认角色和权限
superset init
# 要在端口 8088 上启动开发 Web 服务器,请使用 -p 绑定到另一个端口
superset run -p 8088 --with-threads --reload --debugger
如果一切顺利,您应该能够在浏览器中导航到 hostname:port
(例如,默认本地为 localhost:8088
)并使用您创建的用户名和密码登录。
Apache Superset™ 概览
Superset 快速、轻量、直观,为用户提供了丰富的功能,使不同技能水平的用户都能轻松探索并可视化数据——从简单的折线图到精细的地理空间图表,应有尽有。
强大而易用
Superset 让数据探索变得简单,无论是使用无代码可视化构建器,还是先进的 SQL IDE,都可以轻松上手。
与现代数据库无缝集成
Superset 可连接任何基于 SQL 的数据库,包括现代云原生数据库及 PB 级规模的数据引擎。
现代化架构
Superset 轻量且高度可扩展,充分利用现有数据基础设施,无需额外的数据摄取层。
丰富的可视化与仪表盘
Superset 内置 40 余种可视化类型,插件式架构便于轻松创建自定义可视化。
人人可用的自助式分析
仪表盘
通过交互式仪表盘探索数据,发现洞察。图表构建器
拖拽即可创建强大的图表和表格。SQL 实验室
编写自定义 SQL 查询,浏览数据库元数据,使用 Jinja 模板等功能。数据集
创建物理和虚拟数据集,通过统一的指标定义加速图表创建。
核心功能
40+ 预置可视化类型
支持 拖拽操作 与 SQL 查询
数据缓存 加速图表与仪表盘加载
Jinja 模板与仪表盘过滤器 打造交互式仪表盘
CSS 模板 自定义图表与仪表盘,匹配品牌视觉风格
语义层 实现 SQL 数据转换
交叉过滤、钻取详情与钻取维度 功能,支持深度数据分析
虚拟数据集 支持即席数据探索
通过 功能开关 解锁新功能
风险提示与免责声明
本文内容基于公开信息研究整理,不构成任何形式的投资建议。历史表现不应作为未来收益保证,市场存在不可预见的波动风险。投资者需结合自身财务状况及风险承受能力独立决策,并自行承担交易结果。作者及发布方不对任何依据本文操作导致的损失承担法律责任。市场有风险,投资须谨慎。