我想使用BigTable作为Flink作业的接收器:
- 是否有现成的连接器?
- 我可以使用数据流API吗?
- 我如何才能最优地传递一个稀疏对象(99%稀疏度),即确保没有键/值在BigTable中创建null ?
我已经搜索了上述主题的文档,但无法回答这些问题。
感谢您的支持!
我认为Flink没有原生的BigTable连接器。
也就是说,你可以使用Flink HBase SQL Connector with BigTable HBase client从Flink访问BigTable:
Flink job <-> Flink HBase SQL Connector <-> BigTable HBase client <-> BigTable
这个连接器看起来与Cloudera提出的Flink HBase连接器类似,可以手动安装(参见评论@rsantiago)。
关于稀疏数据持久性的一种可能的方法可以从Cloudera的示例中获得,其中列与put.addColumn
一起添加,以便您可以在该部分中评估它是否为空并丢弃它(参见评论@rsantiago)。