Эффективно сэкономить одно и то же время для многих объектов (postgresql и вообще) - PullRequest
0 голосов
/ 08 мая 2018

У меня есть проект Django со многими объектами (у каждого из них есть строка в таблице Postgresql). Объемы объектов имеют одинаковое значение времени.

Интересно, хорошо ли использовать одно и то же поле времени для каждого из множества объектов данных (хотя сотни из них имеют одинаковое значение), или создать «контекстный» объект, который сэкономит время и сохранит для каждого объекта ссылка на (в таблице - идентификатор) объекта контекста.

Работа с идентификаторами (а не со временем) выполняется быстрее, хотя с объектами контекста следует использовать два запроса (один для контекста и второй для объектов данных со ссылкой на контекст). Предполагая, что экономия одного и того же времени много раз является пустой тратой времени (не так ли?), Второй вариант лучше.

Я не эксперт по БД, и буду рад узнать, какой вариант лучше? Что еще нужно учитывать?

1 Ответ

0 голосов
/ 08 мая 2018

По моему мнению, сохранение одинакового времени в каждой строке, как правило, неплохая идея, поскольку наличие времени в отдельной таблице заставит Django ORM выполнять множество операций JOIN, что медленнее, чем выполнение запросов к одной таблице.

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

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