微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 linux 机器上使用 s3a 失败 >100 列镶木地板

如何解决在 linux 机器上使用 s3a 失败 >100 列镶木地板

我正在使用 s3a 从数据库读取数据帧并写入 .parquet(s3a://bucketname//folder)。 它适用于 ~100 列。如果这是列限制/版本问题/内存问题,找不到任何材料? 希望从有经验的社区找到一些方向。

附注。与下面相同的代码适用于我本地机器上的 Eclipse Windows,但在 linux 实例上出现问题

spark 版本 - 2.4.0-cdh6.3.3 Scala 版本- 2.11.12 Java 版本 - 1.8

def execute(sql:String) = {//defined connection }
val df_sql = ("select * from sampletable")
val df_exe = execute(df_sql)
df_exe.write.parquet(s3a://bucketname/folder)

解决方法

找到答案,以防有人遇到此问题。 调用 spark-submit 时,增加驱动程序内存以适应正在写入的文件的 1 个分区。我用了 16g

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。