使用 Apache Superset 可视化 ClickHouse 数据

Apache Superset是一个强大的BI工具,它提供了查看和探索数据的方法。它在 ClickHouse 用户中也越来越受欢迎。
我们将介绍安装 Superset 的 2 种方法,然后展示如何从 Superset 连接到您的第一个 ClickHouse 数据库。代码示例基于 Ubuntu 18.04、Superset 1.1.0 和 clickhouse-sqlalchemy 0.1.6。
方法一:Python虚拟环境
第一种方法直接在您的主机上安装 Superset。我们将首先创建一个 Python 虚拟环境。以下是常用命令。
python3 -m venv clickhouse-sqlalchemy
. clickhouse-sqlalchemy/bin/activate
pip install --upgrade pi
安装并启动 Superset
安装依赖包
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
处理与 ClickHouse 的 Superset 连接的命令。可能需要根据您的环境稍微调整。
export FLASK_APP=superset
pip install apache-superset
superset db upgrade
superset fab create-admin
superset load_examples
superset init
安装 clickhouse-sqlalchemy 驱动程序
pip install clickhouse-sqlalchemy
clickhouse-driver 版本必须为 0.2.0 或更高版本。
pip freeze |grep clickhouse
clickhouse-driver==0.2.0
clickhouse-sqlalchemy==0.1.6
启动 Superset 并登录
是时候开始 Superset 了。运行以下命令:
superset run -p 8088 --with-threads --reload --debugger
浏览器访问 localhost:8088
您将看到如下所示的登录屏幕。输入您在 Superset 安装期间定义的管理员登录名和密码(例如,admin/secret)。

方法 2:使用 Docker Compose 运行 Superset
如果您不想纠结于 Python 版本、虚拟环境和 pip。可以使用docker。
首先安装docker和docker-compose。
安装完成查看版本。
$ docker --version
Docker version 19.03.4, build 9013bf583a
$ docker-compose --version
docker-compose version 1.29.1, build c34c88b2
使用docker-compose 安装superset
git clone https://github.com/apache/superset
cd superset
touch ./docker/requirements-local.txt
echo "clickhouse-driver>=0.2.0" >> ./docker/requirements-local.txt
echo "clickhouse-sqlalchemy>=0.1.6" >> ./docker/requirements-local.txt
docker-compose -f docker-compose-non-dev.yml up
运行成功后 浏览器访问 localhost:8088
默认登录名/密码是admin / admin。
连接到 ClickHouse
无论您选择哪种安装方法,您现在都可以连接到您的第一个 ClickHouse 数据库。
登录后,您将看到一个屏幕,其中包含您最近的工作以及当前的仪表板。选择右上角的数据选项卡,然后选数据库。将出现一个页面,其中包含您当前的数据库连接。按+ 数据库按钮添加新数据库。

输入以下值:
数据库名称:clickhouse-public
SQLALCHEMY 网址:clickhouse+native://demo:demo@github.demo.trial.altinity.cloud /default?secure=true
Altinity.Cloud是一个公共的数据集站点。

按下测试连接按钮。成功后保存链接。
连接过程
连接使用了 SQLAlchemy,这是一种用于连接 ClickHouse 以及许多其他数据库的通用 API。

SQLAlchemy 连接使用支持多个驱动程序的专用 URL 格式。要连接到 ClickHouse,您需要提供一个类似于我们之前显示的 URL:
clickhouse+native://demo:demo@github.demo.trial.altinity.cloud/default?secure=true
连接ClickHouse 有两个主要的协议,原生TCP和HTTP。
建议使用原生TCP。
clickhouse+native://<user>:<password>@<host>:<port>/<database>[?options…]
配置Superset
我们已经成功连接了clickhouse,下面我们使用superset建立一个仪表盘。
首先,让我们创建数据集。选择 clickhouse-public 作为连接,然后选择 schema default和 table ontime。

有了数据集后,创建第一个图表就很简单了。只需单击数据集页面上的数据集名称。Superset 将切换到一个屏幕来定义一个图表,如下所示。

创建一个时间序列图表

在仪表盘发布图表。
选择DASHBOARD 按钮,将建立的图表添加进来。


以上就是Apache Superset可视化ClickHouse数据的全过程了。
更多大数据,数据可视化技术,欢迎关注大数据流动~
使用 Apache Superset 可视化 ClickHouse 数据的更多相关文章
- Apache Superset 1.2.0教程 (二)——快速入门(可视化王者英雄数据)
上一篇我们已经成功的安装了superset,那么该如何可视化我们的数据呢?本文将可视化王者英雄的数据,快速的入门Superset. 一.连接数据源 首先确保mysql可以正常连接使用,并且准备好数据. ...
- 浅淡 Apache Kylin 与 ClickHouse 的对比
作者简介 周耀,Kyligence 解决方案架构师,Apache Kylin.Apache Superset Contributor. Apache Kylin 和 ClickHouse 都是目前市场 ...
- SpringCloud学习笔记(5):Hystrix Dashboard可视化监控数据
简介 上篇文章中讲了使用Hystrix实现容错,除此之外,Hystrix还提供了近乎实时的监控.本文将介绍如何进行服务监控以及使用Hystrix Dashboard来让监控数据图形化. 项目介绍 sc ...
- 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/ Tod ...
- [EXP]Apache Superset < 0.23 - Remote Code Execution
# Exploit Title: Apache Superset < 0.23 - Remote Code Execution # Date: 2018-05-17 # Exploit Auth ...
- 从 Apache ORC 到 Apache Calcite | 2019大数据技术公开课第一季《技术人生专访》
摘要: 什么是Apache ORC开源项目?主流的开源列存格式ORC和Parquet有何区别?MaxCompute为什么选择ORC? 如何一步步成为committer和加入PMC的?在阿里和Uber总 ...
- 使用vue构建一个可视化大数据平台
使用vue全家桶以及v-charts和datav实现一个github可视化大数据界面展示,没有设计搞的原因,只能忽略设计编写一下界面, 用户只需要登录的时候填写自己github用户名.就可以看到数据展 ...
- 基于腾讯云存储COS的ClickHouse数据冷热分层方案
一.ClickHouse简介 ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS),支持PB级数据量的交互式分析,ClickHouse最初是为YandexMetrica ...
- 使用Cesium Stories来可视化时序数据
Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ Cesium可以用来可视化随时间变化的数据,无论是跨越数百年的地 ...
随机推荐
- Mybatis-Plus02 CRUD
先将快速开始01看完,再看这个文档 配置日志 我们所有的sql现在都是不可见的,我们希望知道它是怎么执行的,所以我们就必须看日志,开发的时候打开,上线的时候关闭 在application.proper ...
- ACM、考研、就业,在我心底已经有了明确的答案_人生没有完整的,只有无悔的
思绪再三,还是决定放弃了ACM,走上考研路(我现在是大二下学期,马上结束).虽然我们ACM的带队老师经常说:"ACM和考研是不冲突的",但是我感觉做ACM和考研的关系不是很紧密,而 ...
- SparkSQL电商用户画像(三)之环境准备
五. 电商用户画像环境搭建 众所周知,Hive的执行任务是将hql语句转化为MapReduce来计算的,Hive的整体解决方案很不错,但是从查询提交到结果返回需要相当长的时间,查询耗时太长.这个主要原 ...
- 【Web前端HTML5&CSS3】03-字符实体与语义标签
笔记来源:尚硅谷Web前端HTML5&CSS3初学者零基础入门全套完整版 目录 字符实体与语义标签 1. 字符实体 2. meta标签 3. 语义标签 4. 块元素与行内元素 块元素(bloc ...
- XCTF.MISC 新手篇
目录 泪目 1.this_is_flag 2.pdf 3.如来十三掌 4.give_you_flag 5.坚持60s 6.gif 7.掀桌子 8.ext3 9.stegano 10.SimpleRAR ...
- BUAA OS实验调试指南:从看懂到看开
一般的调试流程其实很简单:发现问题,稳定复现,确定临界条件,定位问题,修复问题,核查结果.迭代这个过程,形成一个闭环 老实说,OS的实验代码,开箱体验极差,程序跳来跳去,进了Lab4后还要考虑内核态切 ...
- Node.js-Events 模块总结与源码解析
Events 描述 大多数 Node.js API 采用异步事件驱动架构,这些对象都是EventEmitter类的实例(Emitter),通过触发命名事件(eventName or type)来调用函 ...
- Spring Boot 允许跨域设置失败的问题深究
在公司开发过程中,一个前后端分离的项目遇见了跨域的问题. 前端控制台报错:No 'Access-Control-Allow-Origin' header is present on the reque ...
- systemctl服务------字符和图像界面切换systemctl set-default multi-user.target systemctl isolate multi-user.target #当前立即进入字符模式 [root@room4pc09 桌面]# systemctl isolate graphical.target #当前立即进入图形模式
查看服务运行状态 [root@room4pc09 桌面]# systemctl status crond #查看服务运行状态 ● crond.service - Command Scheduler L ...
- stressapptest工具
1.在H桌面V7B04上运行stressapptest工具编译报错.请研发协助! 2.因为stressapptest工具在兆芯和龙芯都能正常运行,所以我怀疑是工具stressapptest未在H桌面V ...