我正在尝试将spark javapairdd的内容批量加载到hbase表中。似乎将javapairdd.saveasnewapihadoopdataset与hfileoutputformat一起使用是正确的方法。有没有一个例子代码?
8i9zcol21#
考虑一个包含一行的rdd:
{"id":3,"name":"Moony","color":"grey","description":"Monochrome kitty"}
转换rdd我们需要将rdd转换为(键,值)对,其内容如下:(行键,[行键,列族,列名,值])
datamap = rdd.map(lambda x: (str(json.loads(x)["id"]),[str(json.loads(x)["id"]),"cfamily","cats_json",x]))
保存到hbase我们可以利用 RDD.saveAsNewAPIHadoopDataset 本例中使用的函数:pyspark hbase example将rdd保存到hbase?
RDD.saveAsNewAPIHadoopDataset
datamap.saveAsNewAPIHadoopDataset(conf=conf,keyConverter=keyConv,valueConverter=valueConv)
您可以参考我的博客:pyspark sparkstreaming hbase来获取工作示例的完整代码。
1条答案
按热度按时间8i9zcol21#
考虑一个包含一行的rdd:
转换rdd
我们需要将rdd转换为(键,值)对,其内容如下:
(行键,[行键,列族,列名,值])
保存到hbase
我们可以利用
RDD.saveAsNewAPIHadoopDataset
本例中使用的函数:pyspark hbase example将rdd保存到hbase?您可以参考我的博客:pyspark sparkstreaming hbase来获取工作示例的完整代码。