记录Google协议缓冲区消息的解决方案

时间:2018-07-05 21:18:58

标签: protocol-buffers

我的项目将protobufs用于我们的数据类型。我们需要能够记录我们的数据,以便以后播放。我们的用例是使用新算法重新创建事件或重新处理相同数据并检查是否有改进。

当数据流过我们的系统时,它们都是原始的。它们很容易被序列化为一个字节数组,可以记录到文件中,也可以记录为数据库中的blob。播放只是意味着读取字节数组并将其转换回protobuf,然后再次将其发送到我们的软件中。

是否有用于录制原型缓冲区的现有技术?

即使最初的用例非常简单,最终解决方案也会变得更加复杂。它可能需要:

  • 将记录暂存到多个主机以跟上输入数据速率
  • 允许查询以找出在特定时间段内有多少数据
  • 仅播放某些字段具有特定值的数据记录
  • 保存数据以进行长期存储,例如从不删除记录,而是将其移至磁带备份

我认为,使用数据库存储元数据的某些子集以及protobuf字节数组本身,可以最好地实现上述目的。在我重新发明轮子之前,我想对已经存在的可能完成这项工作的任何事情发表意见。

0 个答案:

没有答案