您的位置:首页 > 服务器 > > 正文

clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

更多 时间:2021-10-07 00:45:55 类别:服务器 浏览量:433

clickhouse 底层架构

使用 Apache Superset 可视化 ClickHouse 数据的两种方法

clickhouse 底层架构(使用 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)。

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    方法 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 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    输入以下值:

    数据库名称:clickhouse-public
    SQLALCHEMY 网址:clickhouse+native://demo:demo@github.demo.trial.altinity.cloud /default?secure=true

    Altinity.Cloud是一个公共的数据集站点。

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    按下测试连接按钮。成功后保存链接。

    连接过程

    连接使用了 SQLAlchemy,这是一种用于连接 ClickHouse 以及许多其他数据库的通用 API。

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    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。

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

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

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    创建一个时间序列图表

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    在仪表盘发布图表。

    选择DASHBOARD 按钮,将建立的图表添加进来。

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)

    以上就是Apache Superset可视化ClickHouse数据的全过程了。

    到此这篇关于使用 Apache Superset 可视化 ClickHouse 数据的两种方法的文章就介绍到这了,更多相关Apache Superset可视化ClickHouse 内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!

    您可能感兴趣