Автор поставил вполне реальную (не синтетическую) задачу и решил её при помощи PL/SQL, Java, Python. Результаты довольно интересны: 1) Решение на PL/SQL заняло 24 сек. 2) Прямой перенос алгоритма с PL/SQL на Java и Python дал результат 7.8 cек и 31 сек. Соотвественно 3) Незначительное изменение алгоритма, с целью более полного использования возможностей языков (в частности применение HashMap) еще дальше улучшило результаты: Java - 3.5 сек, Python 12.5 сек. 4) Прогноз автора исследования, что если еще поколдовать с алгоритмом то можно добиться 2.4 секунды на Java. Естественно колдовство такое, что на PL/SQL его никак не положить.
В качестве базы данных использовался Oracle 10XE
Итог исследования таков - перенос логики связанной с обработкой данных из RDBMS на прикладной уровень дает значительный прирост скорости и это стоит учитывать.
В подробностях основная ссылка на исследование.
Вот тут ответы автора на возражения: http://homepage.mac.com/s_lott/iblog/...
>>> Подробности