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 访问存储在 S3 中的数据,从而访问 Amazon Redshift 中的数据。

加密网络流量

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

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

用户和安全性

首先,创建 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 可让用户访问存储在 S3 中的数据,而无需先将数据加载到 Redshift 中,从而显著扩展了 Redshift 的功能并提高了易用性。您甚至可以将 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. 如需保存这些设置,请点击连接

功能支持

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

Amazon Redshift

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

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

Amazon Redshift 2.1 及更高版本

自 Looker 25.10 起,Amazon Redshift 2.1 及更高版本支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

Amazon Redshift Serverless 2.1 及更高版本

自 Looker 25.10 起,Amazon Redshift Serverless 2.1 及更高版本支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同