输出数据集对于 activity 类型的 HDInsightHive 真的很重要吗?

Does the output dataset really matter for HDInsightHive type of activity?

我们在管道中创建的任何 activity 都必须有一个输出数据集——我认为这纯粹是句法规则,以防 activity 是 'HDInsightHive' 类型。因为无论如何实际的输出目的地将由 HQL 查询本身决定。例如,在我们的例子中,HQL 查询从某些 table 中选择行并将行插入到其他一些外部 table。所以最终是 HQL 决定了输出的去向。目的地名称 table 出现在 HQL 本身中(插入覆盖 tablename..)。因此,在那种情况下,activity 中定义的输出数据集似乎只是充当语法粘合剂,为此必须存在。对吗?

的确,您可以像在 USQL 查询中一样定义数据在 HQL 查询中的位置。在我看来,输出数据集的主要功能是它允许您将输出通过管道传输到另一个 activity。如果您没有定义输出数据集,或者您定义的文件夹与 HQL 脚本放置输出的位置不匹配,您将无法将该数据集用作另一个 activity 的输入。如果你所有的管道总是以你的 HQL activity 结尾,并且在那之后你不需要做任何事情,那么我可以看到它看起来不需要输出数据集。

HTH