Лучшие практики для системы контроля версий данных MySQL

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

Вот основная таблицастатьи» для лучшего понимания:

статьи (идентификатор, имя, текст)

Для меня есть два разных подхода к этому:

Подход 1

Храните данные и каждую версию статьи в таблице »статьи» и добавить столбцыверсия" а также "статус", В версии я храню увеличенный номер версии статьи. Активная статья получает "статус" 1 и другие "статус" 2.

Pro»s:

Нужен только один стол

Новая версия представляет собой вставку новых данных и только обновление "статус"Колонна старого

Con-х

Очень большие таблицы (возможно, более медленные запросы ???)Подход 2

Добавить поле »версия" к "статьи» и хранить только активные данные в таблицу "статьи», Старые версии данных сохраняются / перемещаются в новую таблицу »articles_versioned».

Pro»s:

В таблице только действительные данныестатьи»

Con-х

Дублирование таблиц

Так. Я забыл хороший подход? Как работать со связанными данными в других таблицах (например, изображения и т. Д.)?

Ответы на вопрос(1)

Ваш ответ на вопрос