Amazon Redshift、Amazon Redshift 2.1 及更高版本,以及 Amazon Redshift Serverless 2.1 及更高版本

Looker 支持与 Amazon Redshift、Amazon Redshift 2.1+ 和 Amazon Redshift Serverless 2.1+ 建立连接。

  • 对于 Amazon Redshift 连接,Looker 使用 PostgreSQL JDBC 驱动程序。
  • 对于 Amazon Redshift 2.1+ 和 Amazon Redshift Serverless 2.1+ 连接,Looker 使用 Redshift JDBC 驱动程序。

您还可以选择使用 Amazon Redshift Spectrum 访问 Amazon Redshift 中的数据,以访问存储在 S3 中的数据。

加密网络流量

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

如果您有兴趣使用 SSL 加密,请参阅Amazon Redshift 文档,了解如何为连接配置安全选项

如果您将使用 SSH 隧道,则必须将 Redshift 客户端和 SSH 服务器设置为 MTU 1500

用户和安全性

首先,创建 Looker 用户。 将 password 更改为唯一的安全密码:

CREATE USER looker WITH PASSWORD 'password';

如需了解密码限制,请参阅 Amazon Redshift 文档

接下来,授予适当的权限:

GRANT USAGE ON SCHEMA public TO looker;
GRANT SELECT ON TABLE public.table1 TO looker;
GRANT SELECT ON TABLE public.table2 TO looker;
...
GRANT SELECT ON TABLE public.tableN TO looker;

如需让 Looker 访问生成 LookML 所需的信息架构数据以及 SQL Runner 侧边栏所需的数据,请运行以下命令:

GRANT SELECT ON TABLE information_schema.tables TO looker;
GRANT SELECT ON TABLE information_schema.columns TO looker;

如果您想向 looker 用户授予对所有表的 GRANT SELECT 权限,请执行以下查询:

GRANT SELECT ON ALL TABLES IN SCHEMA public TO looker;

为了获得可接受的 Redshift 性能,您需要设置适当的分布键和排序键。如需了解详情,请参阅Redshift 文档

临时架构设置

以管理员用户身份登录 Redshift 数据库后,运行以下命令:

CREATE SCHEMA looker_scratch AUTHORIZATION looker;

如果 looker_scratch 架构已创建或权限不正确:

ALTER SCHEMA looker_scratch OWNER TO looker;

设置 search_path

最后,您应设置适当的 search_path,Looker SQL Runner 会使用该路径从数据库中检索某些元数据。假设您已创建名为 looker 的用户和名为 looker_scratch 的临时架构,则命令如下所示:

ALTER USER looker SET search_path TO '$user',looker_scratch,schema_of_interest,public;
                                                            ^^^^^^^^^^^^^^^^^^
                                                            ^^^^^^^^^^^^^^^^^^
                                             include a comma-separated list of
                                            all schemas you'll use with Looker

(可选)使用 Amazon Redshift Spectrum 访问 S3 中的数据

您可以在 Looker 中充分利用 Amazon Redshift Spectrum 的性能。

Spectrum 显著扩展了 Redshift 的功能和易用性,让用户无需先将数据加载到 Redshift 中,即可访问存储在 S3 中的数据。您甚至可以将 S3 数据与存储在 Redshift 中的数据联接起来,Redshift 优化器会负责最大限度地提高查询性能,同时优化查询的 S3 部分和 Redshift 部分。如需了解如何使用 Amazon Spectrum 设置访问权限,请参阅有关使用 Amazon Redshift 的新 Spectrum 功能的社区帖子。

创建 Looker 与数据库的连接

完成数据库配置后,您可以按照以下步骤连接到数据库:

  1. 点击 Looker 主菜单 图标 ,然后选择管理 (如果尚未显示管理 菜单)。(如果显示的是探索开发 菜单,您可能需要点击后退箭头。)
  2. 管理 菜单中,选择连接 ,然后点击添加连接
  3. 方言 下拉菜单中,选择 Amazon RedshiftAmazon Redshift 2.1+Amazon Redshift Serverless 2.1+
  4. 填写连接详情。这些设置中的大多数设置对于大多数数据库方言都是通用的。如需了解详情,请参阅将 Looker 连接到您的数据库文档页面。
  5. 如需验证连接是否成功,请点击测试 。如需了解问题排查信息,请参阅测试数据库连接文档页面。
  6. 如需保存这些设置,请点击连接

支持的 JDBC 参数

对于 Amazon Redshift、Amazon Redshift 2.1+ 和 Amazon Redshift Serverless 2.1+,Looker 支持在连接的其他 JDBC 参数 字段中使用以下 JDBC 参数。如需了解这些参数,请参阅数据库的文档。

  • AccessKeyID
  • AllowDBUserOverride
  • ApplicationName
  • AuthMech
  • AutoCreate
  • ClusterID
  • connectTimeout
  • DbGroups
  • DbUser
  • HOST
  • IdP_Host
  • IdP_Port
  • IdP_Tenant
  • loginTimeout
  • LogLevel
  • password
  • PORT
  • Preferred_Role
  • Profile
  • queryGroup
  • Region
  • SecretAccessKey
  • SessionToken
  • socketTimeout
  • ssl
  • sslFactory
  • sslmode
  • tcpKeepAlive
  • User
  • UseStaticIdp

功能支持

如需让 Looker 支持某些功能,您的数据库方言也必须支持这些功能。以下部分介绍了 Amazon Redshift 方言的功能支持:

Amazon Redshift

截至 Looker 26.8,Amazon Redshift 支持以下功能:

功能 是否支持?
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
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同
自定义日历

Amazon Redshift 2.1+

截至 Looker 26.8,Amazon Redshift 2.1+ 支持以下功能:

功能 是否支持?
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
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同
自定义日历

Amazon Redshift Serverless 2.1+

截至 Looker 26.8,Amazon Redshift Serverless 2.1+ 支持以下功能:

功能 是否支持?
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
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同
自定义日历