Мы запросили счётчики скачиваний драйверов напрямую у npm и PyPI. PostgreSQL первый в обеих экосистемах — 64,6 млн в неделю в JavaScript и 530,4 млн в месяц в Python, с отрывом в полтора-два раза от следующего.
Дальше порядок расходится: MongoDB опережает MySQL в JavaScript и уступает ему в Python. А внутри самих баз идёт смена поколений драйверов, и одна из них застряла: psycopg2 до сих пор вдвое популярнее третьей версии.
Бесплатный онлайн-инструмент — проверка HTTP-заголовков: результат мгновенно, без регистрации.
27 августа 2026 года мы запросили счётчики скачиваний драйверов напрямую у реестров. JavaScript, за неделю:
| База | Скачиваний | Из чего складывается |
|---|---|---|
| PostgreSQL | 64 567 994 | pg 48,6 млн, postgres 16,0 млн |
| Redis | 40 696 810 | ioredis 27,4 млн, redis 13,3 млн |
| MongoDB | 22 118 793 | mongodb 15,4 млн, mongoose 6,7 млн |
| MySQL и MariaDB | 16 844 846 | mysql2 15,5 млн, mysql 1,3 млн |
| SQLite | 12 945 236 | better-sqlite3 10,3 млн, sqlite3 2,6 млн |
| SQL Server | 3 529 142 | mssql |
| ClickHouse | 3 402 590 | @clickhouse/client |
| Oracle | 937 890 | oracledb |
| Cassandra | 369 497 | cassandra-driver |
Python, за месяц:
| База | Скачиваний | Из чего складывается |
|---|---|---|
| PostgreSQL | 530 434 095 | psycopg2-binary 269,6 млн, psycopg 138,1 млн, asyncpg 122,8 млн |
| Redis | 267 340 409 | redis |
| MySQL и MariaDB | 144 505 894 | pymysql 98,7 млн, mysql-connector 45,8 млн |
| MongoDB | 117 726 478 | pymongo 106,9 млн, motor 10,8 млн |
| SQL Server | 93 438 525 | pymssql 52,6 млн, pyodbc 40,8 млн |
| ClickHouse | 52 277 185 | clickhouse-connect 32,2 млн, clickhouse-driver 20,1 млн |
| Oracle | 29 159 755 | oracledb 26,0 млн, cx-oracle 3,1 млн |
PostgreSQL первый в обеих экосистемах с большим отрывом — примерно в полтора-два раза от ближайшего преследователя.
Исходные данные всех таблиц этого отчёта доступны в виде открытого CSV-файла (UTF-8, первая строка — заголовки).
Скачать датасет (CSV)Первые две позиции одинаковы, а дальше языки расходятся:
| Место | JavaScript | Python |
|---|---|---|
| 1 | PostgreSQL | PostgreSQL |
| 2 | Redis | Redis |
| 3 | MongoDB | MySQL |
| 4 | MySQL | MongoDB |
| 5 | SQLite | SQL Server |
MongoDB опережает MySQL в JavaScript и уступает ему в Python. Это согласуется с историей: MongoDB рос вместе с Node.js и хранит данные в том же виде, в каком их держит язык, а в питоновском мире исторически сильнее реляционная традиция.
Второе различие — SQL Server занимает пятое место в Python и лишь шестое в JavaScript с долей в двадцать шесть раз меньшей относительно лидера. Корпоративная интеграция чаще пишется на Python.
И третье: SQLite в питоновском списке отсутствует вовсе, потому что там он входит в стандартную библиотеку и отдельного пакета не требует. Отсутствие в таблице — не признак непопулярности, а следствие того, что скачивать нечего.
Самое интересное видно не между базами, а внутри них:
| Переход | Новый | Старый | Соотношение |
|---|---|---|---|
| MySQL в JS: mysql2 против mysql | 15,5 млн | 1,3 млн | 12:1 |
| Oracle в Python: oracledb против cx-oracle | 26,0 млн | 3,1 млн | 8:1 |
| SQLite в JS: better-sqlite3 против sqlite3 | 10,3 млн | 2,6 млн | 4:1 |
| Redis в JS: ioredis против официального | 27,4 млн | 13,3 млн | 2:1 |
| PostgreSQL в Python: psycopg2 против psycopg 3 | 138,1 млн | 269,6 млн | 1:2 — старый впереди |
Четыре перехода из пяти завершены или близки к завершению. Исключение — psycopg: третья версия вышла несколько лет назад, но вдвое популярнее остаётся вторая. Причина в том, что она поставляется готовым бинарником и не требует сборки — привычка, от которой отказываются медленно.
Отдельно любопытен Redis в JavaScript: неофициальный клиент вдвое популярнее официального. Такое встречается редко и обычно означает, что альтернатива появилась раньше и успела стать привычкой.
| JavaScript, за неделю | Python, за месяц | ||
|---|---|---|---|
| drizzle-orm | 19 997 086 | sqlalchemy | 425 913 205 |
| prisma | 16 762 732 | django | 53 751 257 |
| @prisma/client | 15 704 034 | peewee | 51 645 041 |
| knex | 5 289 407 | tortoise-orm | 574 455 |
| typeorm | 4 983 124 | ||
| sequelize | 2 842 247 |
Два наблюдения. Первое: в JavaScript drizzle-orm обошёл prisma — 20,0 млн против 16,8. Для инструмента, появившегося заметно позже, это резкая смена расстановки.
Второе, более серьёзное: SQLAlchemy с 425,9 млн скачиваний сопоставим со всеми драйверами PostgreSQL вместе взятыми (530,4 млн). В питоновском мире работа с базой в подавляющем большинстве случаев идёт через абстракцию, а не через драйвер напрямую. В JavaScript такого доминирования нет: сумма всех прослоек меньше одного PostgreSQL.
Скачивания — это не пользователи и не установки в продакшене. Львиную долю дают сборочные конвейеры, повторно тянущие одно и то же при каждом запуске. Пакет, который тянут в каждой сборке микросервисного проекта, обгонит пакет, который ставят один раз на сервер.
Числа JavaScript и Python нельзя сравнивать напрямую — неделя против месяца, разный размер экосистем и разные привычки кэширования сборок.
Драйвер не равен базе. Приложение может ходить в PostgreSQL через прослойку, которая тянет драйвер как зависимость, — тогда скачивание засчитается обоим. И наоборот, база может работать без единого скачивания драйвера, если доступ идёт по HTTP.
Отсутствие в списке ничего не значит. SQLite в Python — часть стандартной библиотеки; встроенные и облачные базы вообще не имеют отдельного пакета.
Что эти числа действительно показывают — относительную динамику внутри одной экосистемы: смену поколений драйверов и сдвиги между прослойками. Для этого они годятся хорошо, потому что смещение метода одинаково для всех сравниваемых.
Проверить, что отвечает ваша база и как быстро, можно в проверке портов.
Источники: счётчик скачиваний npm, статистика PyPI.
Postgres — default для нового project (лучше features, JSON, partial indexes, better defaults). MySQL — если legacy team expertise или simple CRUD.
Для multi-tenant apps с fluid schemas (chat, IoT, analytics). Для relational data — Postgres с JSONB superior.
Да. Neon, Supabase, Vercel Postgres используются в production. Главный risk — cold start + pricing surprise при spike.
Невозможно 100% извне. Косвенно: error messages, response time patterns, admin panels paths. Enterno — API response timing + тип ошибок 500.
Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.