一般性问题

要了解 Amazon Redshift 的新增功能,请访问最新资讯页面。
要查看更多详细信息和使用指南,请访问文档

问:什么是 Amazon Redshift?

Amazon Redshift 是完全托管式、可扩展的云数据仓库,通过快速、简单和安全的大规模分析,缩短您获得洞察的时间。成千上万的客户依靠 Amazon Redshift 来分析从 TB 级到 PB 级的数据,并运行复杂的分析查询。您可以跨运营数据库、数据湖、数据仓库和第三方数据集获得对所有数据的实时洞察和预测分析。Amazon Redshift 以比其他即时可用的云数据仓库高三倍的性价比提供这一切,帮助您保持成本的可预测性。

Amazon Redshift 无服务器使您能够在几秒钟内轻松运行 PB 级分析来获得快速洞察,而无需配置和管理您的数据仓库集群。Amazon Redshift 无服务器自动预置和扩展数据仓库容量,为严苛且不可预测的工作负载提供高性能,您仅需为实际使用的资源付费。

问:客户选择 Amazon Redshift 的最主要原因是什么?

成千上万的客户选择 Amazon Redshift 来缩短他们获得洞察的时间,因为它易于使用,可在任何规模提供可靠的性能,您可以使用它分析所有数据。Amazon Redshift 是完全托管式服务,提供预置和无服务器选项,使您能够轻松地运行和扩展分析,而无需管理您的数据仓库。您可以对可预测的工作负载选择预置选项,或者选择 Amazon Redshift 无服务器选项,以自动预置和扩展数据仓库容量,为苛刻且不可预测的工作负载提供高性能。它以比其他即时可用的云数据仓库高达三倍的性价比在任何规模提供可靠的性能,帮助您保持成本的可预测性。Amazon Redshift 跨运营数据库、数据湖、数据仓库和数千个第三方数据集对所有数据运行实时和预测性分析,使您获得洞察。Amazon Redshift 可保持静态和传输中数据的安全,并满足内部和外部合规性要求。它支持行业领先的安全性,以保护您的静态和传输中数据,并满足 SOC1、SOC2、SOC3 和 PCI DSS 第 1 级要求。包含所有 Redshift 安全性和合规性功能,无需额外费用。

问:Amazon Redshift 如何简化数据仓库管理?

Amazon Redshift 由 AWS 完全托管,因此您无需担心数据仓库管理任务,如硬件调配、软件修补、设置、配置、监控节点和驱动器以从故障中恢复,或备份。AWS 代表您管理设置、操作和扩展数据仓库所需的工作,使您能够专注于构建您的应用程序。Amazon Redshift 还有自动优化功能,并可在 Redshift Advisor 中显示关于管理仓库的建议。借助 Redshift Spectrum,Amazon Redshift 可以管理所有计算基础设施、负载均衡、计划、调度和对 Amazon S3 中存储的数据的查询执行情况。无服务器选项自动预置和扩展数据仓库容量,为严苛且不可预测的工作负载提供高性能,您仅需为实际使用的资源付费。

问:与其他数据仓库相比,Amazon Redshift 的性能如何?

TPC-DS 基准测试结果表明,即使是相对较小的 3TB 数据集,Amazon Redshift 也能提供最佳性价比,即时可用。Amazon Redshift 提供比其他云数据仓库高 3 倍的性价比。这意味着,无需手动优化,您就可以从 Amazon Redshift 领先的性价比中受益。 与使用其他云数据仓库相比,使用 Amazon Redshift 可实现高达 3 倍的性价比 | AWS 大数据博客。

Amazon Redshift 使用各种创新技术,在数据仓库和分析工作负载方面实现了比传统数据库高出 10 倍的性能,包括高效的读取优化列式压缩数据存储,以及大规模并行处理 (MPP) 计算集群,这些集群可线性扩展到数百个节点。Amazon Redshift 以列组织数据,并非以一系列的行来存储数据。将数据加载到空表中时,Amazon Redshift 会自动对您的数据进行采样并选择最合适的压缩方案。

借助 Redshift Spectrum,您可以对 Amazon S3 中的 EB 级数据运行查询,而无需进行加载或提取、转换和加载 (ETL)。即使没有在 Amazon Redshift 中存储任何数据,您仍然可以使用 Redshift Spectrum 查询 Amazon S3 中的 EB 级数据集。具体化视图可以为重复的和可预测的分析工作负载(如控制面板、来自商业智能 (BI) 工具的查询以及 ETL 数据处理)提供更快的查询性能。借助具体化视图,您可以存储预先计算的查询结果,并通过以递增方式处理对源表所做的最新更改,对结果进行有效维护。引用这些具体化视图的后续查询使用预先计算的结果运行速度快得多的自动刷新和查询重写功能,以简化和自动使用具体化开视图。 Amazon Redshift 还自动创建具体化视图,提供与用户创建的具体化视图相同的益处。

本地数据仓库的计算和存储容量受限于本地部署硬件。Amazon Redshift 使您能够根据需要独立扩展计算和存储,以满足不断变化的工作负载。借助 Redshift 托管存储 (RMS),您现在就能使用 Amazon S3 存储将您的存储扩展到 PB 级。

自动表格优化 (ATO) 是一种自优化功能,帮助您无需手动操作即可获得创建最佳排序键和分布键的性能优势。ATO 可以观察查询如何与表进行交互,并使用机器学习 (ML) 来选择最佳排序键和分布键,从而优化集群工作负载的性能。与无 ATO 的集群相比,ATO 优化在使用 3TB 和 30TB TPC-DS 基准的案例中分别表现出 24% 和 34% 的集群性能提升。使用其他功能,例如自动 Vacuum Delete、自动表格排序和自动分析,无需再对 Redshift 集群进行手动维护和优化就能使新集群和生产工作负载达到最佳性能。

工作负载管理允许您将查询路由到一组定义的队列,以管理集群的并发量和资源利用率。目前,Amazon Redshift 有自动和手动两种配置类型。使用手动 WLM 配置,您将负责定义分配给每个队列的内存数量和最大查询数量,每个查询都能获得该内存的一小部分,内存可以在每个队列中运行。手动 WLM 配置不能适应工作负载的变化,需要对查询的资源利用率有充分的了解才能正确配置。Amazon Redshift 自动 WLM 不需要定义队列的内存利用率或并发量。相反,它能够动态调整并发量来优化吞吐量。另外,您还可以定义查询优先级,根据您的业务优先级为查询提供优先资源分配。自动 WLM 还提供强大的工具,使您能够管理工作负载。查询优先级允许您定义工作负载的优先级,这样工作负载就可以在 Amazon Redshift 中获得优先处理,包括在繁忙时间获得更多资源,以保持始终如一的查询性能,并且查询监控规则提供了管理意外情况的方法,例如检测和防止失控或由于使用系统资源产生高昂的查询成本。下面是具有自适应并发性能改进的自动 WLM 的关键方面:适当分配内存,消除队列之间的内存静态分区,并提高吞吐量。

Amazon Redshift Advisor 通过分析您的工作负载以及集群的使用率指标,产生自定义建议以提高性能并优化成本。登录 Amazon Redshift 控制台以查看 Advisor 建议。有关更多信息,请参阅采用 Amazon Redshift Advisor 的建议。

问:如何开始使用 Amazon Redshift?

只需在 AWS 管理控制台中单击几下,即可开始查询数据。您可以利用预加载的示例数据集(包括基准数据集 TPC-H、TPC-DS)和其他示例查询,以立即开始分析。您可以创建数据库、架构、表,并从 Amazon S3、Amazon Redshift 数据共享中加载数据,或者还原现有的 Amazon Redshift 预置集群快照。您还可以直接查询 Amazon S3 数据湖中采用开放格式(如 Parquet 或 ORC)的数据,或查询运营数据库(如 Amazon Aurora、Amazon RDS PostgreSQL 和 MySQL)中的数据。

要开始使用 Amazon Redshift 无服务器,选择“试用 Amazon Redshift 无服务器”并开始查询数据。Amazon Redshift 无服务器自动扩展以满足任何工作负载的增加。

问:我是否能获得帮助以了解关于 Amazon Redshift 的更多信息并参与其中?

答:是的,Amazon Redshift 专家可以回答问题并提供支持。联系我们,我们将在一个工作日内回复您,讨论 AWS 如何能为贵公司提供帮助。

问:用于 Amazon Redshift 的高级查询加速器 (AQUA) 是什么?

高级查询加速器 (AQUA) 是一种新的分布式硬件加速缓存,通过自动加速特定类型的查询,使 Amazon Redshift 的运行速度比其他企业云数据仓库最高快 10 倍。AQUA 可用于 RA3.16xlarge、RA3.4xlarge 或 RA3.xlplus 节点,无需额外付费且无需更改代码。

问:如何为我的 Redshift 数据仓库启用/禁用 AQUA?

对于在 RA3 节点上运行的 Redshift 集群,您可以使用 Redshift 控制台、AWS Command Line Interface (AWS CLI) 或 API 在集群级别启用/禁用 AQUA。对于在 DC、DS 或老一代节点上运行的 Redshift 集群,您必须先升级到 RA3 节点,然后再启用/禁用 AQUA。

问:AQUA 将加速哪些类型的查询?

AQUA 通过在存储层附近运行数据密集型任务(如扫描、筛选和聚合),以加速分析查询。在需要大量扫描的查询上,尤其是那些使用 LIKE 和 SIMILAR_TO 谓词的查询,您将看到最显著的性能改进。随着时间的推移,AQUA 加速的查询类型将会增加。

问:我如何知道 Redshift 集群上的哪些查询被 AQUA 加速?

您可以查询系统表以查看 AQUA 加速的查询。

问:什么是 Amazon Redshift 托管存储?

Amazon Redshift 托管存储随无服务器和 RA3 节点类型提供,使您能够独立扩展和支付计算和存储费用,因此您可以仅根据计算需求来调整集群大小。它自动将基于高性能 SSD 的本地存储用作第 1 层缓存,并利用数据块温度、数据块使用年限和工作负载模式等优化来提供高性能,同时在需要时自动将存储扩展到 Amazon S3,而无需执行任何操作。

问:如何使用 Amazon Redshift 的托管存储?

如果您已经在使用 Amazon Redshift 密集存储或密集计算节点,则可以使用 Elastic Resize(弹性大小调整)将现有集群升级到新的计算实例 RA3。Amazon Redshift 无服务器和使用 RA3 实例的集群自动使用 Redshift 托管的存储来存储数据。除了使用 Amazon Redshift 无服务器或 RA3 实例外,不需要其他操作来使用此功能。

问:什么是 Amazon Redshift Spectrum?

Amazon Redshift Spectrum 是 Amazon Redshift 的一项功能,借助这项功能,您可以对 Amazon S3 中的数据湖运行查询,而无需进行数据加载或 ETL 操作。当您发布 SQL 查询时,查询会进入 Amazon Redshift 终端节点,该端点会生成查询方案并对其进行优化。Amazon Redshift 会确定哪些数据存储在本地以及哪些数据存储在 Amazon S3 中,然后生成一种方案来尽可能减少需要读取的 S3 数据量,从共享资源池中请求 Amazon Redshift Spectrum 工件来读取和处理 S3 中的数据。

问:何时应考虑使用 RA3 实例?

在以下情况下,考虑选择 RA3 节点类型:

  • 您需要灵活扩展并为独立于存储的计算付费。
  • 您查询的是总数据的一部分。
  • 您的数据量正在快速增长或预计将快速增长。
  • 您希望仅根据您的性能需求灵活地调整集群的大小。

随着数据规模的持续增长(达到 PB 级),您在 Amazon Redshift 数据仓库中摄取的数据量也在增长。您可能正在寻找经济高效地分析所有数据的方法。

使用带有托管存储的新 Amazon Redshift RA3 实例,您可以基于您的性能需求选择节点数量,并且只需为您实际使用的托管存储付费。这样,您就可以基于您每天处理的数据量灵活调整 RA3 集群的大小,而不会增加您的存储成本。基于 AWS Nitro 系统,具有托管存储的 RA3 实例对热数据使用高性能 SSD,对冷数据使用 Amazon S3,提供易用性、经济高效的存储和快速查询性能。

问:什么时候应该使用 Amazon Redshift?什么时候应该使用Amazon RDS?

Both Amazon Redshift 和 Amazon Relational Database Service (RDS) 都可让您在云中运行传统的关系数据库,并且摆脱数据库管理工作。Amazon RDS 数据库主要用于联机事务处理 (OLTP) 工作负载,而 Amazon Redshift 主要用于报告和分析。OLTP 工作负载需要快速查询特定信息,对诸如插入、更新和删除等事务的支持最好由 Amazon RDS 处理。Amazon Redshift 可以利用多节点的规模和资源并进行各种优化,适用于针对大型数据集的分析和报告工作负载,比传统数据库有巨大的改进。当数据和查询的复杂性增加时,如果您要避免报告和分析处理对 OLTP 工作负载性能造成干扰,Amazon Redshift 就可以提供出色的扩展选项。现在,借助新的联合查询功能,您可以利用 Amazon Redshift 轻松地在 Amazon RDS 或 Aurora 数据库服务中查询数据。

问:什么时候应该使用 Amazon Redshift 或 Redshift Spectrum?什么时候应该使用Amazon EMR?

如果使用自定义代码通过大数据处理框架(如 Apache Spark、Hadoop、Presto 或 Hbase)来处理和分析超大数据集,则应该使用 Amazon EMR。借助 Amazon EMR,您可以完全控制群集的配置和群集上安装的软件。

Amazon Redshift 之类的数据仓库是专为完全不同类型的分析而设计的。数据仓库旨在将来自多个不同来源(如库存、财务和零售销售系统)的数据汇集在一起。为了确保整个公司的报告具有一致的准确性,数据仓库采用一种高度结构化的方式来存储数据。这种结构可将数据一致性规则直接构建到数据库的表中。当您需要对大量结构化和半结构化数据执行复杂查询并获得高速性能时,Amazon Redshift 就是最理想的服务选择。

尽管 Redshift Spectrum 功能非常适用于对 Amazon Redshift 和 S3 中的数据运行查询,但它不适合企业通常需要使用 Amazon EMR 之类的处理框架进行处理的使用场景。Amazon EMR 的功能远不止运行 SQL 查询。Amazon EMR 是一种托管服务,可让您使用最新版本的常用大数据处理框架(如 Spark、Hadoop 和 Presto)在完全自定义的集群上处理和分析极大的数据集。借助 Amazon EMR,您可以为机器学习、图形分析、数据转换、流式处理数据以及您可以编写代码的几乎任何应用程序运行各种横向扩展的数据处理任务。

您可以将 Redshift Spectrum 与 EMR 配合使用。Redshift Spectrum 存储表定义的方式与 Amazon EMR 相同。Redshift Spectrum 可以支持 Amazon EMR 使用的相同 Apache Hive 元数据仓来查询数据和表定义。如果您使用的是 Amazon EMR 并拥有 Hive 元数据仓,则只需配置 Amazon Redshift 群集即可使用 Redshift Spectrum。然后,您可以马上开始查询这些数据并执行 Amazon EMR 作业。因此,如果您已经在使用 EMR 处理大型数据存储,则可以同时使用 Redshift Spectrum 来查询这些数据,并且不会影响 Amazon EMR 作业。

查询服务、数据仓库和复杂的数据处理框架都有自己的位置,分别用于不同的作业。您只需要为作业挑选适当的工具即可。

问:什么时候应该使用 Amazon Athena,什么时候应该使用Amazon Redshift Spectrum?

Amazon Athena 是一种交互式查询服务,让您能够轻松使用标准 SQL 分析 Amazon S3 中的数据。Athena 简单易用。只需指向您存储在 S3 中的数据,定义架构并使用标准 SQL 开始查询。

Redshift Spectrum 是 Amazon Redshift 的一项功能。如果需要用最高性能、严格的服务等级协议 (SLA) 分析频繁访问的数据,您应该使用 Amazon Redshift。您可以使用 Redshift Spectrum 将 Amazon Redshift 查询扩展到 Amazon S3 数据湖中访问频率较低的数据。此外,您还可以灵活地将数据以您想要的格式存储在您想要的位置,并在需要数据时立即进行处理。

问:为什么我应该使用 Amazon Redshift,而不是在 Amazon EC2 上运行我自己的 MPP 数据仓库集群?

Amazon Redshift 可自动处理大量与您自己的数据仓库管理相关的耗时任务,包括:
  • 设置:使用 Amazon Redshift 时,您仅需创建一个数据仓库群集,定义构架,然后开始加载并查询数据。您无需管理配置、预置或修补。
  • 数据持久性:Amazon Redshift 在您的数据仓库群集之内复制数据并将数据连续备份至 Amazon S3,旨在让持久性达到 99.999999999%。Amazon Redshift 将每个驱动器的数据镜像至群集内的其他节点。如果某个驱动器发生故障,查询将继续进行,只是延迟稍有增加,同时 Redshift 利用副本重建该驱动器。如果出现节点故障,那么 Amazon Redshift 将自动预置新节点,并开始从群集内的其他驱动器或 Amazon S3 中恢复数据。Amazon Redshift 优先恢复最频繁查询的数据,这样最频繁执行的查询将可迅速恢复功能。
  • 扩展:当容量和性能需求发生变化时,只需调用一次 API 或在 AWS 管理控制台中单击几次,即可在 Amazon Redshift 数据仓库集群中添加或删除节点。您还可以使用 Amazon Redshift 中的调度器功能来计划扩缩并调整运营规模。
  • 自动更新与修补:Amazon Redshift 可以自动应用升级并修补数据仓库,这样您就能专注于应用程序而非其管理工作。
  • EB 级查询能力:借助 Amazon Redshift Spectrum,您可以对 Amazon S3 中的 EB 级数据运行查询,且无需进行加载或 ETL 操作。即使没有在 Amazon Redshift 中存储任何数据,您仍然可以使用 Redshift Spectrum 查询 Amazon S3 中的 EB 级数据集。

问:如何创建并访问 Amazon Redshift 数据仓库集群?

您可以使用 AWS 管理控制台Amazon Redshift API 轻松创建 Amazon Redshift 数据仓库集群。您可以从单节点 160GB 数据仓库开始,然后在 AWS 控制台中单击几下或调用一次 API,一路扩展到 1PB 或更大。

单节点配置(它最适合用于评估或开发/测试工作负载)使您能够开始经济快速地使用 Amazon Redshift,而且随着您的需求的增长,单节点配置可扩展为多节点配置。一个 Redshift 数据仓库集群中可以包含 1 到 128 个计算节点,具体取决于节点类型。对于最新一代节点类型 RA3,节点的最小数量为 2。有关详细信息,请参阅文档

多节点配置需要一个领导节点来管理客户端的连接并接收查询,以及两个计算节点来存储数据并执行查询和计算。系统将自动为您配置领导节点(它与计算节点的大小相同),并且您无需为其付费。

仅需指定您的首选可用区(可选项)、节点数量、节点类型、主节点名称和密码、安全组、您对备份保留期的首选项及其他系统设置。在您选定理想配置后,Amazon Redshift 将预置所需资源并建立数据仓库集群。

数据仓库集群可供使用后,您就可以在 AWS 管理控制台或使用 Redshift API 检索它的端点以及 JDBC 和 ODBC 连接字符串。然后您可借助自己最喜欢的数据库工具、编程语言或商业智能 (BI) 工具使用此连接字符串。您需要把网络请求授权给正在运行的数据仓库集群。有关详细说明,请参阅我们的入门指南

问:为什么应该使用 Amazon Redshift Spatial?

Amazon Redshift Spatial 提供基于位置的分析,以全面洞察您的数据。它无缝整合空间和业务数据,为制定决策提供分析。Amazon Redshift 于 2019 年 11 月推出了原生空间数据处理支持,包括多态数据类型 GEOMETRY,以及多个关键的 SQL 空间函数。我们现在支持 GEOGRAPHY 数据类型,并且我们的 SQL 空间函数库已经增加到 80 个。我们支持所有常见的空间数据类型和标准,包括 Shapefiles、GeoJSON、WKT、WKB、eWKT 和 eWKB。要了解详情,请访问文档页面或 Amazon Redshift 空间教程页面。

问:什么是冷查询性能增强,Amazon Redshift 如何增强冷查询性能?

Amazon Redshift 可以在需要编译查询时将查询处理速度提高两倍。此次改进可以在您创建新的 Redshift 集群、在现有集群上构建新的工作负载时或在现有集群进行软件更新之后为您提供更好的查询性能。您无需支付额外费用即可使用这些查询性能改进,并且无需采取任何操作即可在集群上启用它。

通过冷查询性能增强,查询编译可以扩展至集群领导节点的计算资源之外的无服务器编译服务。Amazon Redshift 支持无限缓存用于存储已编译对象,当任务关键型查询提交至 Amazon Redshift 时,将缓存命中率从 99.60% 提高至 99.95%。

当查询发送至 Amazon Redshift 时,查询执行引擎会将查询编译成机器代码并将其分配至集群节点。编译的代码运行速度更快,因为它消除了使用解释器的开销。对于没有代码缓存的新集群或者使用最新版本升级现有集群之后,代码缓存将会更新,并且查询必须经过查询编译。因此,查询延迟可能会不同,这可能不符合某些工作负载的要求。通过此次更新,无限缓存可以最大限度地降低编译代码的需求,当需要编译时,可扩展编译场将会对其进行并行编译,以加速您的工作负载。加速幅度取决于工作负载的复杂性和并发量。要详细了解代码编译,请参阅数据库开发人员指南中的查询处理

无服务器

问:什么是 Amazon Redshift 无服务器(预览版)?

Amazon Redshift 无服务器(预览版)是 Amazon Redshift 的无服务器选项,能轻松运行并在数秒内扩展分析,无需设置和管理数据仓库基础设施。借助 Redshift 无服务器,任何用户(包括数据分析师、开发人员、业务专业人员和数据科学家)均能通过简单加载和查询数据仓库中的数据来获得数据洞察。

问:如何开始使用 Amazon Redshift 无服务器(预览版)?

只需在 AWS 管理控制台中单击几下,您就可以选择“配置 Amazon Redshift 无服务器” 并开始查询数据。您可以利用预加载的示例数据集(例如,天气数据、普查数据和基准数据集)和示例查询,以立即开始分析。您可以创建数据库、架构、表,并从 Amazon S3、Amazon Redshift 数据共享中加载数据,或者还原现有的 Redshift 预置集群快照。您还可以直接查询 Amazon S3 数据湖中采用开放格式(如 Parquet 或 ORC)的数据,或查询运营数据库(如 Amazon Aurora、Amazon RDS PostgreSQL 和 MySQL)中的数据。

问:Amazon Redshift 无服务器(预览版)提供哪些功能?

Amazon Redshift 无服务器提供许多益处,包括:

  • 无需预置和管理集群就能快速获得洞察。
  • 基于工作负载需求的智能和弹性伸缩,无需过量预置资源。
  • 持续的服务可用性,以便扩展和版本更新。
  • 对数据仓库中加载的数据、Amazon S3 数据湖中采用开放格式的数据以及运营数据库中的数据都有快速、即时可用的查询性能,无需对数据库优化。
  • Amazon Redshift 丰富的 SQL 分析、持久性和事务性保证。
  • 经济高效,仅需为实际使用的容量和降低的数据仓库复杂性付费。

问:使用 Amazon Redshift 无服务器(预览版)有哪些益处?

即使没有数据仓库管理经验,也不必担心设置、配置、管理集群或优化仓库工作。您可以专注于从数据中获得有意义的洞察,或者通过数据交付核心业务成果。您仅需按实际用量付费,保持成本可控。您将继续受益于 Amazon Redshift 的所有最优性能、丰富的 SQL 功能、与数据湖和运营数据仓库的无缝集成,以及内置的预测分析和数据共享功能。如需对数据仓库进行精细控制,您可以预置 Redshift 集群。

问:Amazon Redshift 无服务器(预览版)如何与其他 AWS 服务协同工作?

您可以继续使用 Amazon Redshift 的各种分析功能,如复杂的联接、对 Amazon S3 数据湖和运营数据库中的数据的直接查询、具体化视图、存储的过程、半结构化数据支持和 ML,以及规模化的高性能。Amazon Redshift 集成的所有相关服务(例如,Amazon Kinesis、AWS Lambda、Amazon QuickSight、Amazon SageMaker、Amazon EMR、AWS Lake Formation 和 AWS Glue)将继续与 Amazon Redshift 无服务器协同工作。

问:我能用 Amazon Redshift 无服务器(预览版)处理哪些使用案例?

您可以继续运行所有分析使用案例。Amazon Redshift 无服务器的工作流入门简单,并且具备弹性伸缩和按使用量付费的功能,它使得需要快速入门的开发和测试环境、临时业务分析、计算需求不断变化和不可预测的工作负载以及间歇性或零星的工作负载的运行更加轻松、更加经济高效。

问:Amazon Athena 与 Amazon Redshift 无服务器有何区别?

Amazon Athena 和 Amazon Redshift 都用于解决不同的需求和使用案例,即使这两项服务都是无服务器的。对于在任何规模都要求高性能的复杂 BI 和分析工作负载,如需实现最佳性价比,Amazon Redshift 等数据仓库将是最佳选择。Amazon Redshift 还提供了查询存储在 Amazon S3 中的数据以及与存储在数据仓库中的数据合并的功能。相比之下,Athena 更适合对任何数据存储的交互分析,而不必担心摄取和格式化数据。Athena 分析与存储是分离的,它使您能够灵活使用其他工具和服务,如 Spark、Flink、Kafka,以进一步对 Athena 所分析的相同数据进行全面分析和数据处理。

数据共享

问:什么是 Amazon Redshift 数据共享?

Amazon Redshift 数据共享让您可以在 Amazon Redshift 中共享实时数据,以安全地、轻松地与 AWS 账户内和跨 AWS 账户的其他 Redshift 集群以及使用数据湖的 AWS 分析服务共享数据,从而读取数据。通过数据共享,您可以从任何 Redshift 集群中即时查询实时数据(只要这些集群具有访问权限),不会发生与数据复制和数据移动相关的复杂问题和延迟。借助 Amazon Redshift,您可以在整个企业或跨账户、甚至跨区域共享和查询实时数据。

问:数据共享有什么使用案例?

主要使用案例包括:

  • 一个中央 ETL 集群与许多 BI/分析集群共享数据,以提供读取工作负载隔离和可计费。
  • 一个数据提供商与外部使用者共享数据。
  • 在不同的业务组之间共享公共数据集,如客户、产品,并合作以实现广泛的分析和数据科学。
  • 分散数据仓库以简化管理。
  • 在开发、测试和生产环境之间共享数据。
  • 从其他 AWS 分析服务访问 Redshift 数据。

问:什么是 Amazon Redshift 中的跨数据库查询?

借助跨数据库查询功能,无论您连接到哪个数据库,您都可以无缝查询和整合来自您访问的任何 Redshift 数据库的数据。这可包括集群的本地数据库以及可从远程集群获得的共享数据库。通过跨数据库查询,您可以灵活地将数据组织为独立数据库以支持多租户配置。

问:什么是 AWS Data Exchange for Amazon Redshift?

AWS Data Exchange for Amazon Redshift 让您可以在 AWS Data Exchange 中查找和订阅第三方数据,您可以在几分钟内在 Redshift 数据仓库中查询这些数据。您还可以通过 AWS Data Exchange 轻松授权 Amazon Redshift 中的数据。当客户订阅您的数据时,系统将自动授予该客户访问权限;当他们的订阅结束时,系统将自动撤销他们的访问权限;系统自动生成发票,并通过 AWS 自动收取和支付款项。此功能可帮助您快速查询、分析并使用第三方数据构建应用程序。

问:谁是 AWS Data Exchange 的主要用户?

AWS Data Exchange 使 AWS 客户更容易安全地交换和使用 AWS 中的第三方数据。数据分析师、产品经理、投资组合经理、数据科学家、定量分析专家、临床试验技术人员和几乎每个行业的开发人员都希望访问更多数据,以推动分析、训练机器学习(ML)模型,并做出数据驱动型决策。但是,没有一个地方可以找到来自多个提供商的数据,而且提供商交付数据的方式也不一致,因此他们只能混合处理传输的物理媒体、FTP 凭证和定制 API 调用。相反,许多企业希望将他们的数据用于研究或商业目的,但是构建和维护数据交付、授权和计费技术难度大、费用高,这进一步抑制了有价值的数据的供应。

问:哪些 AWS 区域可以使用 AWS Data Exchange?

AWS Data Exchange 有一个由提供商提供的、全球可用的产品目录。无论在哪个区域使用它,您都可以查看该目录。产品的基础资源(数据集、修订版和资产)是区域性资源,您可以通过编程方式或通过 AWS Data Exchange 控制台在特定的 AWS 区域内管理这些资源。请参阅 AWS 区域可用性表,获取当前提供 AWS Data Exchange 的 AWS 区域列表。

问:AWS Data Exchange 与 Registry of Open Data on AWS 有何区别?

AWS Data Exchange 与 Registry of Open Data on AWS 之间有 5 个主要区别:

  • 首先,AWS Data Exchange 支持免费和商业数据产品,任何适用的商业费用均适用于您的 AWS 发票。Registry of Open Data on AWS 可为您提供访问精选的免费和开放数据集列表的权限。 
  • 其次,AWS Data Exchange 要求您明确同意“数据订阅协议”,该协议概述了数据提供商在发布其产品时设置的条款。Registry of Open Data on AWS 上的数据没有使用条款。 
  • 第三,您必须使用 AWS Data Exchange API 将数据从AWS Data Exchange 复制到 Amazon S3 您所需的位置。Registry of Open Data on AWS 数据集是通过 S3 API 访问的。 
  • 第四,AWS Data Exchange 向数据提供商提供了访问详细说明订阅活动的每日、每周和每月报告的权限。使用 Registry of Open Data on AWS 的数据提供商必须分析其日志,以跟踪数据的使用情况。 
  • 最后,要成为 AWS Data Exchange 数据提供商,合格客户必须在 AWS Marketplace 上注册成为数据提供商后才有资格列出免费和商业产品。不过,任何客户都可以通过 GitHub 向 Registry of Open Data on AWS 添加免费数据,并可以向 AWS 公有数据集计划申请,以赞助特色级开放数据集的存储和带宽成本。

问:什么是 Amazon Redshift 查询编辑器 V2?

Amazon Redshift 查询编辑器 V2 是一个基于 Web 的 SQL 客户端应用程序,您可以用它来编写和运行Redshift 数据仓库的查询。您可以使用图表可视化查询结果,并通过与团队成员共享查询进行协作。查询编辑器 V2 提供了一些功能,例如浏览和探索多个数据库、外部表、视图、存储过程和用户定义函数的功能。它提供了创建架构、表和用户定义函数的向导。您还可以使用可视化向导从 Amazon S3 加载 Amazon Redshift 中的数据。它简化了已保存查询的管理和协作。您还可以通过单击可视化结果,更快获得洞察。借助最新的预览版,数据分析师可以通过一个名为“查询文档”的通用界面分享他们的查询并进行协作,通过该界面他们可以嵌入代码/SQL 查询、注释、结果和可视化。

问:为什么应该使用查询编辑器 V2?

如果您是数据分析师、数据科学家或数据工程师,您现在可以使用 Query Editor V2 来浏览、创建架构和表、加载数据,并通过基于 Web 的界面编写 SQL 查询、存储过程和 UDF。您还可以就地对数据进行可视化分析,无需离开该工具。您还可以计划长时间运行的查询或用于简单报告目的的查询,例如每日报告。

问:查询编辑器 V2 有哪些功能?

查询编辑器 V2 能够使您:

  • 可视化创建架构、表,并从 Amazon S3 加载数据。
  • 使用编写 SQL 查询的直观编辑器编写查询并更快获得洞察。
  • 对结果进行分析,并将结果以 JSON/CSV 格式下载到您的桌面。
  • 自动管理不同版本的查询。
  • 与其他用户协作,共享查询、分析和结果。
  • 在浏览器关闭后,在后台运行查询。

可扩展性和并发

问:如何扩展 Amazon Redshift 数据仓库集群的大小和性能?

如果您想提高查询性能或对 CPU、内存或 I/O 的过度使用做出响应,那么您可以通过 AWS 管理控制台ModifyCluster API 使用 Elastic Resize 来增加数据仓库集群内的节点数。 在您修改自己的数据仓库集群时,所请求的更改会立即应用。您可以通过 AWS 管理控制台或 Amazon CloudWatch API 免费获得计算使用率、存储使用率和 Redshift 数据仓库集群读/写流量方面的指标。您也可以通过 Amazon CloudWatch 的自定义指标功能来添加用户定义的指标。

利用并发扩展功能,您可以支持几乎无限的并发用户和并发查询,并始终保持高查询速度。启用并发扩展功能后,当您的集群遇到查询队列增加时,Amazon Redshift 会自动增加集群容量。

借助 Amazon Redshift Spectrum,您可以运行多个访问 Amazon S3 中相同数据的 Redshift 集群。您可以针对不同的使用案例使用不同的群集。例如,您可以将某个群集用于标准报告,将另一个群集用于数据科学查询。您的营销团队可以使用与运营团队不同的自己的群集。Redshift Spectrum 会自动将查询任务分配到共享资源池外的多个 Redshift Spectrum 工件,以便读取和处理来自 Amazon S3 的数据,然后将结果返回到 Redshift 集群中进行任何后续处理。

问:数据仓库集群在扩展过程中能不能使用?

因情况而异。在使用并发扩展功能时,集群完全可以在并发扩展期间进行读取和写入。在使用 Elastic Resize 时,集群在调整大小期间会有 4 至 8 分钟的不可用时间。而在托管存储中使用 Redshift RA3 实现存储弹性之后,集群就处于完全可用状态,而且数据自动在托管存储和计算节点之间移动。

问:我何时应使用并发扩展以及何时应使用数据共享?

数据共享和并发扩展是互补的功能。通过并发扩展,Amazon Redshift 允许您自动扩展单个集群中的一个或更多工作负载,以处理高并发和查询高峰。Amazon Redshift 可在几秒钟内弹性地自动启动该容量以处理突发的用户活动,而在这些活动消失后停止使用该容量。应用程序利用单个应用程序端点持续地与 Amazon Redshift 交互。通过数据共享,您可以使用多集群、多帐户部署扩展不同的工作负载。这样可在分散环境中实现工作负载隔离和可计费的跨组协作,并能够向内部和外部利益攸关方提供数据即服务。在数据共享生产者集群和使用者集群上都可以启用并发扩展。

问:如何管理资源才能确保我的 Amazon Redshift 集群在高并发期间始终保持快速性能?

典型数据仓库的并发查询使用在一天当中有着巨大差异。仅在需要时段添加资源,而不是满足峰值需求,这样成本效益更高。Amazon Redshift 会为您自动处理这项工作。

并发扩展是 Amazon Redshift 中的一项功能,即使有数千个并发查询,也能提供始终如一的快速查询性能。利用这一功能,Amazon Redshift 可以在需要处理大量需求时自动添加瞬态容量。Amazon Redshift 会自动将查询路由到扩展集群,这些群集几秒钟内便可完成配置并立即开始处理查询。

这项功能对大部分客户来说不会产生费用。每个 Amazon Redshift 集群每天最多可获得 1 小时的并发扩展免费积分。这样,即使分析需求有波动,您也可以预测每月的成本。

问:什么是 Elastic Resize,与并发扩展有什么区别?

Elastic Resize 几分钟内即可在单个 Redshift 集群中添加或删除节点,以管理其查询吞吐量。例如,一天内某几个小时的 ETL 工作负载或月末报告可能需要额外 Amazon Redshift 资源才能按时完成。并发扩展会添加额外的集群资源来提高整体查询并发量。

问:我可否直接访问并发扩展集群?

不可以,并发扩展是一个可大规模扩展的 Amazon Redshift 资源池,而客户不具有直接访问权。

数据集成与加载

问:如何将数据加载到 Amazon Redshift 数据仓库中?

您可以从一系列数据源将数据加载到 Amazon Redshift,包括 Amazon S3Amazon RDSAmazon DynamoDBAmazon EMRAWS GlueAWS Data Pipeline 和/或 Amazon EC2 或本地上的任何启用 SSH 的主机。Amazon Redshift 会尝试将数据并行加载到每个计算节点中,从而最大限度地提高数据仓库集群的数据摄入速度。用户可以使用 ODBC 或 JDBC 连接至 Amazon Redshift,并用“insert”SQL 命令来插入数据。请注意,这样的速度会比使用 S3 或 DynamoDB 慢,因为它们将数据并行加载至每个计算节点,而 SQL 插入语句则通过单个领导节点加载数据。有关 Amazon Redshift 数据加载的详细信息,请查看我们的入门指南

问:如何将数据从现有的 Amazon RDS、Amazon EMR、Amazon DynamoDB 及 Amazon EC2 数据源加载到 Amazon Redshift?

您可以使用 COPY 命令以并行方式将数据从 Amazon EMR、Amazon DynamoDB 或任何启用 SSH 的主机直接加载到 Amazon Redshift 中。此外,您还可以通过 Amazon Redshift Spectrum 使用简单的 INSERT INTO 命令将数据从 Amazon S3 加载到群集中。这样一来,您可以将各种格式的数据(如 Parquet 和 ORC)加载到集群中。请注意,如果使用此方法,则 Redshift Spectrum 会针对从 Amazon S3 中扫描到的数据量累计计费。 

AWS Data Pipeline 提供一个从各种 AWS 数据源加载数据(例如从 Amazon RDS 到 Redshift)的高性能、可靠且容错的解决方案。您可用 AWS Data Pipeline 来指定数据源和理想的数据转换,然后运行一个预先写入的导入脚本,将您的数据加载到 Amazon Redshift 中。此外,AWS Glue 是一项完全托管的提取、转换和加载 (ETL) 服务,可让您轻松准备和加载数据以便分析。您只需在 AWS 管理控制台中单击几次,即可创建并运行 AWS Glue ETL 任务。不仅如此,许多 ETL 公司还对 Amazon Redshift 进行认证以使用其工具,同时我们提供一个电话号码帮助您使用免费试用开始加载数据。其中一些功能还实现了与 Redshift 控制台的深度整合,以便更容易发现和监控从大量第三方来源进入Amazon Redshift 的数据管道。

问:我有很多数据需要在初期加载到 Amazon Redshift 中。通过 Internet 传输将耗费很长时间。我如何加载这些数据?

您可用便携式存储设备通过 AWS Snowball 将数据传输至 Amazon S3。此外,您还可用 AWS Direct Connect 在您的网络或数据中心与 AWS 之间建立一个专用网络连接。您可选用 1Gbit/秒或 10Gbit/秒的连接端口来传输数据。

安全性

问:Amazon Redshift 如何确保数据的安全性?

Amazon Redshift 通过内置 AWS IAM 集成、用于单点登录的身份联合(SSO)、多重验证、列级访问控制、行级别安全性和 Amazon Virtual Private Cloud(Amazon VPC)来支持行业领先的安全性,并提供内置 AWS KMS 集成来保护动态和静态数据。Amazon Redshift 使用行业标准加密技术进行加密并确保动态数据及静态数据的安全性。为了确保动态数据的安全性,Amazon Redshift 支持客户端应用程序与 Redshift 数据仓库群集之间启用 SSL 的连接。为了确保静态数据的安全性,Amazon Redshift 使用硬件加速型 AES-256 在将每个数据块写入硬盘之时对其进行加密。此过程以低等级形式发生在 I/O 子系统中,对写入硬盘的一切数据进行加密,包括中间查询结果。数据块按原样进行备份,这意味着备份也进行了加密。默认情况下,Amazon Redshift 会负责密钥管理,但您也可以选择通过 AWS Key Management Service 来管理您的密钥。提供所有 Amazon Redshift 安全功能,无需额外费用。Redshift Spectrum 通过账户中由 AWS Key Management Service (KMS) 管理的默认密钥来支持 Amazon S3 的服务器端加密 (SSE)。

问:Redshift 是否支持诸如列级安全性之类的精细访问控制?

是,Amazon Redshift 为基于角色的访问控制提供支持。行级别访问控制允许您为用户分配一个或多个角色,并按角色分配系统和对象权限。您可以使用开箱即用的系统角色(根用户、dba、操作员和安全管理员),或者创建自己的角色。

问:Amazon Redshift 是否支持数据掩蔽或数据令牌化?

通过 AWS Lambda 用户定义函数 (UDF),您可将 AWS Lambda 函数用作 Amazon Redshift 中的 UDF,并从 Redshift SQL 查询调用它。此功能支持为 SQL 查询编写自定义扩展,以实现与其他服务或第三方产品的更紧密集成。您可以在查询时间中编写 Lambda UDF,以启用外部令牌化、数据掩蔽、通过与 Protegrity 之类的供应商集成对数据进行身份识别或去除身份识别信息,并根据用户的权限或组保护或取消保护敏感数据。

问:Amazon Redshift 是否支持单点登录?

是。希望使用其企业身份提供程序(例如 Microsoft Azure Active Directory、Active Directory 联合身份验证服务、Okta、Ping Federate 或其他符合 SAML 规范的身份提供程序)的客户可以将 Amazon Redshift 配置为提供单点登录。

问:Amazon Redshift 如何支持使用 Microsoft Azure Active Directory 进行单点登录?

您可以使用 Microsoft Azure Active Directory (AD) 身份登录 Amazon Redshift 集群。这让您能够登录 Redshift,而无需在 Redshift 中复制 Azure Active Directory 身份信息。

问:Amazon Redshift 是否支持多重验证 (MFA)?

是。对 Amazon Redshift 集群进行验证时,可以使用多重验证 (MFA) 来提高安全性。

问:我能在 Amazon Virtual Private Cloud (Amazon VPC) 中使用 Amazon Redshift 吗?

是。您可以将 Amazon Redshift 用作 VPC 配置的一部分。借助 Amazon VPC,您可以定义一个与自己数据中心内运行的传统网络非常相似的虚拟网络拓扑。这样一来,您可以完全控制谁能访问您的 Redshift 数据仓库集群。您可以将 Redshift Spectrum 与 Amazon VPC 中的 Redshift 集群配合使用。

Amazon Redshift 支持托管的 VPC 终端节点(由 AWS PrivateLink 提供支持),以连接到 VPC 中的 Redshift 集群。借助 Amazon Redshift 托管的端点,您可以从同一或另一 AWS 账户内另一个 VPC 的客户端应用程序私有访问您的 VPC 中的 Redshift 数据仓库,本地运行而无需使用公共 IP 或要求流量遍历互联网。

问:我能直接访问 Amazon Redshift 计算节点吗?

不能。您的 Amazon Redshift 计算节点处于私有网络空间中,仅能从数据仓库群集的领导节点对其进行访问。这就为您的数据安全性提供了另外一层保护。

问:Redshift 是否支持基于角色的数据库访问控制? (前期公告)

Amazon Redshift 很快将提供基于角色的访问控制支持。

可用性与持久性

问:如果一个节点上的驱动器发生故障,那么对数据仓库群集的可用性和数据持久性有何影响?

在这些情况下,Amazon Redshift 将检测驱动器或节点故障,并自动替换集群节点。在密集计算 (DC) 和密集存储 (DS2) 集群中,数据存储在计算节点上,以保证数据的高持久性。当一个节点被替换时,数据会从另一个节点上的镜像副本中刷新。

RA3 集群和 Redshift 无服务器不会受到同样的影响,因为数据存储在 Amazon S3 中,本地驱动器只是作为数据缓存使用。在节点替换的情况下,系统从 Amazon S3 检索数据。Amazon S3 提供 99.9999% 的数据持久性保证。如果发生多节点或整个集群故障,数据的最新副本将在 S3 中可用,并且集群可以在同一可用区或其他可用区中恢复,不会造成数据丢失。

在预置替换节点并将其添加至数据库之前,数据仓库集群无法进行查询和更新。Amazon Redshift 能够使您的替换节点立即可用,并从 RA3 和无服务器的 Amazon S3 以及 DS2 和 Amazon 密集计算 (DC2) 上的镜像加载您最频繁访问的数据。单个节点 DC2 和 DS2 集群不支持数据复制。如果某个驱动器发生故障,您需要从 S3 上的快照恢复集群。单个节点 RA3.XLPLUS 集群可以在 AWS Support 的协助下,使用存储在 S3 中的数据重新创建,不会造成任何数据损失。我们建议您至少将 2 个节点用于生产,以最大限度地提高可用性。

问:如果个别节点发生故障,那么对数据仓库集群可用性和数据持久性有何影响?

Amazon Redshift 将自动检测并替换数据仓库群集中发生故障的节点。在预置替换节点并将其添加至数据库之前,数据仓库群集无法进行查询和更新。Amazon Redshift 将使替换节点立即可用,并首先从 S3 中加载您最频繁访问的数据,让您尽快恢复数据查询。单个节点集群不支持数据复制。如果某个驱动器发生故障,您需要从 S3 上的快照恢复集群。我们建议您至少将 2 个节点用于生产。

问:如果数据仓库集群的可用区 (AZ) 发生故障,那么对数据仓库集群可用性和数据持久性有何影响?

如果您的 Amazon Redshift 数据仓库集群的可用区变为不可用状态,Amazon Redshift 会自动将您的集群移动到另一个 AWS 可用区 (AZ),而不会有任何数据丢失或应用程序变更。要激活此功能,您必须在集群配置设置中启用重新定位功能。

问:Amazon Redshift 支持多可用区部署吗?

当前 Amazon Redshift 仅支持单一区域部署。要设置灾难恢复 (DR) 配置,您可以在集群上启用跨区域快照副本。这将把您的集群中的所有快照复制到另一个 AWS 区域。当发生 DR 事件时,可以通过恢复副本区域的快照来创建新的集群。Amazon Redshift 还支持跨区域的数据共享,这样使用者集群就可以访问另一个区域的生产者集群中的实时数据。只有 Amazon Redshift 无服务器和 RA3 支持这个功能。

查询与分析

问:Amazon Redshift 和 Redshift Spectrum 与我的首选商业智能软件包及 ETL 工具兼容吗?

是,Amazon Redshift 使用行业标准 SQL 并可使用标准 JDBC 和 ODBC 驱动程序进行访问。您可以从 Redshift 控制台的“连接客户端”选项卡中下载 Amazon Redshift 自定义 JDBC 和 ODBC 驱动程序。我们与主流 BI 和 ETL 供应商进行的集成已得到验证,其中许多集成都提供免费试用,用于帮助您开始加载和分析数据。您也可以进入 AWS Marketplace,在几分钟内部署和配置能够与 Amazon Redshift 配合使用的解决方案。

Amazon Redshift Spectrum 支持所有 Amazon Redshift 客户端工具。客户端工具可继续使用 ODBC 或 JDBC 连接来连接到 Amazon Redshift 群集端点,而无需进行任何更改。

访问 Redshift Spectrum 中的表与访问 Redshift 群集的本地存储中的表所使用的查询语法和查询功能完全相同。您可以使用注册外部表所用的 CREATE EXTERNAL SCHEMA 命令中定义的架构名称来引用外部表。

问:Amazon Redshift Spectrum 支持哪些数据格式和压缩格式?

Amazon Redshift Spectrum 目前支持许多开源数据格式,其中包括 Avro、CSV、Grok、Amazon Ion、JSON、ORC、Parquet、RCFile、RegexSerDe、Sequence、Text 和 TSV。

Amazon Redshift Spectrum 目前支持 Gzip 和 Snappy 压缩。

问:如果本地存储中的表与外部表的名称相同,会怎么样?

就像使用本地表一样,您可以使用架构名称在查询中输入 schema_name.table_name 来准确选择所需内容。

问:如果使用 Hive 元数据仓来存储有关 S3 数据湖的元数据,那么我可以使用 Redshift Spectrum 吗?

可以。CREATE EXTERNAL SCHEMA 命令支持 Hive 元数据仓。目前我们不支持针对 Hive 元数据仓运行 DDL。

问:如何获取在集群中创建的所有外部数据库表的列表?

您可以通过查询系统表 SVV_EXTERNAL_TABLES 来获取这一信息。

问:Redshift 是否支持将 Machine Learning 用于 SQL?

是,Amazon Redshift ML 功能使 SQL 用户能够使用熟悉的 SQL 命令更轻松地创建、训练和部署机器学习 (ML) 模型。Amazon Redshift ML 允许您将 Amazon Redshift 中的数据用于 Amazon SageMaker,一种完全托管式机器学习(ML)服务。Amazon Redshift 支持无监督学习(K-Means)和有监督学习(Autopilot、XGBoost、MLP 算法)。您还可以利用预构建的 Lambda UDF 函数,通过 AWS 语言 AI 服务翻译、编辑和分析 SQL 查询中的文本字段:参见博客文章

问:Amazon Redshift 是否提供了用于查询数据的 API?

Amazon Redshift 提供了一种 Data API,您可以通过它从 Amazon Redshift 使用所有类型的传统、云原生和容器化无服务器 Web 服务型应用程序以及事件驱动的应用程序轻松访问数据。由于使用 Data API 后将无需再配置驱动程序和管理数据库连接,因而简化了对 Amazon Redshift 的访问。您只需调用 Data API 提供的安全 API 端点,即可对 Amazon Redshift 集群运行 SQL 命令。Data API 负责管理数据库连接和缓冲数据。Data API 是异步的,因此您可以随后检索结果。您的查询结果可存储 24 小时。

问:我可以将哪些类型的凭据用于 Amazon Redshift 数据 API?

该数据 API 支持 IAM 凭据,也支持使用来自 AWS Secrets Manager 的私有密钥。数据 API 联合 AWS Identity and Access Management (IAM) 凭据,使您能够使用 Okta 或 Azure Active Directory 之类的身份提供商或者 Secrets Manager 中存储的数据库凭据,而不必在 API 调用中传递数据库凭据。

问:我是否可从 AWS CLI 使用 Amazon Redshift 数据 API?

是,您可以从 AWS CLI 通过 aws redshift-data 命令行选项使用该数据 API。

问:Redshift 数据 API 是否与其他 AWS 服务集成?

您可以从其他服务使用数据 API,例如 AWS Lambda、AWS Cloud9、AWS AppSync 和 Amazon EventBridge。

问:我是否需要为使用 Amazon Redshift 数据 API 单独付费?

不,使用 Data API 不会产生单独收费。

备份与恢复

问:Amazon Redshift 如何备份数据? 如何从备份中还原我的集群?

Amazon Redshift RA3 集群和 Amazon Redshift 无服务器使用 Redshift 托管式存储,其中始终有可用的数据的最新副本。DS2 和 DC2 集群备份了集群上的数据,以确保在发生故障时可以使用最新的副本。所有 Redshift 集群类型的备份都是自动创建的,并保留 24 小时,而在无服务器上则提供过去 24 小时的恢复点。

您还可以创建自己的备份,这些备份可以无限期保留。这些备份可以在任何时候创建,Amazon Redshift 自动化备份或 Amazon Redshift 无服务器恢复点可以转换为用户备份,以保留更长时间。

Amazon Redshift 还能将您的快照或恢复点异步复制到另一个区域的 Amazon S3 中以备灾难恢复之用。

在 DS2 或 DC2 集群上,免费备份存储受限于数据仓库集群中节点上的总存储大小,并仅适用于已激活的数据仓库集群。

例如,如果您有 8TB 的数据仓库总存储大小,那么我们将提供最多 8TB 的备份存储而不另外收费。如果您想将备份保留期延长为超过一天,那么您可以使用 AWS 管理控制台Amazon Redshift API 来实现这一目的。有关自动快照的更多信息,请参阅 Amazon Redshift 管理指南

Amazon Redshift 仅备份已更改的数据,因此大多数快照仅使用少量的免费备份存储。如果您需要还原备份,则可以在备份保留期内访问所有自动备份。在您选择某个要还原的备份后,我们将预置一个新的数据仓库集群并将数据还原至此集群中。

问:如何管理自动备份及快照保留期?

您可以使用 AWS 管理控制台ModifyCluster API,通过修改 RetentionPeriod 参数来管理自动备份的保留时间。如果您希望关闭自动备份,则可以通过将保留期设置为 0 来执行这一操作(但我们不建议您这样做)。

问:如果我删除了数据仓库集群,那么对备份有何影响?

删除数据仓库集群时,您可以指定是否在删除时创建一个最终快照。这样您就可以在以后还原已删除的数据仓库集群。除非您选择删除手动快照,否则数据仓库集群之前创建的所有手动快照均将被保留,并按照标准 Amazon S3 费率计费。

监控和维护

问:如何监控 Amazon Redshift 数据仓库群集的性能?

您可以通过 AWS 管理控制台Amazon CloudWatch API 免费获得计算使用率、存储使用率和 Amazon Redshift 数据仓库集群读/写流量方面的指标。 您也可通过 Amazon CloudWatch 的自定义指标功能来添加更多用户定义的指标。AWS 管理控制台中的监控控制面板可以帮助您监控所有集群的运行状况和性能。Amazon Redshift 还通过 AWS 管理控制台提供关于查询及集群性能的信息。通过查看这些信息中的查询计划和执行统计信息,您可以了解哪些用户和查询在消耗最多的系统资源来诊断性能问题。此外,您还可以了解每个计算节点上的资源使用情况,确保数据和查询在所有节点之间达到平衡。

问:什么是维护时段? 在软件维护期间数据仓库群集仍可供使用吗?

Amazon Redshift 可以定期执行维护,以便将修复程序、增强功能和新功能应用到您的群集。您可以通过编程方式或使用 Redshift 控制台对群集进行修改,从而更改计划的维护时段。在维护时段内,您无法对 Amazon Redshift 群集执行正常操作。要了解有关各区域的维护时段和计划的更多信息,请参阅《Amazon Redshift 管理指南》中的维护时段

了解有关 Amazon Redshift 定价的更多信息

访问定价页面
准备好开始构建?
Amazon Redshift 入门
还有更多问题?
联系我们