我想知道如何在 Hadoop/HDFS/Hbase 中对数据进行版本控制。它应该是您模型的一部分,因为很可能会发生变化(长时间收集大数据)。
HDFS(基于文件的后端)的主要示例。
样本日志文件.log:
timestamp x1 y1 z1 ...
timestamp x2 y2 z2 ...
我现在想知道在哪里添加版本信息。我看到了两种选择:
文件格式内的版本
日志文件.log:
timestamp V1 x1 y1 z1 ...
timestamp V2 w1 x2 y2 z1 ...
文件名中的版本
*日志文件_V1.log*
timestamp x1 y1 z1 ...
*日志文件_V2.log*
timestamp w1 x1 y1 z1 ...
第二个选项(文件名中的版本)对我来说感觉更干净并且适合 HDFS(我可以简单地使用 *_v2* 作为排除旧版本样式文件的模式)。另一方面,我需要运行 2 个不同的作业,因为我无法在一个作业中分析版本片段。
HBase 怎么样,我猜在 HBase 中版本肯定会在另一个表列中结束(HDFS 是实现细节并用作 HBase 的后端)?
用于后端 Hadoop/HDFS/HBase 的版本控制数据的任何其他替代方法?
谢谢!
编辑:我的问题与如何处理版本信息本身有关,而不是时间戳。