В тестовой программе поиск по простому индексу первичного ключа выполняется так же эффективно, как и в первом тесте, но вместо переменных связывания используются литералы. Во всех тестах открытие и закрытие курсоров выполняется за пределами циклов.
1 |
3 |
6 |
12 |
24 |
|
В тесте используются надежные литералы, установка параметра cursor_sharing=exact (то есть разделение курсоров не используется). |
349 |
407 |
499 |
995
2135
В тесте используются надежные литералы, установка параметра cursor_sharing=force.
85
95
97
102
164
В тестовой программе выполняется запрос индексированного столбца таблицы с несимметричным распределением данных. Статистики столбца собраны вместе, поэтому в некоторых запросах будет использоваться полный просмотр таблицы, а в некоторых - поиск по индексу. Тесты демонстрируют эффективность использования ненадежных литералов, которые более или менее часто изменяются между вызовами, а также эффективность установки параметра cursor_sharing=similar. Во всех тестах открытие и закрытие курсоров выполняется за пределами циклов, в цикле повторяются разбор и выполнение операторов SQL. Кроме того, во всех тестах фактически используется корректный план выполнения (полный просмотр таблицы или поиск по индексу), поэтому различия в результатах не связаны с некорректным планом выполнения.
Заметим: результаты тестирования можно сравнивать только в пределах каждой подгруппы тестов (подгруппы разделены пустой строкой), так как выполняемые в разных подгруппах тесты отличаются друг от друга и имеют разную частоту изменения ненадежных литералов. Результаты нельзя также сравнивать с результатами первых двух тестов.
1 |
3 |
6 |
12 |
24 |
|
В тесте используются ненадежные литералы, которые редко изменяются, параметр cursor_sharing не используется. |
557 |
607 |
670 |
1058 |
2355 |
В тесте используются ненадежные литералы, которые редко изменяются, установка параметра cursor_sharing=similar. |
318 |
350 |
352 |
396 |
554 |
В тесте используются ненадежные литералы, которые изменяются через каждые 10 вызовов, параметр cursor_sharing не используется. |
321 |
389 |
489 |
938 |
1993 |
В тесте используются ненадежные литералы, которые изменяются через каждые 10 вызовов, установка параметра cursor_sharing=similar. |
120 |
139 |
133 |
158 |
222 |
В тесте используются ненадежные литералы, которые изменяются через каждые 3 вызова, параметр cursor_sharing не используется. |
330 |
365 |
485 |
900 |
1949 |
В тесте используются ненадежные литералы, которые изменяются через каждые 3 вызова, установка параметра cursor_sharing=similar. |
172 |
194 |
210 |
264 |
524 |
В тесте используются ненадежные литералы, которые непрерывно изменяются, параметр cursor_sharing не используется. |
316 |
358 |
468 |
846 |
1838 |
В тесте используются ненадежные литералы, которые непрерывно изменяются, установка параметра cursor_sharing=similar. |
369 |
417 |
505 |
824 |
1724 |