我开始玩Spark 2.0.1。新的数据集API非常干净,但我遇到了非常简单的操作问题。Spark 2.0.1 java.lang.NegativeArraySizeException
也许我失去了一些东西,希望有人能帮助。
这些指令
SparkConf conf = new SparkConf().setAppName("myapp").setMaster("local[*]");
SparkSession spark = SparkSession
.builder()
.config(conf)
.getOrCreate();
Dataset<Info> infos = spark.read().json("data.json").as(Encoders.bean(Info.class));
System.out.println(infos.rdd().count());
产生
java.lang.NegativeArraySizeException
和致命由JVM(1.8)检测到的错误。
使用数据集api处理数据(即选择计数信息对象)可以正常工作。
如何在数据集和RDD之间切换?
谢谢你的回答。问题是spark.read()和其他指令是库调用,即我刚刚使用了库,没有定制代码,除了Info.class。 – besil
你可以粘贴更多的细节,如你的JSON,完整的错误堆栈跟踪和信息模型对象等... –