Problemem wydajności przy pracach z bazami danych najczęściej nie są narzędzia, lecz programiści, którzy tworzą implementacje nieprzemyślane na żadnym etapie. Pracowałem przy wielu aplikacjach i przy wielu był problem z wydajnością niezależnie od stosowanych narzędzi.
Oczywiście każde narzędzie daje pewien narzut, ale najczęściej na akceptowalnym poziomie - co więcej, bardzo często okazuje się, że kiedy robimy własne rozwiązanie (np. hydrowanie bazy w czystym PHP) to wychodzi wolniej niż we frameworkach. Jeszcze nie spotkałem się z sytuacją, że wynajdywanie koła od nowa się firmie opłaciło a jak znowu słyszę coś w stylu "nie użyjemy doctrine, napiszemy własny ORM, będzie szybciej i lepiej" to
I jest tak, bo dużo łatwiej powiedzieć "aplikacja musi być wolna bo użyliśmy symfony i doctrine" niż to, że po prostu spieprzyliśmy bo potrzebujemy 15 requestów i 100 zapytań by coś zmienić na stronie, albo nie umiemy skonfigurować ORMa, żeby na produkcji włączyć cache meta danych bazy, kompilacji DQLi do raw SQLi czy adnotacji.
I jeśli faktycznie potrzebujemy tej wydajności to nie łączymy bezpośrednio aplikacji z bazą danych tylko tworzymy warstwę pośrednią (np. Lucene).
Doctrine to potężne narzędzie, które znakomicie przyśpiesza programowanie aplikacji i nie widzę żadnych sensownych powodów, żeby z niego rezygnować.