Q22 — AWS DEA-C01 第1章
第 22/100 题 | ← 返回第1章
某公司希望实现实时分析能力。该公司希望使用Amazon Kinesis Data Streams和Amazon Redshift以每秒数GB的速度摄取和处理流式数据,并希望通过现有商业智能(BI)和分析工具获取近实时洞察。 哪种解决方案能以最少的运维开销满足这些要求?
- A. 使用Kinesis Data Streams将数据暂存至Amazon S3,再通过COPY命令将S3中的数据直接加载至Amazon Redshift,使数据立即可用于实时分析。
- B. 直接通过SQL查询访问Kinesis Data Streams中的数据,在流上创建物化视图,并定期刷新以查询最新流数据。
- C. 在Amazon Redshift中创建外部模式,将Kinesis Data Streams数据映射为Redshift对象,并创建物化视图读取流数据,设置物化视图自动刷新。 ✓
- D. 将Kinesis Data Streams连接至Amazon Kinesis Data Firehose,使用Firehose将数据暂存至Amazon S3,再通过COPY命令将S3数据加载至Amazon Redshift表中。
正确答案: C. 在Amazon Redshift中创建外部模式,将Kinesis Data Streams数据映射为Redshift对象,并创建物化视图读取流数据,设置物化视图自动刷新。
解析
选项C是较优解:Amazon Redshift通过外部模式(External Schema)集成Kinesis Data Streams,并结合自动刷新的物化视图(Materialized View),可实现低延迟、近实时的数据可见性,且无需管理中间存储(如S3)或额外服务(如Firehose),运维开销最小。选项A和D均引入S3暂存环节,增加架构复杂性、延迟及故障点;选项B中直接SQL查询Kinesis流缺乏内置支持,且手动刷新物化视图难以可靠处理每秒GB级吞吐,易导致数据丢失或一致性问题。因此,选项C是唯一满足低运维开销与近实时分析要求的方案。