Разница между представлениями и таблицами в производительности - PullRequest
14 голосов
/ 02 января 2011

Что лучше для таблиц с большим количеством данных?

У меня есть хранимая процедура, которая создает отчет на основе некоторых фильтров.В моем SP я читаю таблицу и помещаю все внутренние объединения и формулы, затем помещаю фильтры в условие where.

Говоря о производительности, что лучше?

Создать представление со всеми объединениями ИЛИ читать таблицу (как я делаю)?

Ответы [ 2 ]

16 голосов
/ 02 января 2011

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

5 голосов
/ 02 января 2011

Это зависит.

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

Вы пробовали бенчмаркинг в своих конкретных случаях?

@ Otávio Décio опередил меня, упомянув, что наличие «правильных» индексов окажет большее влияние на производительность.

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