Spark завершает работу, но RStudio показывает исключение заголовка GC - PullRequest
0 голосов
/ 04 июля 2019

Мы новички в представлении искровых работ от RStudio с помощью sparklyr. Мы видим длинные, большие задания, выполненные в истории Spark, но RStudio показывает исключение издержек Java GC. У нас большие наборы данных.

Нужно ли увеличивать объем памяти RStudio Java для sparklyr? Если так, как это сделано? Мы попробовали:

options(java.parameters = "-Xmx32g")

Исключение, которое мы получаем в RStudio после завершения задания в Spark:

Error: java.lang.OutOfMemoryError: GC overhead limit exceeded
        at java.lang.StringCoding.decode(StringCoding.java:215)
        at java.lang.String.<init>(String.java:463)
        at java.lang.String.<init>(String.java:515)
        at org.apache.spark.unsafe.types.UTF8String.toString(UTF8String.java:1213)
        at org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificSafeProjection.createExternalRow_0_0$(Unknown Source)
        at org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificSafeProjection.apply(Unknown Source)
        at org.apache.spark.sql.Dataset$$anonfun$org$apache$spark$sql$Dataset$$collectFromPlan$1.apply(Dataset.scala:3276)
        at org.apache.spark.sql.Dataset$$anonfun$org$apache$spark$sql$Dataset$$collectFromPlan$1.apply(Dataset.scala:3273)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
        at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
        at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
        at scala.collection.mutable.ArrayOps$ofRef.map(ArrayOps.scala:186)
        at org.apache.spark.sql.Dataset.org$apache$spark$sql$Dataset$$collectFromPlan(Dataset.scala:3273)
        at org.apache.spark.sql.Dataset$$anonfun$collect$1.apply(Dataset.scala:2722)
        at org.apache.spark.sql.Dataset$$anonfun$collect$1.apply(Dataset.scala:2722)
        at org.apache.spark.sql.Dataset$$anonfun$52.apply(Dataset.scala:3254)
        at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:77)
        at org.apache.spark.sql.Dataset.withAction(Dataset.scala:3253)
        at org.apache.spark.sql.Dataset.collect(Dataset.scala:2722)
        at sparklyr.Utils$.collect(utils.scala:200)
        at sparklyr.Utils.collect(utils.scala)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at sparklyr.Invoke.invoke(invoke.scala:139)
        at sparklyr.StreamHandler.handleMethodCall(stream.scala:123)
        at sparklyr.StreamHandler.read(stream.scala:66)
        at sparklyr.BackendHandler.channelRead0(handler.scala:51)
        at sparklyr.BackendHandler.channelRead0(handler.scala:4)
...