2
我試圖將Spark JavaPairRDD的內容批量加載到HBase表中。如何使用Spark JavaPairRDD.saveAsNewAPIHadoopDataset使用HFileOutputFormat類的HBase?
看來,使用JavaPairRDD.saveAsNewAPIHadoopDataSet與HFileOutputFormat是正確的方法。
是否有一個示例代碼?
我試圖將Spark JavaPairRDD的內容批量加載到HBase表中。如何使用Spark JavaPairRDD.saveAsNewAPIHadoopDataset使用HFileOutputFormat類的HBase?
看來,使用JavaPairRDD.saveAsNewAPIHadoopDataSet與HFileOutputFormat是正確的方法。
是否有一個示例代碼?
考慮包含單線上的RDD:
{"id":3,"name":"Moony","color":"grey","description":"Monochrome kitty"}
變換的RDD
我們NEET到RDD轉變成(鍵,值)對具有下列內容:
( rowkey,[行鍵,列族,列名,值])
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 ?
datamap.saveAsNewAPIHadoopDataset(conf=conf,keyConverter=keyConv,valueConverter=valueConv)
你可以參考我的博客:pyspark-sparkstreaming hbase的工作示例的完整代碼。
可以https://github.com/apache/spark/blob/master/examples/src/main/scala/org/apache/spark/examples/HBaseTest.scala或https://github.com/apache/ spark/blob/master/examples/src/main/python/hbase_outputformat.py是* any * help? – 2014-09-20 23:55:20