![](/img/trans.png)
[英]Put values from Spark RDD to the same HBase column with default timestamp
[英]Spark: Partitioning an RDD created from HBase data
如果我从 HBase(或 MapR-DB)表中读取一些数据
JavaPairRDD<ImmutableBytesWritable, Result> usersRDD = sc.newAPIHadoopRDD(hbaseConf, TableInputFormat.class, ImmutableBytesWritable.class, Result.class);
生成的 RDD 有 1 个分区,我可以看到调用usersRDD.partitions().size()
。 使用像usersRDD.repartition(10)
这样的东西是不可行的,因为 Spark 抱怨说因为 ImmutableBytesWritable 是不可序列化的。
有没有办法让 Spark 从 HBase 数据创建一个分区的 RDD?
使用org.apache.hadoop.hbase.mapreduce.TableInputFormat
时的 Spark 分区数取决于 HBase 表的区域数 - 在您的情况下为 1(默认值)。 有关更多详细信息,请查看我对类似问题的回答。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.