我希望能够轻松地创建测试数据文件,这些文件可以随意保存并重新加载到dev bigtable示例中,并传递给团队的其他成员,以便他们也可以这样做。使用dataflow到bigtable的建议方法似乎有点笨重(任何加载新类型数据的人——不是为了生产目的,甚至只是第一次玩bigtable——都需要了解apache beam、dataflow、java、,maven??——这可能会限制我的团队采用bigtable),而且我的数据还不在hbase中,所以我不能只导出sequencefile。
但是,根据本文档,hbase的sequencefile键似乎应该可以在常规java/scala/python代码中构造:
hbase键包括:行键、列族、列限定符、时间戳和类型。
只是细节不够详细,我无法真正做到。键的不同部分之间存在什么分隔符(这是我的主要问题)。
从那里,spark至少有一个方法来编写一个sequencefile,所以我认为我应该能够创建我想要的文件,只要我能够构造键。
我知道有一种替代方法(在这个答案中描述,它的示例链接断开了)涉及编写一个脚本来启动dataproc集群,在那里推送一个tsv文件,并使用hbase importtsv将数据推送到bigtable。这对我来说似乎也太重了,但也许我还不习惯云世界。
1条答案
按热度按时间rlcwz9us1#
序列文件解决方案适用于需要从cloud bigtable导入和/或导出大型数据集的情况。如果您的文件足够小,那么创建一个脚本来创建一个表,从一个文件中读取,并使用bufferedmutator(或者用您喜欢的语言编写bath)来写入cloud bigtable。