Apache spark S3上的拼花文件格式:哪个是实际的拼花文件?

Apache spark S3上的拼花文件格式:哪个是实际的拼花文件?,apache-spark,amazon-s3,parquet,Apache Spark,Amazon S3,Parquet,Scala 2.12和Spark 2.2.1。我使用以下代码将数据帧的内容写入S3: myDF.write.mode(SaveMode.Overwrite) .parquet("s3n://com.example.mybucket/mydata.parquet") 当我在S3上转到com.example.mybucket时,我实际上看到了一个名为“mydata.parquet”的目录,以及名为“mydata.parquet\uu$folder$”的文件!!!如果我进入mydata.parq

Scala 2.12和Spark 2.2.1。我使用以下代码将
数据帧的内容写入S3:

myDF.write.mode(SaveMode.Overwrite)
  .parquet("s3n://com.example.mybucket/mydata.parquet")
当我在S3上转到
com.example.mybucket
时,我实际上看到了一个名为“mydata.parquet”的目录,以及名为“mydata.parquet\uu$folder$”的文件!!!如果我进入
mydata.parquet
目录,我会在下面看到两个文件:

  • \u成功
    ;及
  • part-.snappy.parquet
而我只是希望看到一个名为
mydata.parquet
的文件存在于桶的根中

这里是否有问题(如果有,是什么?!?)或者拼花文件格式是否会出现这种情况?如果是预期的,我应该从哪个实际拼花文件中读取:

  • mydata.parquet
    directory?;或
  • mydata.parquet_$folder$
    file?;或
  • mydata.parquet/part-.snapy.parquet

  • 谢谢

    mydata.parquet/part-.snapy.parquet
    是实际的拼花数据文件。但是,像Spark break这样的工具通常会将数据集放入多个
    部分
    文件中,并期望指向包含多个文件的目录。
    \u SUCCESS
    文件是一个简单的标志,指示写入操作已完成。
    mydata.parquet/part-.snappy.parquet
    是实际的拼花数据文件。但是,像Spark break这样的工具通常会将数据集放入多个
    部分
    文件中,并期望指向包含多个文件的目录。
    \u SUCCESS
    文件是一个简单的标志,指示写入操作已完成。

    根据api,保存保存在您提供的文件夹中的parqueat文件。成功是这个过程迅速完成的前提

    S3如果直接向S3写入commit,则创建这些$folder。它会写入临时文件夹并复制到s3中的最终目的地。原因是没有重命名的概念


    查看s3 distcp和DirectCommitter以了解性能问题。

    根据api将其保存的parqueat文件保存在您提供的文件夹中。成功是这个过程迅速完成的前提

    S3如果直接向S3写入commit,则创建这些$folder。它会写入临时文件夹并复制到s3中的最终目的地。原因是没有重命名的概念

    查看s3 distcp和DirectCommitter以了解性能问题

  • $folder$标记被s3n/amazon的emrfs用来表示“空目录”。忽略
  • 正如其他人所指出的那样,_SUCCESS文件是一个0字节的文件。忽略
  • 目录中的所有其他.parquet文件都是输出;最终的数量取决于在输入端执行的任务数量
  • 当spark使用目录(树)作为数据源时,所有以u或开头的文件都将被删除。被忽视;s3n也会去掉那些$folder$的东西。因此,如果您使用新查询的路径,它将只拾取该拼花地板文件

  • $folder$标记被s3n/amazon的emrfs用来表示“空目录”。忽略
  • 正如其他人所指出的那样,_SUCCESS文件是一个0字节的文件。忽略
  • 目录中的所有其他.parquet文件都是输出;最终的数量取决于在输入端执行的任务数量

  • 当spark使用目录(树)作为数据源时,所有以u或开头的文件都将被删除。被忽视;s3n也会去掉那些$folder$的东西。因此,如果您使用新查询的路径,它将只拾取该拼花地板文件。

    不是直接提交者:无法处理故障…这是spark 2.x中缺少该路径的原因不是直接提交者:无法处理故障…这是spark 2.x中缺少该路径的原因