Использование ORM в случаях, когда в этом нет необходимости, может привести к снижению скорости работы с базой данных. 2 Слой транзакций, выполняющий преобразования, может быть недостаточно эффективным, поэтому при обработке большого количества данных работа приложения будет медленнее, чем при использовании чистого SQL. 2
Некоторые другие причины, по которым не следует использовать ORM:
- В высокопроизводительных приложениях, в которых требуется настроить доступ к базе данных на более низком уровне. 3 В этом случае может оказаться предпочтительнее работать на более низком уровне. 3
- В финансовых приложениях или других типах систем, где важна межсистемная целостность данных, особенно если используются сложные распределённые транзакции с двухфазной фиксацией. 3 Возможно, потребуется управлять транзакциями на микроуровне лучше, чем способна поддерживать ORM. 3
- В случаях, когда модель данных не обязательно хорошо подходит для отображения ORM. 3 Например, если пишется интерфейс, который заполняет или извлекает данные из внешнего интерфейса, возможно, лучше работать непосредственно с базой данных. 3
Решение об использовании ORM должно приниматься с учётом конкретных условий проекта.