ORM против сырых запросов (для большого проекта)
Я работаю над проектом, который я хочу в конечном итоге запустить для общественности. В прошлом я использовал Django, который использует ORM для использования баз данных в качестве моделей python. Но я также знаю, что они добавляют дополнительные накладные расходы в плане задержки и оптимизации запросов. Но сейчас я использую FastAPI в качестве моего restapi сервера, PSQL в качестве БД и мне приходится использовать ORM сторонних производителей, таких как SqlAlchemy (который действительно сложен). Я думаю о двух вариантах
Изначально начните с ORM, а затем перейдите к необработанным запросам, если есть проблемы с производительностью или высокий спрос пользователей. Изначально начать с сырого SQL, используя библиотеку psycopg2. Если я пойду по этому пути, мне придется управлять всем, например, пулом соединений, запросами, а в случае разрыва соединения переподключать его и т.д. Есть ли какая-нибудь известная библиотека python, которая может делать это поверх psyopg2.
Я хотел бы узнать, увеличивается ли количество потребителей приложений, как обрабатывать запросы к базе данных. Как это делают такие крупные компании, как facebook, amazon, Instagram? Я уверен, что они не используют ORMs.