Версионная база данных, которая может ВЫБРАТЬ из прошлого состояния БД? - PullRequest
0 голосов
/ 06 апреля 2019

У меня есть идея проекта, согласно которой пользователи должны иметь возможность запрашивать базу данных, изменять ее содержимое и схему, а старые отчеты по-прежнему работать независимо от изменений DDL.

Существует ли механизм базы данных (например, sqlite), к которому можно обратиться из его текущего состояния или из любого прошлого момента времени (включая изменения DDL)?

Что-то, где я могу

  1. Вставить данные
  2. Завтра, изменить схемы таблиц
  3. Запрос данных на основе вчерашних данных и схем (возможно, на другом подключении к БД)

Мой ожидаемый размер БД, вероятно, небольшой (всего несколько МБ, определенно помещается в ОЗУ).

Я представляю себе нечто WAL, которое может запрашивать активную БД, но материализует старую версию для запросов по требованию,

  • AWS Aurora может откатиться к моменту времени, но это большое дело
  • Я мог бы создавать резервные копии БД для каждого оператора INSERT или ALTER, но это кажется неэффективным
  • Я мог бы разработать хранилище данных на определенный момент времени / только для добавления в качестве бэкэнда VFS для Sqlite
  • ...

1 Ответ

0 голосов
/ 06 апреля 2019

Вы можете проверить HANA DB и запрос путешествия во времени: http://www.saphanacentral.com/p/sap-hana-history-table-time-traveling.html

Я думаю, что это может помочь вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...