Я использую базу данных Oracle, и есть случаи, когда мы запрашиваем все строки (выбирая несколько, но не все имена столбцов) из таблицы (в некоторых случаях представление создается на таблицах) , Я хочу увеличить производительность моего запроса select. Я использую первичный ключ в таблицах.Oracle DB читает запросы повышения производительности
Например, есть таблица: Таблица (id, a, b, c, d, e, f) имеет 100k строк. Я запрашивая его следующим образом:
SELECT c, d, f FROM Table;
Я попытался с помощью материализованных представлений, но и практически не нашел практически никакого прироста производительности.
Я думал об использовании PARTITIONS, но потом я подумал, что я просматриваю все строки (но не все столбцы), так что бы разделить на них помощь в этом случае?
Возможно, вам стоит рассмотреть сжатие таблицы: http://docs.oracle.com/cd/B28359_01/server.111/b28310/tables002.htm # CJAGFBFG – vercelli
Если вы выбираете только большое количество строк, узким местом является, наверняка, сеть между базой данных и приложением, читающим ее. Но почему вы часто выбираете все строки из таблицы? Почему пользователь или приложение часто хотят просмотреть 100 000 строк? –
Отображение строк 100k - это тест производительности для вашего SQL-клиента, а не для базы данных. Почему, по вашему мнению, MVIEW будет быстрее извлекать ** все ** строки? Вы все равно будете извлекать строки 100k. –