ClickHouse

加密网络流量

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

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

用户和安全性

首先,在 ClickHouse 服务器上配置 Looker 用户。ClickHouse 数据库用户不是使用 CREATE USER 命令创建的。请按照 ClickHouse 访问权限文档 中的说明,在 users.xml 文件中配置 users 部分。下面是一个基本示例:

<!-- 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。
  • 主机:可访问的主机名。
  • 端口:ClickHouse 服务可通过 HTTP(S) 访问的端口。
    • 默认情况下,HTTP 连接将使用 8123,HTTPS 将使用 8443。
    • 端口 9000 和 9440 默认由 ClickHouse 命令行客户端使用,但 Looker 无法使用这些端口连接到 ClickHouse。
    • 您的 ClickHouse 管理员可能已在 ClickHouse 配置中通过 http_port/https_port 设置选择了备用端口。请向 ClickHouse 管理员询问适合您本地配置的设置。
  • 数据库:数据库名称(必须是 users.xml 文件中允许的数据库之一)。
  • 用户名:数据库用户名。
  • 密码:数据库密码。
  • 其他 JDBC 参数:(可选)其他 JDBC 字符串参数。如需查看 Looker 支持的参数列表,请参阅本页面的支持的 JDBC 参数部分。

  • 维护时间表:ClickHouse 不支持 PDT,因此可以忽略此设置。

  • SSL:选中此选项可通过 SSL 连接到 ClickHouse。

  • 验证 SSL:(可选)选中此选项可在 ClickHouse 服务器上强制执行严格的主机名验证。仅当您使用的是由一般可信的证书授权机构签名的 SSL 证书时,才选中此选项。如果您使用的是自签名 SSL 证书,请将其取消选中。

如需验证连接是否成功,请点击测试 。如需了解问题排查信息,请参阅测试数据库连接文档页面。

如需保存这些设置,请点击连接

支持的 JDBC 参数

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

  • 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 支持某些功能,您的数据库方言也必须支持这些功能。

截至 Looker 26.8,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
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同
自定义日历