2017-03-21 5 views
1

私はhbaseからいくつかのデータを読み込むためのカスタムデータソースを書いています。 ExistingRDD.rowToRowRddが電話をかけるまでは問題ありません。次に、GenericRowWithSchemaからスキーマを取得しようとします。それはなぜ私はideiaを持って失敗します...私は過去に同様の問題を抱えている人々を見た。私はSpark 1.6.3を使用していますが、私のスキーマは次のように固定されています:Sparkカスタムデータソース

StructType(Seq(StructField("Date", LongType), 
     StructField("Device", StringType), 
     StructField("Tag", StringType), 
     StructField("TagValue", DoubleType)) 
    ) 

Job aborted due to stage failure: Task 0 in stage 0.0 failed 1 times, most recent failure: Lost task 0.0 in stage 0.0 (TID 0, localhost): scala.MatchError: 1451610000 (of class java.lang.Long) 
at org.apache.spark.sql.catalyst.CatalystTypeConverters$StringConverter$.toCatalystImpl(CatalystTypeConverters.scala:295) 
at org.apache.spark.sql.catalyst.CatalystTypeConverters$StringConverter$.toCatalystImpl(CatalystTypeConverters.scala:294) 
at org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102) 
at org.apache.spark.sql.catalyst.CatalystTypeConverters$$anonfun$createToCatalystConverter$2.apply(CatalystTypeConverters.scala:401) 
at org.apache.spark.sql.execution.RDDConversions$$anonfun$rowToRowRdd$1$$anonfun$apply$2.apply(ExistingRDD.scala:59) 
at org.apache.spark.sql.execution.RDDConversions$$anonfun$rowToRowRdd$1$$anonfun$apply$2.apply(ExistingRDD.scala:56) 
at scala.collection.Iterator$$anon$11.next(Iterator.scala:328) 
at scala.collection.Iterator$$anon$14.hasNext(Iterator.scala:389) 
at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327) 
at org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:88) 
at org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:86) 

ideias?

答えて

1

だから私はその理由を知る。あなたのRowは正確にそのrequiredColumnsを持つ必要があります

()[フィルタに設定]、[フィルタに設定]、[フィルタに設定]、[フィルタに設定]
関連する問題