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 数据的更多相关文章

  1. Apache Superset 1.2.0教程 (二)——快速入门(可视化王者英雄数据)

    上一篇我们已经成功的安装了superset,那么该如何可视化我们的数据呢?本文将可视化王者英雄的数据,快速的入门Superset. 一.连接数据源 首先确保mysql可以正常连接使用,并且准备好数据. ...

  2. 浅淡 Apache Kylin 与 ClickHouse 的对比

    作者简介 周耀,Kyligence 解决方案架构师,Apache Kylin.Apache Superset Contributor. Apache Kylin 和 ClickHouse 都是目前市场 ...

  3. SpringCloud学习笔记(5):Hystrix Dashboard可视化监控数据

    简介 上篇文章中讲了使用Hystrix实现容错,除此之外,Hystrix还提供了近乎实时的监控.本文将介绍如何进行服务监控以及使用Hystrix Dashboard来让监控数据图形化. 项目介绍 sc ...

  4. 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 ...

  5. [EXP]Apache Superset < 0.23 - Remote Code Execution

    # Exploit Title: Apache Superset < 0.23 - Remote Code Execution # Date: 2018-05-17 # Exploit Auth ...

  6. 从 Apache ORC 到 Apache Calcite | 2019大数据技术公开课第一季《技术人生专访》

    摘要: 什么是Apache ORC开源项目?主流的开源列存格式ORC和Parquet有何区别?MaxCompute为什么选择ORC? 如何一步步成为committer和加入PMC的?在阿里和Uber总 ...

  7. 使用vue构建一个可视化大数据平台

    使用vue全家桶以及v-charts和datav实现一个github可视化大数据界面展示,没有设计搞的原因,只能忽略设计编写一下界面, 用户只需要登录的时候填写自己github用户名.就可以看到数据展 ...

  8. 基于腾讯云存储COS的ClickHouse数据冷热分层方案

    一.ClickHouse简介 ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS),支持PB级数据量的交互式分析,ClickHouse最初是为YandexMetrica ...

  9. 使用Cesium Stories来可视化时序数据

    Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ Cesium可以用来可视化随时间变化的数据,无论是跨越数百年的地 ...

随机推荐

  1. Windows核心编程 第八章 用户方式中线程的同步(下)

    8.4 关键代码段 关键代码段是指一个小代码段,在代码能够执行前,它必须独占对某些共享资源的访问权.这是让若干行代码能够"以原子操作方式"来使用资源的一种方法.所谓原子操作方式,是 ...

  2. Asp.NetCore Web开发之跨域问题

    在前后端分离的web开发中,解决跨域问题是不可避免的,为什么会出现跨域问题呢,这主要是因为web中的"同源策略",浏览器出于安全原因,不让用户随便访问不同于当前站点的资源,也就是说 ...

  3. LinkedList作为栈和队列的使用

    最近在LeekCode用java写一些算法时,经常遇到要使用栈和队列结构,使用栈的话,Stack已经不被推荐使用了,所以栈和队列我们通常都是用LinkedList这种双链表结构实现.Linkedlis ...

  4. MySQL关于日期为零值的处理

    前言: 前面文章我们介绍过日期和时间字段的查询方法,最近遇到日期值为零的问题.原来了解过和 sql_mode 参数设置有关,但还不是特别清楚,本篇文章将探究下MySQL怎么处理日期值为零的问题. 1. ...

  5. 【BUAA软工】Visual Lab Online——功能规格说明书

    项目 内容 班级:北航2020春软件工程 博客园班级博客 作业:明确和撰写软件的功能规格说明书 功能规格说明书 当前版本:v1.0 修订历史: 版本号 修订时间 修订说明 v1.0 2020/04/0 ...

  6. 调用免费API查询全年工作日、周末、法定节假日、节假日调休补班数据

    前言 日常开发中,难免会用到判断今天是工作日.周末.法定节假日.节假日调休补班做一些业务处理,例如:仅在上班时间给用户推送消息.本文记录调用免费API查询全年工作日.周末.法定节假日.节假日调休补班数 ...

  7. systemctl list-unit-files

    [CentOS]centos7上查看服务开机启动列表 systemctl list-unit-files centos7上查看服务开机启动列表 命令: systemctl list-unit-file ...

  8. 面试阿里P6难在哪?(面试难点)

    对于很多没有学历优势的人来说,面试大厂是非常困难的,这对我而言,也是一样,出身于二本,原本以为就三点一线的生活度过一生,直到生活上的变故,才让我有了新的想法和目标,因此我这个二本渣渣也奋斗了起来,竟拿 ...

  9. 使用LUKS加密你的磁盘

    计算机数据的安全,保密性在现在的生活中显得越来越重要.随着数字化的时代的来临,越来越多的数据被数字化,特别是更多有关于我们隐私的数据在不断生成,甚至还有我们需要离线保存的密钥等.而且通常我们使用磁盘, ...

  10. mysql基础之数据库变量(参数)管理

    数据库的数据存放路径:[root@ren7 mysql]# pwd /var/lib/mysql [root@ren7 mysql]# ls aria_log.00000001 ibdata1 mul ...