Я рассматриваю различные способы хранения дельт на объектах в течение длительных периодов времени (обычно 30 лет). Один из вариантов - иметь одну дельта-таблицу, в которой хранятся изменения для каждого объекта. Поскольку дельты должны храниться в течение столь длительного времени, таблица дельты будет очень большой, поэтому я рассматривал варианты, по крайней мере, спарить ее, не сохраняя каждую дельту в виде строки.
Дельта-таблица будет в основном хранить примитивы из .NET (int
, long
, decimal
, string
и т. Д.). Дельта-таблица будет выглядеть примерно так:
| RowIdentifier | FieldIdentifier | NewValue | Timestamp |
Подходят ли буферы протокола (protobuf-net или другая реализация protobuf) для такого длительного хранения?