Datasets in Apache Spark

Datasets in Apache Spark

DatasetTweet ds sc.read.jsonpath.asEncoders.beanTweet.class; ds.show; JavaRDDTweet dstry ds.toJavaRDD; System.out.printlndstry.first.getClass; Caused by: java.util.concurrent.ExecutionException: org.codehaus.commons.compiler.CompileException: File generated.java, Line 50, Column 16: failed to compile: org.codehaus.commons.compiler.CompileException: File generated.java, Line 50, Column 16: No applicable constructormethod found for actual parameters org.apache.spark.unsafe.types.UTF8String; candidates are: public void sparkSQL.Tweet.setIdlong at org.spark_project.guava.util.concurrent.AbstractFutureSync.getValueAbstractFuture.java:306 at org.spark_project.guava.util.concurrent.AbstractFutureSync.getAbstractFuture.java:293 at org.spark_project.guava.util.concurrent.AbstractFuture.getAbstractFuture.java:116 at org.spark_project.guava.util.concurrent.Uninterruptibles.getUninterruptiblyUninterruptibles.java:135 at org.spark_project.guava.cache.LocalCacheSegment.getAndRecordStatsLocalCache.java:2410 at org.spark_project.guava.cache.LocalCacheSegment.loadSyncLocalCache.java:2380 at org.spark_project.guava.cache.LocalCacheSegment.lockedGetOrLoadLocalCache.java:2342 at org.spark_project.guava.cache.LocalCacheSegment.getLocalCache.java:2257 at org.spark_project.guava.cache.LocalCache.getLocalCache.java:4000 at org.spark_project.guava.cache.LocalCache.getOrLoadLocalCache.java:4004 at org.spark_project.guava.cache.LocalCacheLocalLoadingCache.getLocalCache.java:4874 at org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator.compileCodeGenerator.scala:1369 at org.apache.spark.sql.catalyst.expressions.codegen.GenerateSafeProjection.createGenerateSafeProjection.scala:197 at org.apache.spark.sql.catalyst.expressions.codegen.GenerateSafeProjection.createGenerateSafeProjection.scala:36 at org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator.generateCodeGenerator.scala:1325 at org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator.generateCodeGenerator.scala:1322 at org.apache.spark.sql.execution.DeserializeToObjectExecanonfun2.applyobjects.scala:90 at org.apache.spark.sql.execution.DeserializeToObjectExecanonfun2.applyobjects.scala:89 at org.apache.spark.rdd.RDDanonfunmapPartitionsWithIndexInternal1anonfunapply24.applyRDD.scala:818 at org.apache.spark.rdd.RDDanonfunmapPartitionsWithIndexInternal1anonfunapply24.applyRDD.scala:818 at org.apache.spark.rdd.MapPartitionsRDD.computeMapPartitionsRDD.scala:38 at org.apache.spark.rdd.RDD.computeOrReadCheckpointRDD.scala:324 at org.apache.spark.rdd.RDD.iteratorRDD.scala:288 at org.apache.spark.rdd.MapPartitionsRDD.computeMapPartitionsRDD.scala:38 at org.apache.spark.rdd.RDD.computeOrReadCheckpointRDD.scala:324 at org.apache.spark.rdd.RDD.iteratorRDD.scala:288 at org.apache.spark.scheduler.ResultTask.runTaskResultTask.scala:87 at org.apache.spark.scheduler.Task.runTask.scala:109 at org.apache.spark.executor.ExecutorTaskRunner.runExecutor.scala:345 at java.util.concurrent.ThreadPoolExecutor.runWorkerThreadPoolExecutor.java:1149 at java.util.concurrent.ThreadPoolExecutorWorker.runThreadPoolExecutor.java:624 at java.lang.Thread.runThread.java:748 Caused by: org.codehaus.commons.compiler.CompileException: File generated.java, Line 50, Column 16: failed to compile: org.codehaus.commons.compiler.CompileException: File generated.java, Line 50, Column 16: No applicable constructormethod found for actual parameters org.apache.spark.unsafe.types.UTF8String; candidates are: public void sparkSQL.Tweet.setIdlong at org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator.orgapachesparksqlcatalystexpressionscodegenCodeGeneratordoCompileCodeGenerator.scala:1435 at org.apache.spark.sql.catalyst.expressions.codegen.CodeGeneratoranon1.loadCodeGenerator.scala:1497 at org.apache.spark.sql.catalyst.expressions.codegen.CodeGeneratoranon1.loadCodeGenerator.scala:1494 at org.spark_project.guava.cache.LocalCacheLoadingValueReference.loadFutureLocalCache.java:3599 at org.spark_project.guava.cache.LocalCacheSegment.loadSyncLocalCache.java:2379 When I looked closely the only thing I raised my doubts is this: No applicable constructormethod found for actual parameters org.apache.spark.unsafe.types.UTF8String; candidates are: public void sparkSQL.Tweet.setIdlong

It gives you an error because of type mismatch: Tweet class defines id field as Long. Your data has id as String. You have to either cast input or adjust class definition.

Комментарии

Популярные сообщения из этого блога

Skipping acquire of configured file 'contrib/binary-i386/Packages' as repository … doesn't support architecture 'i386'

Connection string for MariaDB using ODBC

Celery like system based on django channels