Аналитични функции в Oracle - Аналитични функции в Oracle, oracle - Софтуерни продукти
Съдържание
Общи разпоредби
Главна информация
Във версия 8.1.6 на СУБД Oracle се появи нов клас от 26 функции, наречен аналитичен, който беше доразвит във версия 9. Техните описания бяха създадени съвместно от IBM, Informix, Oracle и Compaq чрез разработване на т.нар. "подобрения" на някои от структурите, налични в стандарта SQL1999.
За разлика от обикновените скаларни функции, аналитичните функции приемат като аргумент SQL таблица, представляваща логическия междинен резултат от обработката на SQL израз, където е използвано извикване на такава функция, и обикновено връщат SQL таблица като техен резултат.
Цели на въвеждането на аналитични функции в Oracle
Техническата цел на въвеждането на аналитични функции е да се осигури кратка формулировка и да се увеличи скоростта на изпълнение на „аналитични заявки“ към базата данни, тоест заявки, които имат смисъл да идентифицират вътрешните взаимоотношения и зависимости в данните. По-конкретно, използването на аналитични функции може да осигури следните предимства пред обикновените SQL изрази:
- Кратка и проста формулировка. Много аналитични заявки към базата данни са трудни за формулиране с традиционни средства и поради това са трудни за разбиране и лошо отстранени грешки.
- Намалено натоварване на мрежата. Това, което по-рано може да бъде формулирано само от поредица от заявки, се свива в една заявка. Заявка се изпраща само по мрежата и се получава крайният резултат.
- Прехвърляне на изчисления на сървъра. С използването на аналитични функции няма нужда да се организират изчисления на клиента; те са изцяло хоствани на сървър, чиито ресурси може да са по-подходящи за бърза обработка на големи количества данни.
- По-добра ефективност на обработката на заявките. Аналитичните функции имат изчислителни алгоритми, неразривно свързани със специални планове за обработка на заявки, оптимизирани за по-бързи резултати.