powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос о view!
16 сообщений из 16, страница 1 из 1
Вопрос о view!
    #38735353
scy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
scy
Гость
Собственно, вопрос, не оч уяснил из статей.
Есть огромная таблица, делаем view из нее с каким-нить условием, вьюха вышла в 100 раз меньше.
Теперь делаем 2 запроса, 1ин непосредственно в таблицу с 2мя условиями(1но копирует условие по которому создавалась вьюха, и еще какой-нить) ,2ой во вьюху - только со вторым условием.
Скорость выборки одинакова? или нет? непонимаю.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38735387
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scy,

Ну так померяй и увидишь. Если коротко то вьюха это лишь представление, т.е. динамический запрос а не отдельная таблица. Таким образом от перемены мест ... скорость неизменится. Надеюсь вы поняли.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38735467
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scy, теоретически (то есть при идеальной реализации сервера) должна быть одинакова. На практике различные "неидеальности" могут привести к тому, что в некоторых ситуациях скорость будет кардинально разной, причём как в ту, так и в другую сторону.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38735816
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerscy, теоретически (то есть при идеальной реализации сервера) должна быть одинакова. На практике различные "неидеальности" могут привести к тому, что в некоторых ситуациях скорость будет кардинально разной, причём как в ту, так и в другую сторону.+500. Если вьюха индексированная, то возможен выигрыш.
Главная польза вьюхи - многократное использование ее конструкции, упрощающие код.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736130
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scyСобственно, вопрос, не оч уяснил из статей.
Есть огромная таблица, делаем view из нее с каким-нить условием, вьюха вышла в 100 раз меньше.
Теперь делаем 2 запроса, 1ин непосредственно в таблицу с 2мя условиями(1но копирует условие по которому создавалась вьюха, и еще какой-нить) ,2ой во вьюху - только со вторым условием.
Скорость выборки одинакова? или нет? непонимаю.
посмотри планы выполнения. Там ответ
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736171
scy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
scy
Гость
Всем спасибо за ответы.
Но некая неясность все таки осталась.
а) Если вьюха индексированная, то возможен выигрыш. -> тоесть мы можем проиндексировать лишь необходимый нам кусок родительской таблицы? Оо - чет мне кажеться вы меня путаете(хотя было бы сладко)
б) вьюха = динамический запрос -> все обращение к ней - эквивалентны логическому & - между условиями? - и тогда как писал "LSV " - выигрыш только в упрощении кода?
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736187
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scyа) Если вьюха индексированная, то возможен выигрыш. -> тоесть мы можем проиндексировать лишь необходимый нам кусок родительской таблицы? Оо - чет мне кажеться вы меня путаете(хотя было бы сладко)

То что после "->" - никак не связано с тем что до. Создать indexed view - не значит "проиндексировать кусок родительстой таблицы", это отдельный обьект

scyб) вьюха = динамический запрос -> все обращение к ней - эквивалентны логическому & - между условиями? - и тогда как писал "LSV " - выигрыш только в упрощении кода?
Потенциальных "выигрышей" много - инкапсуляция, права доступа, etc.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736265
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 03.09.2014 11:38, LSV wrote:

> +500. Если вьюха индексированная, то возможен выигрыш.
> Главная польза вьюхи - многократное использование ее конструкции,
> упрощающие код.

Выигрыша от обычного VIEW быть не может, в лучшем случае -- та же
производительность, что и при подстановке текста VIEW в запрос.

Выигрыш от VIEW возможен только, если это -- т.н. материализованный VIEW
(некоторые СУБД поддерживают).

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736271
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 03.09.2014 14:54, scy wrote:

> а) Если вьюха индексированная, то возможен выигрыш.


Невозможен.

-> тоесть мы можем
> проиндексировать лишь необходимый нам кусок родительской таблицы? Оо -

Нет, это невозможно.


> б) вьюха = динамический запрос -> все обращение к ней - эквивалентны
> логическому & - между условиями? - и тогда как писал "LSV " - выигрыш
> только в упрощении кода?

Э... да, и в возможности его повторно использовать.

Но ввиду того, что VIEW достаточно часто вводят использующих его
программистов и/или оптимизатор СУБД в глубокий ступор, реально VIEW в
серьёзных СУБД практически не используют.

Заметь, я не отговариваю тебя использовать VIEW, в каких-то конкретных
случаях его использование может быть вполне себе оправдано и будет
работать как надо.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736293
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivВыигрыш от VIEW возможен только, если это -- т.н. материализованный VIEW
(некоторые СУБД поддерживают).MasterZiv> а) Если вьюха индексированная, то возможен выигрыш.


Невозможен.А если индексированная материализованная VIEW, то что будет? :)
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736336
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scyВсем спасибо за ответы.
Но некая неясность все таки осталась.
а) Если вьюха индексированная, то возможен выигрыш. -> тоесть мы можем проиндексировать лишь необходимый нам кусок родительской таблицы? Оо - чет мне кажеться вы меня путаете(хотя было бы сладко)
б) вьюха = динамический запрос -> все обращение к ней - эквивалентны логическому & - между условиями? - и тогда как писал "LSV " - выигрыш только в упрощении кода?
По первому пункту - отделите мух от котлет и сформулируйте вопрос боле понятно. По индекс вьюхе - да, будет быстрее. Но это умеют только некоторые СУБД. В реально больших БД практически невстречал. Насчет индекса кусков - бред какой-то, даже нехочу комментировать ...
По второму - да, по сути все сводится к этому.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736345
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Злой БобрНасчет индекса кусков - бред какой-то, даже нехочу комментировать ...Не такой уж и бред, если не привязывать его к VIEW.
Мне в Oracle XE приходилось создать индекс по части таблицы с той целью, чтобы работать с "горячей" частью большой таблицы в условиях ограниченной памяти.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736366
Фотография Infernal V. Raven
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftМне в Oracle XE приходилось создать индекс по части таблицы с той целью, чтобы работать с "горячей" частью большой таблицы в условиях ограниченной памяти.Эдакое ручное партиционирование?
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736379
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Infernal V. RavenmiksoftМне в Oracle XE приходилось создать индекс по части таблицы с той целью, чтобы работать с "горячей" частью большой таблицы в условиях ограниченной памяти.Эдакое ручное партиционирование?Ну да, типа того. Правда, партиций было всего две и быстрый доступ был только у одной из них.
Технически, это можно повторить несколько раз для разных условий, но "в условиях ограниченной памяти" это вряд ли будет эффективно.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736392
Фотография Infernal V. Raven
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftПравда, партиций было всего две и быстрый доступ был только у одной из них.А как было реализовано?
Предполагаю, что использовалось что-то типа флага 1 - актуальные данные, 0 - неактуальные, или дата.
...
Рейтинг: 0 / 0
Вопрос о view!
    #38736407
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Infernal V. RavenmiksoftПравда, партиций было всего две и быстрый доступ был только у одной из них.А как было реализовано?
Предполагаю, что использовалось что-то типа флага 1 - актуальные данные, 0 - неактуальные, или дата.Конкретно у нас была комбинация полей. Был построен FBI-индекс по выражению, которое для "горячих" записей давало значение нужного поля, а для "холодных" записей давало NULL. Конечно же, это потребовало переписать все запросы, где использовалось это условие.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос о view!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]