写点什么

Amazon Redshift 并发扩展,始终保持巅峰性能

  • 2019-10-05
  • 本文字数:2309 字

    阅读完需:约 8 分钟

Amazon Redshift 并发扩展,始终保持巅峰性能

Amazon Redshift 是一款可以扩展到 EB 级的数据仓库。如今,数以万计的 AWS 客户(包括 NTT DOCOMO、Finra 和强生)使用 Redshift 来运行任务关键性的商业智能 (BI) 控制面板、分析实时流式处理数据以及运行预测性的分析作业。


但在高峰时刻,并发查询数量猛增,这时出现了一个问题。当许多业务分析师全部打开他们的 BI 控制面板,或者长时间运行的数据学工作负载与其他工作负载竞争资源时,Redshift 将会排队执行查询,直到集群中有足够的计算资源可用。这确保了所有工作都能够完成,但也可能意味着高峰时刻的性能会受到影响。系统本身提供了两种应对方案:


  • 超额预置集群以满足高峰需求。这种方案虽然解决了眼前的问题,但使用的资源和成本超过所需,形成了浪费。

  • 针对典型的工作负载优化集群。采用这种方案,您在高峰时刻必须花更长的时间等待结果,可能会延误重要的商业决策。

新推出并发扩展功能

今天,我想向大家介绍第三种方案。现在,您可以配置 Redshift 以根据需要增加查询处理能力。其过程十分透明并且可在几秒钟内完成,即使工作负载增加到数百条并发查询时,也能为您提供快速、稳定的性能。增加的处理能力可以在几秒钟内准备就绪,无需预热或提前预置。您只需为实际使用的处理能力付费,账单精确至秒,并且您的主集群每运行 24 小时还将赠送一小时的并发扩展集群抵扣时间。额外的处理能力将在不再需要时取消,这种方式非常适合解决我在上文描述的突增性使用案例。


您可以将突增处理能力分配给特定的用户或队列,并且可以继续使用现有的 BI 和 ETL 应用程序。并发扩展集群用于处理多种形式的只读请求,并且在工作负载上还有更多的灵活性,请参阅并发扩展以了解更多信息。

并发扩展功能的使用

您可以在几分钟内为现有的集群启用此功能! 我们建议首先使用全新的 Redshift 参数组来进行测试,因此我首先创建了一个参数组:



然后我编辑集群的工作负载管理配置,选中该新参数组,将 Concurrency Scaling Mode (并发扩展模式) 设置为自动,然后单击保存:



我将衍生自 TPC-DS 的云数据仓库基准作为测试数据和测试队列的源。我下载了 DDL 并使用我的 AWS 凭证进行自定义,然后使用 psql 来连接到我的集群并创建测试数据:


sample=# create database sample;CREATE DATABASEsample=# \connect sample;psql (9.2.24, server 8.0.2)WARNING: psql version 9.2, server version 8.0.         Some psql features might not work.SSL connection (cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256)You are now connected to database "sample" as user "awsuser".sample=# \i ddl.sql
复制代码


DDL 会创建表和负载,然后使用存储在 S3 存储桶中的数据进行填充:


sample=# \dt                 List of relations schema |          name          | type  |  owner--------+------------------------+-------+--------- public | call_center            | table | awsuser public | catalog_page           | table | awsuser public | catalog_returns        | table | awsuser public | catalog_sales          | table | awsuser public | customer               | table | awsuser public | customer_address       | table | awsuser public | customer_demographics  | table | awsuser public | date_dim               | table | awsuser public | dbgen_version          | table | awsuser public | household_demographics | table | awsuser public | income_band            | table | awsuser public | inventory              | table | awsuser public | item                   | table | awsuser public | promotion              | table | awsuser public | reason                 | table | awsuser public | ship_mode              | table | awsuser public | store                  | table | awsuser public | store_returns          | table | awsuser public | store_sales            | table | awsuser public | time_dim               | table | awsuser public | warehouse              | table | awsuser public | web_page               | table | awsuser public | web_returns            | table | awsuser public | web_sales              | table | awsuser public | web_site               | table | awsuser(25 rows)
复制代码


然后我下载了查询并打开了一组 PuTTY 窗口,以便可以为我的 Redshift 集群生成有意义的负载:



我运行了初始的并行查询集,然后逐步增加,我可以在集群的 Cluster Performance (集群性能) 选项卡中看到它们:



我可以在 Database Performance (数据库性能) 选项卡中看到有额外的处理能力在需要时上线,然后在不再需要时下线:



正如您可以看到,我的集群根据需要进行扩展,以尽快处理所有查询。“Concurrency Scaling Usage (并发扩展使用量)”显示了我使用额外处理能力的分钟数(正如我之前所提到,每个集群每 24 小时会累积一小时的并发扩展抵扣时间)。


我可以使用参数 max_concurrency_scaling_clusters 来控制可以使用的并发扩展集群数量(默认限制为 10,但您在需要时可以请求增加限制)。

现已推出

您现在可以立即在美国东部(弗吉尼亚北部)、美国东部(俄亥俄)、美国西部(俄勒冈)、欧洲(爱尔兰)以及亚太地区(东京)等区域使用并发扩展集群,今年还将在更多区域陆续推出。


作者介绍:


Jeff Barr


AWS 首席布道师; 2004 年开始发布博客,此后便笔耕不辍。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/new-concurrency-scaling-for-amazon-redshift-peak-performance-at-all-times/


2019-10-05 22:22799
用户头像

发布了 1843 篇内容, 共 110.0 次阅读, 收获喜欢 77 次。

关注

评论

发布
暂无评论
发现更多内容

官宣“2024西部(成都)国际人工智能展会”招展工作全面启动

AIOTE智博会

人工智能展会 人工智能展

分布式数据库国产替代,杭州银行在挑战什么

TiDB 社区干货传送门

实践案例

Premiere Pro 2022下载 (PR2022中文破解) v22.2.0 语音转字幕专用版

Rose

Premiere Pro 2022 pr2022怎么添加字幕

京东广告算法架构体系-高性能计算最佳实践

京东零售技术

算法 性能优化 技术架构 GPU算力

大模型“四小龙”,能否跨越深渊?

脑极体

AI

程序只占用服务器里一个核心使用,是什么问题

德迅云安全杨德俊

ECMAScript 悄悄更新了两个对象分组 API,你注意到了么?

OpenTiny社区

开源 前端 低代码 组件库 OpenTiny

分享7个常用的 JavaScript 库

伤感汤姆布利柏

选择TiDB的10个理由

TiDB 社区干货传送门

数据库架构选型

测试 TIDB in k8s 一次问题记录(pd failed to respond)

TiDB 社区干货传送门

7.x 实践

云空间技术在视频监控中的隐私保护策略

天翼云开发者社区

云计算 存储 隐私保护 视频监控 云空间

苹果手机锁定怎么办?AnyMP4 iPhone Unlocker for Mac iPhone解锁器

Rose

iPhone Unlocker iPhone解锁器 苹果手机

OpenCloudOS 迁移工具征集中,18 万奖金等你来拿!|开放原子开源大赛

OpenCloudOS

Linux 迁移

ETL能实现什么流程控制方式?

RestCloud

ETL 数据集成 数据集成工具

支付宝AES如何加密

盐焗代码虾

加密解密 支付宝 AES

华为云CCE Turbo:基于eBPF的用户自定义多粒度网络监控能力

华为云开发者联盟

云原生 华为云 华为云开发者联盟 华为云CCE容器服务

软件测试学习笔记丨接口测试Mock实战

测试人

软件测试

Higress × OpenKruiseGame 游戏网关最佳实践

阿里巴巴云原生

阿里云 云原生 游戏 OpenKruiseGama Higress

从零到一:我的软件测试开发工程师之路

测试人

软件测试

PolarDB-X最佳实践系列(四):如何设计一张订单表

阿里云数据库开源

数据库 阿里云 最佳实践 polarDB PolarDB-X

使用 Coze 搭建 TiDB 助手

TiDB 社区干货传送门

实践案例

份额大涨! 天翼云稳居中国公有云laaS市场、laaS+PaaS市场第三!

天翼云开发者社区

云计算 公有云 云服务 IDC

云空间视频监控的可扩展性:适应不断增长的监控需求

天翼云开发者社区

云计算 视频监控 可扩展性

​让游戏云原生化别再「左右为难」

阿里巴巴云原生

阿里云 阿里云云原生 OpenKruiseGama

墨水屏电子纸标签/电子纸价签领域如何选择无线通信方案?

Geek_ab1536

未来时尚:数字化管理引领服装企业商品计划的创新浪潮

第七在线

TiDB 快速入门:从零到一 部署初探

TiDB 社区干货传送门

安装 & 部署

“分布式透明化”在杭州银行核心系统上线之思考

TiDB 社区干货传送门

实践案例

Amazon Redshift 并发扩展,始终保持巅峰性能_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章