pgx - PostreSQL 확장을 Rust로 개발하는 프레임워크
(github.com)- 원래 Postgres에 ElasticSearch를 연동해서 풀텍스트 검색을 하던 ZomboDB 확장을 Rust로 재구현하기 위해 개발
- Postgres v10~v12 지원
- cargo pgx 명령으로 확장 생성,컴파일,설치,테스트 가능
- pgx::IntoDatum/FromDatum 으로 Datum 을 Rust 타입으로 변환가능
- Rust의 panic!()을 Postgres ERROR로 변환
보통 PostgreSQL 확장은 PG가 지원하지 않는 자료구조 나 데이터 타입을 지원하기 위해 종종 사용
예를 들어 PostgreSQL Multiple Precision Arithmetic extension https://github.com/dvarrazzo/pgmp
pgx 는 Rust 를 이용해 이런 확장을 쉽게 만들수 있게 해주는 프레임워크