Комментарии 5
По первому примеру с альбомом и артистом возник вопрос - если они однозначно связаны между собой, то разве это не отступление он 3НФ? т.е. проблема в целом не в том, что статистика как-то криво собирается, а в архитектуре самого решения?
а кто сказал, что нормальные формы — это какие-то незыблемые истины или хотя бы best practices?
денормализация — вполне нормальная практика, более того, без неё часто не обойтись.
Мы рассматриваем реляционную базу данных - для неё это best practice. И как раз денормализация это что надо обосновывать. В некоторых случаях даже использование данной СУБД неплохо бы обосновать.
Вопрос больше к примеру - зачем конкретно в данной ситуации создавать эту транзитивную зависимость и потом же доказывать её статистикой по индексу.
А если полностью запретить движку использовать соединения вложенными циклами? Эта опция похожа на экономию на спичках, приводящую с серьезным случаям недопустимой деградации части запросов.
Как мы использовали расширенную статистику Postgres и ускорились в 2850 раз