【问题标题】:Unable to convert text format to parquet format through spark无法通过火花将文本格式转换为镶木地板格式
【发布时间】:2019-05-26 22:33:46
【问题描述】:

我正在尝试使用 spark 框架将分区的数据从一个表(文本格式)插入另一个表(镶木地板格式)。数据约为 20gb,我使用的配置是:

主人=纱线

部署模式客户端

驱动内存 = 3g

执行程序内存 = 15gb

执行者数 = 50

执行器核心 = 4

我正在使用下面的代码来做到这一点:

val df = spark.sql("select * from table1")
df.repartition(70).write().mode("append").format("parquet").insertInto("table2")

每次我尝试运行它时,在完成某些任务后,作业都会因 java-heap 空间问题而失败。

根据我指定的数据大小和 spark 配置,我不确定这里是否有任何我因为作业失败而遗漏的内容。对此的任何帮助将不胜感激。

【问题讨论】:

  • 我建议也尝试设置 -Xms -Xmx JVMs 参数
  • 源中有多少个文件?
  • @slesh .. 执行程序内存不会起到同样的作用吗?
  • @bdcloud .. 是 113
  • 一种选择是增加驱动程序内存,也请发布您遇到的错误的堆栈跟踪。当您说完成了一些任务时,您的意思是一些文件在目的地转换为镶木地板?源文件也被压缩了?

标签: scala apache-spark hive


【解决方案1】:

你必须设置JVM参数:

How to set Spark MemoryStore size when running in IntelliJ Scala Console?

官方信息:

Spark属性主要可以分为两种:一种是相关的 部署,如“spark.driver.memory”、“spark.executor.instances”、 设置时可能不会影响此类属性 在运行时通过 SparkConf 以编程方式,或者行为是 取决于您选择的集群管理器和部署模式,所以它 建议通过配置文件或 spark-submit 设置 命令行选项;另一个主要和Spark运行时有关 控件,比如“spark.task.maxFailures”,这类属性可以 以任一方式设置。

https://spark.apache.org/docs/latest/configuration.html

【讨论】:

    猜你喜欢
    • 2016-04-15
    • 1970-01-01
    • 2016-01-18
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    • 2020-01-10
    • 2016-10-05
    • 2018-12-20
    相关资源
    最近更新 更多