Хранимые процедуры магически не супербыстрые.Зачастую они на самом деле довольно медленные.
Многие люди понизят этот ответ, предоставив неподтвержденную информацию о том, что однажды хранимая процедура в целом ускорила работу приложения.Однако все те примеры, для которых я на самом деле видел код, указывают на то, что они полностью переосмыслили какой-то плохой SQL, чтобы упаковать его как SP.Я утверждаю, что дисциплина переупаковки плохого SQL в процедуру помогла больше, чем сам SP.
Большинство ваших баллов не могут быть оценены без измеренного теста.
Я предлагаю вам сделатьследующее.
Запишите его на F #.
Измерьте его.
Если это слишкоммедленно для вашего производственного приложения, затем попробуйте некоторые хранимые процедуры, чтобы проверить, быстрее ли это.Если это достаточно быстро для вашего производственного приложения, то у вас есть ответ, F # сработал для вас.Для вашего приложения.Для ваших данных.Для вашей архитектуры.
Нет "общего" ответа.Хотя мои тесты для некоторых конкретных типов запросов показывают, что движок SP довольно медленный по сравнению с Java.F #, вероятно, будет быстрее, чем механизм SP.
Важно убедиться, что база данных - если она будет "чистыми" данными - уже оптимизирована так, чтобы запросы, подобные вашему "сканированию"50 миллионов записей для поиска детей-сирот или критерий, который соответствует 0,5% результата? "будет получать строки как можно быстрее.Это часто включает в себя настройку буферов и размеров массивов, а также других элементов соединения базы данных с F #.Обычно это означает, что вам нужно более прямое соединение, чтобы вы могли регулировать размеры.