Наследование Postgres для ремонтопригодности - PullRequest
0 голосов
/ 20 октября 2010

Редактировать: TMI в первоначальном вопросе, сокращено до основ.

Я думаю о схеме для поддержки обновления записей и отслеживания версий. Это для медленно меняющихся размеров scenerio с изюминкой. Для поддержки нужного мне поведения базовая схема реплицируется три раза:

  1. общедоступные столы,
  2. личных таблиц и
  3. таблица отслеживания изменений

Это будет прекрасно работать для моей цели, но обратной стороной подхода репликации является то, что он будет громоздким и подвержен ошибкам (у нас обычно бывают периодические незначительные изменения схемы).

Чтобы помочь с ремонтопригодностью, я подумал об использовании наследования таблиц: определите первичные поля в наборе базовых таблиц и унаследуйте три новых набора таблиц от них (дополненных полями учета). Когда необходимы изменения схемы, просто внесите их в базовую таблицу. Запросы будут выполняться только для производных таблиц.

Итак, вопрос: действительно ли это использование наследования таблиц ? Есть ли лучший способ поддержать ремонтопригодность реплицируемых таблиц? Соответствующие ссылки будут оценены.

Я никогда раньше не использовал наследование таблиц, хотел бы знать, не прогуливаюсь ли я по минному полю. Спасибо.

Редактировать: найдено одно упоминание об использовании наследования для таблиц отслеживания изменений в комментариях к документации pg8.0 .

1 Ответ

1 голос
/ 20 октября 2010

Почему вы хотите заменить свою настоящую систему "двух баз"? Альтернативный вариант выглядит более сложным, сложным в обслуживании и требует методов акробатического кодирования.

Если это не сломано, не исправить это

Какую дополнительную мощность / гибкость вы ожидаете?

...