Q30 — AWS DEA-C01 第1章
第 30/100 题 | ← 返回第1章
一家公司正将其数据库服务器从运行Microsoft SQL Server的Amazon EC2实例迁移至Amazon RDS for Microsoft SQL Server数据库实例。在迁移完成前,该公司分析团队需每日导出大量数据元素。这些数据元素源自跨多个表的SQL连接查询结果,且必须以Apache Parquet格式存储于Amazon S3中。 以下哪种解决方案能以最高运维效率满足这些要求?
- A. 在基于EC2的SQL Server数据库中创建视图,包含所需数据元素。创建一个AWS Glue作业,直接从该视图读取数据,并以Parquet格式传输至S3存储桶。按日调度该AWS Glue作业。
- B. 配置SQL Server Agent每日运行SQL查询,从基于EC2的SQL Server数据库中提取所需数据元素,并将输出.csv文件定向至S3存储桶。创建S3事件触发AWS Lambda函数,将.csv格式转换为Parquet格式。
- C. 使用SQL查询在基于EC2的SQL Server数据库中创建视图,包含所需数据元素。创建并运行AWS Glue爬网程序读取该视图。创建AWS Glue作业检索数据,并以Parquet格式传输至S3存储桶。按日调度该AWS Glue作业。 ✓
- D. 创建一个AWS Lambda函数,通过Java Database Connectivity(JDBC)查询基于EC2的数据库。配置该Lambda函数检索所需数据、转换为Parquet格式并传输至S3存储桶。使用Amazon EventBridge按日调度该Lambda函数。
正确答案: C. 使用SQL查询在基于EC2的SQL Server数据库中创建视图,包含所需数据元素。创建并运行AWS Glue爬网程序读取该视图。创建AWS Glue作业检索数据,并以Parquet格式传输至S3存储桶。按日调度该AWS Glue作业。
解析
为最高效满足需求,需方案能直接从EC2上的SQL Server提取数据、原生转换为Parquet并写入S3,避免中间格式(如CSV)及额外转换步骤。选项C流程合理:首先在源库创建视图封装复杂JOIN逻辑;其次使用AWS Glue爬网程序自动推断视图元数据(简化Schema管理);再通过AWS Glue作业直接读取视图并以Parquet格式写入S3,全程无冗余转换;最后按日调度确保时效性。相较之下,选项B引入CSV中间环节及Lambda二次转换,增加延迟与失败点;选项D受限于Lambda内存与超时,难以处理“大量数据”;选项A虽可行,但未利用Glue爬网程序自动化元数据发现,运维效率略低于C。因此,C为最优解。