Правильный выбор зависит от того, что именно вы собираетесь делать.
По моему опыту, pl / pgsql имеет меньше накладных расходов, чем, скажем, pl / perl, pl / python или pl / tcl, Если , то, что вы хотите сделать, легко выразить в pl / pgsql.Например, если вы делаете операции с базой данных.Тем не менее, накладные расходы, которые вы платите, например, за pl / perl, быстро возвращаются, если вы делаете что-то, в чем хорошо работает perl, например, при обработке строк.
В этих случаях нужно помнить одну вещь:что «более крупные» языки, такие как perl и python, имеют значительно более высокую стоимость запуска, чем pl / pgsql, - но это легко можно устранить с помощью постоянных соединений.
Функции, написанные на C, почти наверняка будут быстрее - и ониЯ буду использовать меньше памяти, если вы сможете написать код, который хорош в использовании небольшого количества памяти.Тем не менее, подслушивание их написания и обслуживания обычно на много хуже, чем PL - особенно при создании и деконструкции кортежей потребуется намного больше кода, чем вы думаете в любых сложных функциях.
Единственный язык стилей PL, который я нашел значительно медленнее других, это pl / java из-за издержек JVM.Но я уверен, что вы можете найти случаи, когда это быстрее для некоторых проблем.
Если вы хотите быть уверенным в том, что абсолютно наиболее эффективно в вашем сценарии, вам нужно разработать паруваши функции на каждом языке, а затем сравните их.Но скорее всего, это не имеет значения, и вы можете выбрать тот язык, который лучше всего подходит для задачи с точки зрения развития, а не с точки зрения производительности.