0
Hbaseからデータを読み込むためにsparkジョブを実行中にこのエラーが発生しました。ありがとう。java.lang.IllegalArgumentException:offset(0)+ length(8)が配列の容量を超えています:4
は、ここで私はほとんどの時間は型エラーでこの問題に会ったコード
val hBaseRDD = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat],
classOf[org.apache.hadoop.hbase.io.ImmutableBytesWritable],
classOf[org.apache.hadoop.hbase.client.Result])
hBaseRDD.count()
// transform (ImmutableBytesWritable, Result) tuples into an RDD of Result’s
val resultRDD = hBaseRDD.map(tuple => tuple._2)
resultRDD.count()
// transform into an RDD of (RowKey, ColumnValue)s the RowKey has the time removed
val keyValueRDD = resultRDD.map(result => (Bytes.toString(result.getRow()).split(" ")(0), Bytes.toDouble(result.value)))
keyValueRDD.take(3).foreach(kv => println(kv))
// group by rowkey , get statistics for column value
val keyStatsRDD = keyValueRDD.groupByKey().mapValues(list => StatCounter(list))
keyStatsRDD.take(5).foreach(println)