Где все собственные revisioned базы данных?

Я читал весь ТАК вопросы, статьи Coding Horror, и Погуглил мозги от поиска лучших путей к данным управления версиями. Они все работают, и у них всех есть свои соответствующие реализации на основе вариантов использования и так далее. То, что я действительно хочу знать, - то, почему база данных не была записана для собственной поддержки revisioning на уровне данных?

То, с чем я экранирован, - то, что API уже практически на месте с транзакциями. Мы запускаем транзакцию, изменяем некоторые данные и фиксацию. Мы проходим проверку подлинности против базы данных также, таким образом, вина присутствует. Мой конец магазинов при предприятии версий месяца нашей всей базы данных в бухгалтерских целях, которые приравниваются к тегам. Разве это не кричит RCS?

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

Теперь я знаю, что базы данных являются невероятно строго ограниченными во времени приложениями, таким образом, любых ненужных издержек избегают в забвение, и некоторые базы данных являются огромным эпическим уровнем, и изменения будут только exponentiate тот размер. На таблицу, подпишитесь на управление версиями, несомненно, имеет место в малых и средних средах масштаба, где существуют миллисекунды для экономии, и история данных имеет степень важности. Я хочу фиксации, я хочу журналы, я хочу, возвращается, я хочу diffs, я хочу вину, я хочу теги, и я хочу контроль. Я хочу управление версиями луга MF.

У меня есть вопрос там где-нибудь...

12
задан Jake Wharton 27 April 2010 в 19:06
поделиться

4 ответа

Одним из отечественных решений является Flashback Database (она же Total Recall) от Oracle. Это платное дополнение к версии Enterprise Edition, но оно довольно крутое. Она прозрачно хранит версии данных до тех пор, пока мы хотим их сохранить, и предоставляет синтаксис для запроса старых версий данных. Эта функция может быть включена для каждой таблицы.

По сути, Flashback DB - это как использование триггеров для хранения записей в таблицах отслеживания, только ловко, эффективно и незаметно для обычной работы.

3
ответ дан 2 December 2019 в 23:06
поделиться

Вы забыли Мне нужна производительность . СУБД - это довольно низкоуровневый механизм хранения данных, и в системах с миллиардами строк производительность может быть важной. Следовательно, если вам нужна такая система аудита, вы можете создать ее самостоятельно, используя доступные вам инструменты (например, триггеры).

Как и в файловой системе, не все файлы подходят для управления версиями, в базе данных не все строки также подходят для управления версиями.

0
ответ дан 2 December 2019 в 23:06
поделиться

Вы могли прочитать о темпоральных базах данных .

В «Временные данные и реляционная модель» Дейта, Дарвена и Лоренцоса авторы вводят шестую нормальную форму для учета проблем с отслеживанием временных данных.

Ричард Снодграсс предложил TSQL2 как расширение SQL для обработки временных данных.

Реализации включают:

3
ответ дан 2 December 2019 в 23:06
поделиться

Несколько СУБД реализуют механизмы версионности на уровне движка. К сожалению, для них не существует независимого от производителя стандарта, поэтому все они являются проприетарными. Oracle flashback уже упоминался. Еще одна функция Microsoft Change Data Capture в SQL Server.

1
ответ дан 2 December 2019 в 23:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: