加密网络流量
对 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_insertcompressconnection_timeoutcontinueBatchOnErrorcreateDatabaseIfNotExistcustom_http_headerscustom_http_paramsdefault_query_settingsdisable_frameworks_detectionjdbc_ignore_unsupported_valuesjdbc_resultset_auto_closejdbc_sql_parserjdbc_use_max_result_rowsjdbcCompliancemax_execution_timepasswordsession_timezonesocket_timeouttypeMappingsuse_server_time_zoneuse_time_zoneuserwrapperObject
功能支持
如需让 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 | |
| 毫秒 | |
| 微秒 | |
| 具体化视图 | |
| 与前一时间段相比的指标 | |
| 近似计数不同 | |
| 自定义日历 |