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

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

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

  1. {
  2. "memberId": "Test0001",
  3. "type": "TestType"
  4. "params": {"field1":"testField","field2":"testField2"}
  5. }

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

  1. val table = conn.getBufferedMutator(TableName.valueOf(tableName))
  2. val memberId = "Test0001"
  3. val put = new Put(SLUtils.strToRowKey(memberId))
  4. // Let's say test.json has been processed via session.read.json(test.json).rdd,
  5. // so we have a json string called `eventPayload: String` that looks exactly as test.json
  6. table.mutate(put.addColumn(family = Bytes.toBytes("cf"), qualifier = Bytes.toBytes("q"), value=Bytes.toBytes(eventPayload)))
  7. table.flush()
  8. table.close()

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

暂无答案!

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

相关问题