4

toDF() 方法的文档指定我们可以将选项参数传递给该方法。但它没有指定这些选项可以是什么(https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-extensions-dynamic-frame.html)。有谁知道这方面是否有进一步的文件?在从 DynamicFrame 创建 DataFrame 时,我对传递模式特别感兴趣。

4

1 回答 1

1

不幸的是,没有太多可用的文档,但对动态框架源代码的研发和分析表明如下:

  • toDF 中可用的选项与ResolveOption类有关,然后是 toDF 本身,因为 ResolveOption 类为参数添加了含义(请阅读代码)。
  • ResolveOption 类接受 ChoiceType 作为参数。
  • 文档中提供的选项示例与 ResolveChoice 中提供的选项示例类似,specs其中也提到了 ChoiceType
  • 选项进一步转换为序列,并从 _jdf here引用 toDF 函数。

specs在看到spark 的 dynamicFrame 和toDF的 toDF 实现后,我的理解是,在从 DynamicFrame 创建 DataFrame 时,我们无法传递模式,但只能进行较小的列操作。

话虽如此,一种可能的方法是从动态框架中获取数据框,然后对其进行操作以更改其架构。

于 2020-10-08T09:50:40.303 回答