2016-09-11 2 views
1

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

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

Пример: Мне нужно отслеживать диапазоны значений min/max каждой таблицы в моей базе данных. Должен ли я хранить эту информацию в совершенно новой таблице или есть лучший способ ее достижения?

ответ

1

Пример: Мне нужно отслеживать диапазоны значений min/max каждой таблицы в моей базе данных. Должен ли я хранить эту информацию в совершенно новой таблице или есть лучший способ ее достижения?

Да, вы должны хранить min/max в другой таблице. В зависимости от вашего приложения может потребоваться несколько таблиц.

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

Терминология

метаданных просто означает «данные о других данных», и мин/макс значения для одного или более столбцов в каждой таблице, возможно, данные о других данных. Но я никогда не видел таких данных, которые называются метаданными. Это всегда либо резюме или агрегат данные.

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

+0

Большое спасибо, что проясняет некоторую путаницу точно! –