Сколько записей загружает View?
Выполните explain и узнаете. Будет видно и как глубоко ушли условия, и замену left join на inner join, и, вероятно, обратный порядок объединения таблиц.
view для планировщика прозрачен и планируется заново всё дерево запроса.
В случае обычного представления ваш select * from somedata where col2 = 10 грубо говоря развернётся в запрос, формирующий представление. В случае материализованного, чтение будет осуществляться так же, как из обычной таблицы. Так что в обоих случаях в память будет загружено не больше записей, чем нужно.