Задать вопрос

Хранимые процедуры mySQL: преимущества и недостатки

В текущем проекте мы активно (уже порядка 10тыс. строк процедур) используем хранимые процедуры mySQL. Это игровой сервис с не тривиальной бизнес-логикой. Используя процедуры, мы значительно сокращаем кол-во запросов к БД. Но вот недавно встал вопрос рентабельности их использования. Запросы не кэшируются, если в них используются переменные пользователя (http://www.mysql.ru/docs/man/Query_Cache_How.html). Таким образом, используя процедуры, мы значительно сокращаем кол-во кэшируемых запросов. На данный момент у нас в кэше более чуть более 50% всех запросов. И возникает вопрос: навреди ли мы проекту или наоборот? Получается, что у хранимых процедур наряду с плюсами есть один минус.

У кого какой опыт использования хранимых процедур mySQL и мысли по этому поводу?
  • Вопрос задан
  • 10213 просмотров
Подписаться 3 Оценить Комментировать
Ответ пользователя Владимир Чернышев К ответам на вопрос (5)
Хранимые процедуры и триггеры плохо поддерживаются универсальными ORM. Видимо из-за больших различий в разных РСУБД. Вот когда (если?) научатся транслировать DSL модели в конкретный диалект SQL и синхронизировать изменения с БД (а для «примитивных» — реализовывать на «обычном» ЯП), тогда и обретут второе дыхание.
Ответ написан
Комментировать