Professional Data Engineer 练习题 — 数据工程师 - 专业级

1、题库联网,会自动更新,无需重新获取;

2、激活题库,可同时拥有中英文的访问权限;

3、包含在线练习,模拟测试,PDF下载;

4、可使用小程序或电脑网页端刷题学习,有效期一年;

5、输入激活码即可使用,可点击右侧立即购买或联系客服购买。

6、有问题可通过微信,whatsapp,Line联系客服;

考试信息

数据工程师 – 专业级

英文全称:Professional Data Engineer(PDE)

- 考试语言:英语、日语、韩语、西班牙语。考试语言无中文,题库的中文供参考。

- 费用:200美元

- 时长:120分钟

- 题型:50–60道单选/多选题

- 及格线:约70%

- 有效期:2年

- 报考链接:https://cloud.google.com/certification/data-engineer

- 定位:大数据管道、ETL、数据湖、数据仓库、BI分析架构

样题

Professional Data Engineer · Q1
Topic 1 Question #1 贵公司使用TensorFlow构建了一个拥有大量神经元和层的神经网络模型。该模型对训练数据拟合良好。然而,当用新数据进行测试时,其性能却很差。您可以采用什么方法来解决这个问题?
  • A.
    螺纹
  • B.
    序列化
  • C.
    辍学方法
  • D.
    降维

答案: C

题目中模型训练数据拟合良好但新数据测试性能差的现象属于典型的过拟合问题,即模型过度学习了训练数据的独有噪声和特征,泛化能力不足。在All Professional Data Engineer Questions认证的机器学习模型优化核心考点中,针对多层多神经元的深度神经网络过拟合问题,辍学(Dropout)方法是官方推荐的首选正则化方案之一,该方法可直接嵌入TensorFlow的神经网络结构中,无需大幅调整训练逻辑即可快速降低模型对训练数据的依赖,提升泛化能力,完全匹配题目需求。 各选项分析: A. 螺纹:属于机械工程或多线程编程领域的无关术语,和神经网络过拟合问题的解决没有任何关联,因此错误。 B. 序列化:序列化是将训练完成的TensorFlow模型转换为可存储、可传输的标准格式(如SavedModel格式)的操作,作用是方便模型的部署和复用,和提升模型泛化能力、解决过拟合无关,因此错误。 C. 辍学方法:也叫Dropout方法,是深度神经网络常用的正则化手段,训练过程中会随机让一定比例的神经元临时失活,避免神经元之间的共适应性,减少模型对训练数据独有特征的记忆,有效缓解过拟合问题,完全匹配题目场景需求,因此正确。 D. 降维:降维是通过特征选择或特征变换减少输入特征维度的操作,主要作用是降低计算量、消除特征冗余,仅能间接缓解部分过拟合问题,并非针对多层多神经元神经网络过拟合的优先解决方案,因此错误。 关键知识点: 1. 神经网络过拟合判定:当模型在训练集的评估指标远高于测试集的评估指标时,即可判定为过拟合,是机器学习模型上线前需要优先解决的核心问题之一。 2. TensorFlow正则化方法应用:TensorFlow框架内置Dropout、L1/L2正则等多种正则化层,可直接嵌入网络结构实现过拟合治理,是数据工程师需要掌握的核心机器学习优化技能。 3. 模型泛化能力评估:泛化能力指模型对未知新数据的适配能力,是衡量机器学习模型生产可用性的核心指标。 参考资料: 1. TensorFlow官方文档 tf.keras.layers.Dropout, https://www.tensorflow.org/api_docs/python/tf/keras/layers/Dropout 2. Google Cloud AI平台文档 解决过拟合问题, https://cloud.google.com/ai-platform/docs/overfitting
Professional Data Engineer · Q2
Topic 1 Question #2 你正在构建一个服装推荐模型。你知道用户的时尚偏好可能会随着时间而改变,因此你构建了一个数据管道,以便在新数据可用时将其流式传输回模型。你应该如何使用这些数据来训练模型?
  • A.
    仅使用新数据不断重新训练模型。
  • B.
    不断地利用现有数据和新数据的组合对模型进行重新训练。
  • C.
    使用现有数据进行训练,同时使用新数据作为测试集。
  • D.
    使用现有数据作为测试集,对新数据进行训练。

答案: B

本题核心考察机器学习运维(MLOps)中概念漂移的处理以及持续训练的最佳实践,题目中用户时尚偏好随时间变化属于典型的概念漂移场景,即模型推理时的数据分布和初始训练的数据分布产生了差异,如果仅用旧数据训练的模型会逐渐失效。正确的做法是结合历史已有数据和新增的流式数据共同重训模型,既可以保留模型从历史数据中学到的用户长期偏好、商品特征关联等通用知识,避免模型出现灾难性遗忘问题,又能及时融入最新的用户行为变化,适配时尚趋势和用户偏好的动态调整,保证推荐模型的长期有效性,完全符合数据工程师搭建ML生产管道的核心要求。 各选项分析: A. 错误。仅使用新数据重训模型会导致灾难性遗忘问题,模型会完全丢失从历史数据中学到的用户长期偏好、通用消费规律等知识,仅适配短期数据特征,大幅降低推荐模型的准确率,不符合ML生产管道的训练规范。 B. 正确。结合现有数据和新数据重训是处理概念漂移、实现持续训练的标准最佳实践,既保留了历史沉淀的有效特征规律,又能及时适配最新的用户偏好变化,可长期维持推荐模型的效果,满足题目需求。 C. 错误。仅将新数据作为测试集不会更新模型本身,随着时间推移概念漂移程度不断加大,模型效果会持续下降,完全无法适配用户随时间变化的时尚偏好需求。 D. 错误。仅用新数据训练、旧数据作为测试集的做法,一方面存在和A选项一致的灾难性遗忘问题,另一方面由于旧数据和新数据分布已经出现差异,使用旧数据作为测试集无法准确评估模型在当前业务场景下的真实效果,不符合模型训练的数据集划分规范。 关键知识点: 1. 概念漂移处理:当生产环境中模型的输入数据分布或对应的业务逻辑(如本题的用户偏好)随时间发生变化时,需要通过融合新旧数据重训模型来维持模型效果,是数据工程中ML管道运维的核心要求。 2. 持续训练:属于MLOps的核心能力,指当新的有效数据产生或模型效果下降到阈值时,自动触发融合全量有效数据的模型重训流程,适配动态的业务需求。 3. 推荐系统训练数据要求:推荐系统需要同时覆盖用户的长期历史行为数据和最新的短期行为数据,才能同时兼顾用户的长期稳定偏好和实时兴趣变化,提升推荐的准确率和适配性。 参考资料: 1. MLOps: Continuous delivery and automation pipelines in machine learning, https://cloud.google.com/architecture/mlops-continuous-delivery-and-automation-pipelines-in-machine-learning#continuous_training 2. Detect concept drift with Amazon SageMaker Model Monitor, https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-concept-drift.html
Professional Data Engineer · Q3
Topic 1 Question #3 您设计了一个用于存储患者记录的数据库,作为试点项目,覆盖三家诊所的几百名患者。您的设计使用单个数据库表来表示所有患者及其就诊记录,并使用自连接来生成报告。服务器资源利用率为 50%。此后,项目规模扩大,数据库现在需要存储的患者记录数量增加了 100 倍。您无法再运行报告,因为它们要么运行时间过长,要么由于计算资源不足而出现错误。您应该如何调整数据库设计?
  • A.
    将数据库服务器的容量(内存和磁盘空间)增加 200 倍。
  • B.
    根据日期范围将表分片成更小的表,并且只生成具有预先指定的日期范围的报告。
  • C.
    将主患者记录表规范化为患者表和就诊表,并创建其他必要的表以避免自连接。
  • D.
    将表分割成更小的表,每个诊所对应一个表。对较小的表对运行查询,并使用联合查询生成合并报表。

答案: C

本题的核心问题是初始数据模型设计不合理,将患者和就诊两个存在一对多关系的实体合并到单张表存储,依赖自连接生成报告。当数据量增长100倍后,自连接的计算复杂度呈近似指数级上升,即使服务器还有50%的闲置资源,也无法支撑低效的查询计算。选择C方案是通过数据库规范化设计,将单表拆分为独立的患者表和就诊表,用外键关联替代自连接,将查询复杂度从O(n²)降低到接近O(n),不需要额外扩容硬件就能大幅提升报告查询效率,既符合成本优化要求,也完全适配业务增长后的性能需求,是从根源解决问题的方案。 各选项分析: A. 错误。本题的性能瓶颈不是硬件资源不足,初始服务器利用率仅为50%,存在大量闲置资源,盲目扩容200倍是成本极高的治标不治本方案,无法解决自连接带来的本质性能问题,不符合数据工程师优先优化架构、控制成本的核心要求,后续数据持续增长时仍会出现性能故障。 B. 错误。按日期分片仅能缩小单表数据量,没有解决核心的自连接性能问题,每个分片内仍需执行低效的自连接查询,同时限制报告仅支持预先指定的日期范围,会牺牲业务查询的灵活性,无法满足全量数据的报告需求。 C. 正确。初始单表设计不符合数据库第三范式要求,存在数据冗余和不合理的自连接依赖。将表规范化为患者表(存储患者静态属性,主键为患者ID)和就诊表(存储单次就诊信息,外键关联患者ID)后,原来自连接的查询逻辑可转换为两张表的等值外键连接,查询效率提升数个量级,完全适配100倍数据量的查询需求,同时保留全部业务查询灵活性,不需要额外扩容硬件,性价比和可扩展性最优。 D. 错误。按诊所分表没有解决单表内需要自连接的核心问题,每个诊所的子表仍同时存储患者和就诊数据,执行查询时仍需自连接,跨诊所的合并报告还需要额外执行union操作,反而会进一步提升计算复杂度,同时增加分表维护成本,无法根本解决性能问题。 关键知识点: 1. 数据库规范化设计:通过将冗余的单表拆分为多个符合范式的关联表,消除数据冗余和不合理的自连接需求,降低查询复杂度,提升数据库性能。 2. 关系型数据库性能优化原则:性能问题优先通过数据模型、索引等架构层面优化解决,而非直接扩容硬件,兼顾性能、成本和可扩展性。 3. 自连接性能特性:自连接的计算开销随单表数据量增长呈近似指数级上升,是关系型数据库设计中需要尽量避免的反模式。 参考资料: 1. SQL Server 数据组织和设计指南, 2. Google Cloud 关系型数据库性能优化最佳实践
Professional Data Engineer · Q4
Topic 1 Question #4 您在 Google Data Studio 360 中为您的团队创建了一份重要报告。该报告使用 Google BigQuery 作为数据源。您注意到可视化图表没有显示不到 1 小时的数据。您应该怎么做?
  • A.
    通过编辑报表设置禁用缓存。
  • B.
    通过编辑表详细信息禁用 BigQuery 中的缓存。
  • C.
    刷新显示可视化效果的浏览器标签页。
  • D.
    清除浏览器过去一小时的历史记录,然后重新加载显示虚拟化的标签页。

答案: A

本题的核心问题是Google Data Studio 360(现更名为Looker Studio)默认开启服务端缓存,针对BigQuery数据源的默认缓存时长通常为15分钟到1小时,导致报表不会主动拉取最近1小时内生成的最新数据。要解决该问题,最直接且符合最佳实践的方式是调整报表自身的缓存配置,禁用缓存后每次报表加载都会主动向BigQuery发起新的查询,获取最新的全量数据,完美解决不到1小时的数据无法显示的问题。 各选项分析: A. 该选项正确,Data Studio 360的报表级缓存是数据查询的第一优先级,禁用报表缓存后,将跳过服务端缓存直接请求BigQuery的最新数据,针对性解决了缓存导致的新数据不显示问题,且仅影响当前报表,不会干扰其他应用对BigQuery数据的访问,符合成本和效率最优的原则。 B. 该选项错误,首先Data Studio的服务端缓存优先级高于BigQuery的查询缓存,即使禁用BigQuery侧的缓存,只要Data Studio缓存未过期,依然会读取旧的缓存数据;其次修改BigQuery表的缓存设置会影响所有访问该表的业务应用,额外增加查询成本,不属于该场景的最优解决方案。 C. 该选项错误,单纯刷新浏览器标签页不会触发Data Studio重新发起数据源查询,只要服务端缓存仍在有效期内,刷新后依然会展示缓存的旧数据,无法获取最近1小时的新增数据。 D. 该选项错误,Data Studio的缓存存储在Google的服务端,并非浏览器本地的历史记录或缓存数据,清除浏览器历史记录对Data Studio的服务端缓存没有任何影响,无法解决该问题。 关键知识点: 1. Google Data Studio(Looker Studio)缓存机制:Data Studio默认对所有数据源的查询结果提供服务端缓存能力,不同数据源的默认缓存时长从15分钟到12小时不等,用户可通过报表设置调整缓存时长或完全禁用缓存。 2. 可视化工具与数据源的缓存优先级规则:数据可视化工具侧的服务端缓存优先级高于底层数据源的查询缓存,排查数据延迟问题时应优先检查可视化工具侧的缓存配置。 3. BigQuery与Data Studio交互逻辑:Data Studio向BigQuery发起数据查询时,若自身缓存未失效则直接返回缓存结果,仅当缓存失效或禁用时才会向BigQuery提交新的SQL查询请求获取最新数据。 参考资料: 1. Looker Studio 缓存数据的方式, https://support.google.com/looker-studio/answer/7020039 2. 将 Looker Studio 与 BigQuery 搭配使用
Professional Data Engineer · Q5
Topic 1 Question #5 外部客户每天都会向您提供其数据库的数据导出文件。这些数据以逗号分隔值 (CSV) 文件的形式流入 Google Cloud Storage (GCS)。您希望在 Google BigQuery 中分析这些数据,但数据中可能存在格式错误或已损坏的行。您应该如何构建此数据管道?
  • A.
    使用联合数据源,并在 SQL 查询中检查数据。
  • B.
    在 Google Stackdriver 中启用 BigQuery 监控并创建警报。
  • C.
    使用 gcloud CLI 将数据导入 BigQuery,并将 max_bad_records 设置为 0。
  • D.
    运行 Google Cloud Dataflow 批量管道,将数据导入 BigQuery,并将错误推送到另一个死信表进行分析。

答案: D

本题核心需求是构建生产级每日CSV数据导入BigQuery的管道,同时兼容格式错误或损坏的行,既保障正常数据可用于分析,又能留存异常数据用于后续问题排查。选项D采用Google Cloud托管的批量数据处理服务Dataflow构建管道,既可以实现每日GCS CSV文件的自动化解析、校验和写入BigQuery的全流程,又通过死信表路由错误数据的设计,避免部分坏数据导致整个导入任务失败,同时留存异常数据支持后续分析错误原因、反馈给外部客户修正数据,完全符合生产级数据管道的容错性、可观测性要求,是Google Cloud数据工程领域的官方推荐最佳实践。 各选项分析: A. 联合数据源即BigQuery外部表,仅适合临时查询GCS文件的场景,直接用于常规分析会存在每次查询都扫描GCS、性能差、成本高的问题,同时SQL层面的数据校验逻辑复杂,无法批量处理异常行,不符合生产级管道的需求,因此错误。 B. Stackdriver(现Cloud Monitoring)的BigQuery监控仅能在导入出错后触发告警,属于事后通知手段,无法主动处理管道中的错误行,不能解决题目中存在坏数据的核心问题,因此错误。 C. 使用gcloud CLI导入时将max_bad_records设为0属于零容错配置,只要存在1条坏数据整个导入任务就会完全失败,完全无法兼容题目中的坏数据场景,即使调大该参数也仅能跳过坏数据,无法留存异常数据用于分析,且CLI工具不适合生产级每日自动化管道的构建,因此错误。 D. Cloud Dataflow是Google Cloud托管的Apache Beam批流处理服务,批量管道适配每日数据同步的频率,内置支持CSV解析、数据校验、BigQuery写入能力,将错误数据推送到死信表的设计既保障正常数据顺利导入不阻塞分析流程,又留存异常数据支持后续排查,完全满足题目所有需求,因此正确。 关键知识点: 1. 容错数据管道设计:生产级数据导入管道需要具备异常处理能力,通过死信队列/死信表留存异常数据,避免整体任务失败的同时支持错误溯源,是Google Cloud数据工程师认证的核心设计考点。 2. BigQuery数据导入方案选型:需根据数据质量、容错要求、调度频率选择导入工具,临时查询用外部表,简单无容错需求用CLI/UI导入,需要自定义处理和容错能力的生产级管道选用Dataflow。 3. Dataflow批量场景适配:Dataflow作为无服务器托管数据处理服务,支持预制模板和自定义逻辑开发,内置错误路由、多源多端Sink能力,适合定期结构化数据ETL/ELT场景。 参考资料: Cloud Storage CSV to BigQuery Dataflow 模板文档, BigQuery 加载数据最佳实践

常见问题

Professional Data Engineer 有多少道练习题?

本题库收录 Professional Data Engineer 练习题共 349 道,含单选、多选等题型,每题配有答案与解析。

Professional Data Engineer 练习题支持中英文吗?

支持,Professional Data Engineer 练习题为中英双语对照,便于对照原文理解。

Professional Data Engineer 练习题可以免费试做吗?

可以,本页提供免费样题在线试做;完整题库可在掌学兔注册后获取。