Skip to main content

Як подання впливають на продуктивність?

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

Що варто знати

Тому з погляду продуктивності:

  1. Звичайні подання (virtual views) не дають приросту швидкості - кожен SELECT з VIEW знову запускає вихідний SQL-запит. Якщо він складний (JOIN, фільтри, підзапити), то й працюватиме повільно.
  2. Матеріалізовані подання (materialized views) - інша справа. Вони зберігають результат запиту у фізичну таблицю, і база читає вже готові дані. Це пришвидшує роботу за великих обсягів, але потребує періодичного оновлення (REFRESH).
  3. Часте використання подань усередині інших подань може сповільнити систему, бо запити накладаються одне на одне.

Висновок: подання потрібні для зручності й логіки, а не для оптимізації. Якщо потрібно пришвидшити - використовують індекси, кешування чи матеріалізовані VIEW.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.