A Python wrapper around asyncpg that provides SQLAlchemy Core support for asynchronous PostgreSQL database operations.
asyncpgsa is a Python library that wraps asyncpg to provide SQLAlchemy Core support for asynchronous PostgreSQL database operations. It enables developers to use SQLAlchemy's query-building expressions while leveraging asyncpg's high-performance asynchronous capabilities. The library is designed to offer a faster alternative to aiopg.sa for SQLAlchemy-based async database access.
Python developers building asynchronous applications with PostgreSQL who want to use SQLAlchemy Core for query construction without sacrificing the performance benefits of asyncpg.
Developers choose asyncpgsa because it combines the performance of asyncpg with the familiarity of SQLAlchemy Core, offering a streamlined solution for async database operations. It provides flexibility with raw SQL queries for maximum speed and SQLAlchemy queries for convenience, all in a lightweight package.
A wrapper around asyncpg for use with sqlalchemy
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Benchmarks in the README show asyncpgsa is faster than aiopg.sa for SQLAlchemy queries, leveraging asyncpg's high-speed asynchronous PostgreSQL access.
Provides compatibility with SQLAlchemy Core, allowing developers to use its expression language for programmatic query building, as supported in the library's examples.
Supports raw string queries that bypass SQLAlchemy overhead, enabling near-native asyncpg speeds for maximum performance, as highlighted in the key features.
Acts as a minimal wrapper around asyncpg, adding SQLAlchemy Core support without significant additional overhead, keeping the library simple and efficient.
The README explicitly states it does not support SQLAlchemy ORM, only Core, limiting its use for teams relying on ORM features like session management and relationships.
Being pre-1.0, the API has undergone breaking changes, such as the removal of Record Proxy objects in version 0.18.0, requiring version locking and careful migration for production apps.
Tightly integrated with asyncpg, it only supports PostgreSQL, making it unsuitable for projects using multiple database backends or requiring database abstraction.