当前位置: 首页 > 知识库问答 >
问题:

在S3中将大型Spark Dataframe保存为单个json文件

濮书
2023-03-14

我试图在Amazon S3中将一个超过20G的Spark DataFrame保存到一个json文件中,我保存该DataFrame的代码如下所示:

dataframe.repartition(1).save("s3n://mybucket/testfile","json")

但是我从S3得到一个错误“你提议的上传超过了最大允许的大小”,我知道亚马逊允许的最大文件大小是5GB。

是否可以使用S3多部分上传与Spark?或者还有别的办法可以解决这个问题?

顺便说一句,我需要一个文件中的数据,因为另一个用户将在之后下载它。

*IM在用spark-ec2脚本创建的3节点集群中使用apache spark 1.3.1。

多谢

JG

共有1个答案

亢保赫
2023-03-14

我会尝试将大数据包分成一系列较小的数据包,然后将这些数据包追加到目标文件中的同一个文件中。

df.write.mode('append').json(yourtargetpath)
 类似资料:
  • 我正在尝试将一些UTF-8字符输出到JSON文件。 当我保存文件时,它们是像这样编写的: {“some_key”: “Enviar invitaci\u00f3n privada”} 上述操作是有效的。当我加载文件并打印“some_key”时,它会在终端中显示“Enviar invitación Private ada”。 是否无论如何都要编写带有“some_key”作为编码版本的JSON文件,如

  • 问题内容: 我目前利用以下内容将文件上传到S3: 上面的方法工作正常,但我想直接将a保存到S3以从应用程序中删除几秒钟,但是我不知道如何执行此操作?这是我当前将图像保存到文件中的方式: 有没有一种方法可以直接以流的形式直接写入Amazon S3,如果可以,有人可以显示示例吗? 另外,这是个好主意吗?如果它容易出错,我将继续使用当前方法。任何建议表示赞赏。 问题答案: 以下(或类似的东西)应该可以正

  • 我想将spark dataframe的内容保存到s3 bucket中的csv文件中: 它创建名为:part-00000-fc644e84-7579-48的文件的问题。 有没有办法修复这个文件的名字。例如test.csv? 谢谢 最佳

  • 我有一些。S3上bucket中的zip文件。我需要解压并将其保存回bucket中,无需本地文件系统。 我知道S3是静态存储,但我可以通过给S3提供路径来解压S3本身上的文件。 我有以下问题。 > 我可以通过桶/文件夹的路径到,所以它解压文件直接在那里。 BufferedOutputStream=new BufferedOutputStream(new FileOutputStream(filePa

  • 我使用数据砖在R中开发了一个模型。我想将输出数据文件保存在 AWS S3 存储桶上,但当我保存文件如下时,它不会保存到挂载的驱动器。 使用R将数据挂载到S3的最佳方法是什么? 我已经尝试了下面的示例代码,它可以工作,所以我知道我在AWS和Database ricks之间的连接可以工作。

  • 我需要将数据存储在csv文件中的seperate列中。特别是(专业经验) 专栏应该是这样的 日期,学历,电子邮件,Id,工作职位,移动电话号码,姓名,工作经验1,日期1,经验1,工作经验2,日期2,经验2,技能,累计经验