我目前正在为GCP数据工程师考试学习,并且一直难以理解何时使用Cloud和为什么要使用Composer。
通过阅读文档,我的印象是,当作业之间存在相互依赖时,应该使用Composer,例如,当第一个作业完成时,我们需要作业的输出来启动另一个作业,并使用来自第一个作业的依赖项。然后,您可以根据需要灵活地链接这些“工作流”,还可以提供机会在失败时重新启动作业,运行批处理作业、shell脚本、链查询等等。
对于Cloud来说,它在可以执行哪些任务方面具有非常相似的功能,但是,它更多地用于常规作业,可以定期执行,而不一定用于作业之间的相互依赖关系,或者在启动另一个作业之前需要等待其他作业。因此,似乎更适合在“简单”任务中使用。
这些想法是在试图回答一些我发现的试题后产生的。然而,我对我发现的“正确答案”感到惊讶,并希望有人能澄清这些答案是否正确,以及我是否理解何时使用而不是其他答案。
下面是一些让我对这个主题感到困惑的问题:
问题1
您正在实现几个必须按计划执行的批处理作业。这些作业有许多相互依赖的步骤,必须按照特定的顺序执行。作业的一部分涉及执行shell脚本、运行Hadoop作业和在BigQuery中运行查询。预计这些工作将持续数分钟至几个小时。如果这些步骤失败,则必须按固定次数重试。您应该使用哪个服务来管理这些作业的执行?
A.云计划
B.云数据流
C.云功能
D.云作曲家
正确答案:a
问题2
您希望自动执行运行在Google上的多步骤数据管道。该管道包括具有多个依赖项的Cloud和Cloud作业。您希望在可能的情况下使用托管服务,管道将每天运行。你应该使用哪种工具?
A. cron
B.云作曲家
C.云调度器
D. Cloud上的工作流模板
正确答案:d
问题3
你的公司有一个混合云计划。您有一个复杂的数据管道,它在云提供商服务之间移动数据,并利用来自每个云提供商的服务。您应该使用哪个云本地服务来编排整个管道?
A.云数据流
B.云作曲家
C.云数据报
D. Cloud Dataproc
正确答案:d
如果对此有任何见解,我们将不胜感激。谢谢!
发布于 2020-01-21 14:30:27
您的假设是正确的,Composer是一个Apache气流管理服务,它在编排相互依赖的管道时服务很好,而Cloud只是一个托管Cron服务。
我不知道你是从哪里得到这些问题和答案的,但我向你保证(上个月我刚刚获得了GCP数据工程师认证),正确的答案将是Composer为其中的每一个,只是忽略这个假设正确的答案,然后继续前进。
发布于 2020-01-21 17:05:36
云调度程序本质上是以服务为核心的。您只需要输入一个计划和一个端点(Pub/Sub主题、HTTP、App路由)。内置了重试处理,这样您就可以设置固定的次数,并且没有请求的时间限制。其功能比Composer简单得多。
云编写器是管理Apache气流的,它“帮助您创建、调度、监视和管理工作流。云编写器自动化帮助您快速创建气流环境,并使用气流本机工具,例如强大的气流网络接口和命令行工具,这样您就可以专注于工作流而不是基础设施。”(https://cloud.google.com/composer/docs/)气流是针对所有需要的工具的数据管道。
https://stackoverflow.com/questions/59841146
复制相似问题