새소식

Dev Log

Flask + SQLAlchemy + Postgresql 연결 확장 라이브러리

  • -

SQL Alchemy에서 PostgreSQL 연결을 위한 방법은 총 다섯 가지가 있다.

 

1. Built-in (postgresql)

PostgreSQL을 지원하는 SQLAlchemy의 Built-in adapter는 굉장히 심플하고 직관적으로 DB와 상호작용한다.

그냥 postgreSQL을 쓰는 것과 같지만, 아래로 등장하는 Extension에서 지원하는 추가 기능들은 포함하고 있지 않다.

postgresql://{user}:{password}@{host}:{port}/{database}

 

2. psycopg2

python에서 PostgreSQL adapter로 가장 유명한 라이브러리이며, 커넥션 풀링, 빠른 속도, 서버 사이드 커서 등을 지원한다.

 

예를 들어, 커넥션 풀링을 사용하는 경우, SQLAlchemy에서 psycopg2.pool.SimpleConnectionPool 으로 풀 Class를 지정하고, 풀 사이즈, 리사이클링 등 옵션을 파라미터로 지정할 수 있다.

postgresql+psycopg2://{user}:{password}@{host}:{port}/{database}

 

3. pg8000

다양한 운영체제 및 Python 버전에 걸쳐 호환되는 PostgreSQL 프로토콜의 구현체이다.

postgresql+pg8000://{user}:{password}@{host}:{port}/{database}

 

 

4. aiopg

백그라운드에서 데이터베이스작업을 수행하기 위한 비동기 adapter이다.

postgresql+aiopg://{user}:{password}@{host}:{port}/{database}

 

 

5. asyncpg

고성능, 높은 동시성의 특징을 가지는 비동기 adapter이다.

postgresql+asyncpg://{user}:{password}@{host}:{port}/{database}
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.