首页 科技开发工具 娱乐游玩工具 热门工具   APP 登录/注册 联系/合作
   
 
Amazon Redshift 的新功能 – Kinesis Data Streams 的流摄取和 Apache Kafka 的托管流的普遍可用性
十年前,就在我加入 AWS 几个月后,Amazon Redshift发布了。多年来,已添加了许多功能以提高性能并使其更易于使用。Amazon Redshift 现在允许您跨数据仓库、运营数据库和数据湖分析结构化和半结构化数据。最近,Amazon Redshift Serverless 普遍可用,可以更轻松地运行和扩展分析,而无需管理您的数据仓库基础设施。

为了尽快处理来自实时应用程序的数据,客户正在采用Amazon Kinesis和Amazon Managed Streaming for Apache Kafka等流媒体引擎。以前,要将流数据加载到您的 Amazon Redshift 数据库中,您必须配置一个进程以在加载之前在Amazon Simple Storage Service (Amazon S3)中暂存数据。这样做会导致一分钟或更长时间的延迟,具体取决于数据量。

今天,我很高兴与大家分享Amazon Redshift Streaming Ingestion的普遍可用性。借助这项新功能,Amazon Redshift 每秒可以从 Amazon Kinesis Data Streams 和 Amazon MSK 本地提取数百兆字节的数据到 Amazon Redshift 物化视图中,并在几秒钟内进行查询。
流式摄取受益于使用物化视图优化查询性能的能力,并允许更有效地使用 Amazon Redshift 进行运营分析和作为实时仪表板的数据源。流式摄取的另一个有趣用例是分析游戏玩家的实时数据以优化他们的游戏体验。这种新的集成还可以更轻松地实施物联网设备分析、点击流分析、应用程序监控、欺诈检测和实时排行榜。

让我们看看这在实践中是如何工作的。
配置 Amazon Redshift 流式摄取
除了管理权限外,Amazon Redshift 流式摄取还可以完全使用 Amazon Redshift 中的 SQL 配置。这对于无法访问AWS 管理控制台或不具备配置 AWS 服务之间集成的专业知识的业务用户特别有用。

您可以通过三个步骤设置流式摄取:
创建或更新AWS Identity and Access Management (IAM)角色以允许访问您使用的流媒体平台(Kinesis Data Streams 或 Amazon MSK)。请注意,IAM 角色应具有允许 Amazon Redshift 代入该角色的信任策略。

创建一个外部模式以连接到流服务。
创建引用外部模式中的流对象(Kinesis 数据流或 Kafka 主题)的物化视图。

之后,您可以查询物化视图以在分析工作负载中使用流中的数据。流式摄取适用于 Amazon Redshift 预置集群和新的无服务器选项。为了尽可能简化,我将在本演练中使用 Amazon Redshift Serverless。

为了准备我的环境,我需要一个 Kinesis 数据流。在 Kinesis 控制台中,我在导航窗格中选择数据流,然后选择创建数据流。对于Data stream name,我使用my-input-stream然后将所有其他选项设置为默认值。几秒钟后,Kinesis 数据流准备就绪。请注意,默认情况下我使用的是按需容量模式。在开发或测试环境中,您可以选择一个分片的预配容量模式来优化成本。

现在,我创建了一个 IAM 角色来授予 Amazon Redshift 访问my-input-streamKinesis 数据流的权限。在IAM 控制台中,我使用此策略创建了一个角色:
为了允许 Amazon Redshift 担任该角色,我使用了以下信任策略:
在Amazon Redshift 控制台中,我从导航窗格中选择Redshift serverless并创建一个新的工作组和命名空间,类似于我在这篇博文中所做的。当我创建命名空间时,在权限部分,我从下拉菜单中选择关联 IAM 角色。然后,我选择刚刚创建的角色。请注意,仅当信任策略允许 Amazon Redshift 代入该角色时,该角色才在此选择中可见。之后,我使用默认选项完成命名空间的创建。几分钟后,无服务器数据库就可以使用了。

在 Amazon Redshift 控制台中,我在导航窗格中选择查询编辑器 v2 。我通过从资源列表中选择它来连接到新的无服务器数据库。现在,我可以使用 SQL 配置流式摄取。首先,我创建一个映射到流服务的外部模式。因为我将使用模拟的 IoT 数据作为示例,所以我将外部模式称为sensors。
为了访问流中的数据,我创建了一个从流中选择数据的物化视图。通常,物化视图包含基于查询结果的预计算结果集。在这种情况下,查询从流中读取,而 Amazon Redshift 是流的使用者。

因为流数据将作为 JSON 数据被摄取,所以我有两个选择:
将所有 JSON 数据保留在一个列中,并使用 Amazon Redshift 功能查询半结构化数据。

将 JSON 属性提取到它们自己的单独列中。
让我们看看这两种选择的优缺点。
语句中的approximate_arrival_timestamp、partition_key、shard_id和sequence_number 列SELECT由 Kinesis Data Streams 提供。来自流的记录在kinesis_data列中。该refresh_time列由 Amazon Redshift 提供。

sensor_data为了将 JSON 数据保留在物化视图的单个列中,我使用了JSON_PARSE函数:
因为我使用了AUTO REFRESH YES参数,当流中有新数据时,物化视图的内容会自动刷新。

为了将 JSON 属性提取到sensor_data_extract物化视图的单独列中,我使用了JSON_EXTRACT_PATH_TEXT函数:
将数据加载到 Kinesis 数据流
中为了将数据放入my-input-streamKinesis 数据流,我使用以下random_data_generator.pyPython 脚本模拟来自 IoT 传感器的数据:
我启动脚本并查看正在放入流中的记录。它们使用 JSON 语法并包含随机数据。
从 Amazon Redshift 查询流数据
为了比较两个具体化视图,我从每个视图中选择前十行:
在sensor_data实体化视图中,流中的 JSON 数据在payload列中。我可以使用 Amazon Redshift JSON 函数访问以 JSON 格式存储的数据。
在sensor_data_extract实体化视图中,流中的 JSON 数据已被提取到不同的列中:sensor_id、current_temperature、status和event_time。
现在,我可以在我的分析工作负载中使用这些视图中的数据,以及我的数据仓库、运营数据库和数据湖中的数据。我可以将这些视图中的数据与Redshift ML结合使用来训练机器学习模型或使用预测分析。由于物化视图支持增量更新,因此这些视图中的数据可以高效地用作仪表板的数据源,例如,使用 Amazon Redshift 作为 Amazon Managed Grafana 的数据源。

可用性和定价适用于 Kinesis Data Streams 的 Amazon Redshift 流摄取和适用于 Apache Kafka 的托管流现已在所有商业AWS 区域全面推出。使用 Amazon Redshift 流式摄取不会产生额外费用。有关更多信息,请参阅Amazon Redshift 定价。在数据仓库和数据湖中使用低延迟流数据从未如此简单。让我们知道您使用此新功能构建了什么!撰写,达尼洛·波恰,Danilo 与各种规模的初创公司和公司合作,以支持他们的创新。作为 Amazon Web Services 的首席传播者 (EMEA),他利用自己的经验帮助人们将想法变为现实,重点关注无服务器架构和事件驱动编程,以及机器学习和边缘计算的技术和业务影响. 他是 Manning 的 AWS Lambda in Action 的作者。
最新文章:
所有文章资讯、展示的文字、图片、数字、视频、音频、其它素材等内容均来自网络媒体,仅供学习参考。内容的知识产权归属原始著作权人所有。如有侵犯您的版权,请联系我们并提供相应证明,本平台将仔细验证并删除相关内容。
工具综合排行榜
TOP 1
双计算器 双计算器
同时用两个计算器,用于价格对比、数字分别计算等
TOP 2
推算几天后的日期 推算几天后的日期
推算从某天开始,增加或减少几天后的日期
TOP 3
随机密码生成 随机密码生成
随机生成安全复杂的密码,自由设置密码长度及复杂度
TOP 4
推算孩子的血型 推算孩子的血型
根据父母的血型推测子女的血型
TOP 5
日期转中文大写 日期转中文大写
把数字日期转成中文大写,是财务或商务合同常用的工具
热门内容:       双计算器       推算孩子的血型       随机密码生成       日期转中文大写       推算几天后的日期       达轻每日一景       高校分数线       高校查询       周公解梦大全
首页 科技开发工具大全
娱乐游玩工具大全
登录/注册
联系我们
  用户咨询/建议
kf@ss3316.com


商务合作/推广
hz@ss3316.com

达轻工具 APP

访问手机版网站
使用本平台必读并同意:任何内容仅供谨慎参考,不构成建议,不保证正确,平台不承担任何责任,同意用户协议隐私政策   
BaiduTrust安全认证签章
© 达轻科技 版权所有 增值电信业务经营许可证 ICP备 沪B2-20050023-3