json—如何使用spark将avro、协议缓冲区和节俭写入hbase

wooyq4lh  于 2021-07-13  发布在  Spark
关注(0)|答案(0)|浏览(208)

我是新来的,我做了很多研究,但都没有结果。
关于如何使用avro、protocolbuffer和thrift三种方法将数据存储到hbase,是否有分步指南?
我想存储到hbase的示例数据是保存在 test.json :

{
    "memberId": "Test0001",
    "type": "TestType"
    "params": {"field1":"testField","field2":"testField2"}
}

我知道将json存储到spark中的hbase看起来是这样的:

val table = conn.getBufferedMutator(TableName.valueOf(tableName))
val memberId = "Test0001"
val put = new Put(SLUtils.strToRowKey(memberId))

// Let's say test.json has been processed via session.read.json(test.json).rdd, 
// so we have a json string called `eventPayload: String` that looks exactly as test.json

table.mutate(put.addColumn(family = Bytes.toBytes("cf"), qualifier = Bytes.toBytes("q"), value=Bytes.toBytes(eventPayload)))
table.flush()
table.close()

所以我的问题是,有没有一个类似的代码,我可以作为一个指南,读取相同的test.json,将其转换为avro,并将其写入(或放入)hbase?关于节俭和协议缓冲区的问题也一样。
如果不清楚,请在评论部分告诉我。谢谢!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题