ClickHouse

将 Looker 连接到 ClickHouse 数据库,以分析数据并构建交互式信息中心。此连接有助于在 Looker 中提供 ClickHouse 数据以进行报告和分析,从而支持直接的数据驱动型决策。

本页面将指导您配置 ClickHouse 实例和 Looker 连接设置,包括如何加密网络流量、定义用户权限以及查看支持的功能。Looker 支持 ClickHouse 0.2 或更高版本,以及使用现代化 JDBC 驱动程序和对称聚合支持的 ClickHouse 26+。

加密网络流量

对 Looker 应用与数据库之间的网络流量进行加密是一种最佳实践。可以考虑启用安全的数据库访问文档页面上介绍的某个选项。

如需在服务器端启用 SSL 加密,请参阅 ClickHouse 全局服务器设置文档。

用户和安全

首先,在 ClickHouse 服务器上配置 Looker 用户。您可以使用 SQL (CREATE USER) 或通过 users.xml 文件中的 users 部分来配置 ClickHouse 数据库用户。按照 ClickHouse 访问权限文档配置用户访问权限。以下基本示例使用 users.xml:

<!-- Users and ACL. -->
<users>
    <looker>
        <password>CHANGEIT</password>
        <networks incl="networks" />
        <profile>default</profile>
        <quota>default</quota>
    </looker>

    <web>
        <password></password>
        <networks incl="networks" />
        <profile>web</profile>
        <quota>default</quota>
        <allow_databases>
           <database>test</database>
        </allow_databases>
        <allow_dictionaries>
           <dictionary>test</dictionary>
        </allow_dictionaries>
    </web>
</users>

同样在此文件中,配置适当的数据库访问权限:

<allow_databases>
    <database>database_1</database>
    <database>database_2</database>
    <database>database_3</database>
</allow_databases>

创建与数据库的 Looker 连接

在 Looker 的管理部分中,选择连接,然后点击添加连接。

填写连接详情。大多数设置对于大多数数据库方言都是通用的。如需了解相关信息,请参阅将 Looker 连接到您的数据库文档页面。下面介绍了一些设置:

  • 方言:选择 ClickHouse 26+ 或 ClickHouse。
  • 主机:ClickHouse 服务器的可访问主机名或 IP 地址。
  • 端口:可通过 HTTP(S) 访问 ClickHouse 服务的端口。
    • 默认情况下,HTTP 连接使用 8123,HTTPS 连接使用 8443。
    • 默认情况下,ClickHouse 原生 TCP 命令行客户端会使用端口 9000 和 9440,但 Looker 必须使用 HTTP(S) 端口连接到 ClickHouse。
    • 您的 ClickHouse 管理员可能已在 ClickHouse 配置中使用 http_port 或 https_port 设置选择了备用端口。请向您的 ClickHouse 管理员咨询适合您配置的设置。
  • 数据库:数据库名称(必须是 ClickHouse 权限中允许的数据库之一)。
  • 用户名:数据库用户名。
  • 密码:数据库密码。
  • SSL:勾选此选项可通过 SSL/TLS 连接到 ClickHouse。
  • 验证 SSL:(可选)勾选此选项可在 ClickHouse 服务器上强制执行严格的 SSL 证书和主机名验证。仅当您使用的 SSL 证书由普遍受信任的证书授权机构签名时,才选择验证 SSL。如果您使用的是自签名 SSL 证书,请勿勾选此设置。
  • 其他 JDBC 参数:(可选)其他 JDBC 字符串参数。如需查看 Looker 支持的参数列表,请参阅本页面上的支持的 JDBC 参数部分。

如需验证连接是否成功,请点击连接设置页面底部状态详情部分中的测试连接按钮。

如果 Looker 显示可以连接,请按连接以创建连接。

然后,您的数据库连接会添加到 Looker 连接 管理页面上的列表中。

支持的 JDBC 参数

对于 ClickHouse,Looker 支持在连接的其他 JDBC 参数字段中使用以下 JDBC 参数。如需了解这些参数,请参阅数据库的相关文档。

ClickHouse 26+ 参数

  • async_insert
  • autoCommit
  • compress
  • compress_algorithm
  • compress_level
  • connect_timeout
  • connection_timeout
  • continueBatchOnError
  • createDatabaseIfNotExist
  • custom_settings
  • database
  • databaseTerm
  • externalDatabase
  • fetchSize
  • format
  • jdbcCompliant
  • keep_alive_timeout
  • max_buffer_size
  • max_execution_time
  • max_result_bytes
  • max_result_rows
  • max_threads
  • namedParameter
  • query_timeout
  • receive_timeout
  • result_overflow_mode
  • retry
  • session_check
  • session_id
  • session_timeout
  • session_timezone
  • socket_timeout
  • ssl
  • ssl_mode
  • transactionSupport
  • use_server_time_zone
  • use_time_zone
  • wait_for_async_insert
  • wrapperObject

ClickHouse(旧版)参数

  • beta.row_binary_for_simple_insert
  • compress
  • connection_timeout
  • continueBatchOnError
  • createDatabaseIfNotExist
  • custom_http_headers
  • custom_http_params
  • default_query_settings
  • disable_frameworks_detection
  • jdbc_ignore_unsupported_values
  • jdbc_resultset_auto_close
  • jdbc_sql_parser
  • jdbc_use_max_result_rows
  • jdbcCompliance
  • max_execution_time
  • password
  • session_timezone
  • socket_timeout
  • typeMappings
  • use_server_time_zone
  • use_time_zone
  • user
  • wrapperObject

功能支持

为了让 Looker 支持某些功能,您的数据库方言也必须支持这些功能。

ClickHouse 26+ 功能支持

自 Looker 26.20 起,ClickHouse 26+ 支持以下功能:

功能 是否支持?
Looker (Google Cloud Core)
对称聚合
派生表
永久性 SQL 派生表
原生永久性派生表
稳定视图
查询终止
基于 SQL 的透视
时区
SSL
小计
其他 JDBC 参数
区分大小写
位置类型
名单类型
百分位
不同值百分位
SQL Runner “Show Processes”
SQL Runner “Describe Table”
SQL Runner “Show Indexes”
SQL Runner “Select 10”
SQL Runner “Count”
SQL “Explain”
OAuth 2.0 凭证
背景信息评论
连接池
HLL 草图
汇总感知
增量 PDT
毫秒
微秒
物化视图
环比衡量
近似计数不同
数据库内分析模型
自定义日历

ClickHouse 功能支持

自 Looker 26.20 起,ClickHouse 支持以下功能:

功能 是否支持?
Looker (Google Cloud Core)
对称聚合
派生表
永久性 SQL 派生表
原生永久性派生表
稳定视图
查询终止
基于 SQL 的透视
时区
SSL
小计
其他 JDBC 参数
区分大小写
位置类型
名单类型
百分位
不同值百分位
SQL Runner “Show Processes”
SQL Runner “Describe Table”
SQL Runner “Show Indexes”
SQL Runner “Select 10”
SQL Runner “Count”
SQL “Explain”
OAuth 2.0 凭证
背景信息评论
连接池
HLL 草图
汇总感知
增量 PDT
毫秒
微秒
物化视图
环比衡量
近似计数不同
数据库内分析模型
自定义日历

后续步骤

完成数据库连接后,配置身份验证选项。