Redash是一款开源的BI工具,提供了基于Web的数据库查询和数据可视化功能,本文介绍如何使用Redash连接Lindorm宽表引擎。

前提条件

已安装Redash,具体信息,请参见Redash官网

安装插件

  • 如果用拉取Docker镜像方式部署Redash,则需要将redash_server,redash_scheduler,redash_adhoc_worker,redash_scheduled_worker四个容器中的/app目录作为$REDASH_SETUP_FOLDER,具体操作如下:
    1. 下载Lindorm.pnglindorm.py文件,下载链接,请参见redash
    2. Lindorm.png文件复制到$REDASH_SETUP_FOLDER/client/app/assets/images/db-logos/$REDASH_SETUP_FOLDER/client/dist/images/db-logos/目录下。
    3. lindorm.py文件复制到$REDASH_SETUP_FOLDER/redash/query_runner/目录下。
    4. 在文件$REDASH_SETUP_FOLDER/redash/settings/__init__.py中按如下方式增加一行。
      default_query_runners = [
        'redash.query_runner.athena',
        'redash.query_runner.big_query',
        ........
        'redash.query_runner.uptycs',
        'redash.query_runner.lindorm',      # Add this line
      ]
    5. 重启Redash。
  • 如果用源码的方式部署Redash,则需要将$REDASH_SETUP_FOLDER作为代码的根目录。

配置数据源

  1. 登录Redash。
  2. 单击页面右上角的Redash设置图标图标。
  3. Data Sources页签,单击New data source
  4. New data source页面,单击Lindorm对应的图标。
  5. 配置Lindorm的连接地址、端口、用户名和密码。
    说明 请使用CQL访问地址和端口。
  6. 单击Create
    您可以通过 Test Connection检测连接状态。

操作示例

如果您想绘制一张包含各地气温随时间变化的曲线图表,数据库按照如下方式设计,包含气温(temp)、测试时间(local_time)、城市(city)、索引(id)这几个字段:

CREATE TABLE log.temp
(
    local_time timestamp,
    temp int,
    id int,
    city text,
    primary key ((id))
)
  1. 在查询编辑器(Query Editor)页面,按如下方式编写CQL语句。
    SELECT city, temp, local_time FROM temp
  2. 查询的数据如下。
    对接Redash-1
  3. 单击New Visualization
    X Column选择 local_timeY Columns选择 tempGroup by选择 City,绘制的图标如下。 对接Redash-2