프로그래밍
4시간 전
0
pg_jitter는 PostgreSQL 14~18 버전에서 사용할 수 있는 경량 JIT 컴파일러로, sljit, AsmJit, MIR 세 가지 대체 JIT 백엔드를 제공합니다. 이 프로젝트는 기존 PostgreSQL의 LLVM 기반 JIT가 느린 컴파일 속도로 인해 OLTP 쿼리에 적합하지 않은 문제를 해결하며, 마이크로초 단위의 빠른 컴파일 속도를 통해 더 넓은 범위의 쿼리에서 JIT의 이점을 누릴 수 있게 합니다. 각 백엔드는 서로 다른 특성과 강점을 가지며, 런타임에 백엔드를 전환할 수 있어 유연한 운영이 가능합니다. 또한, LLVM 의존성을 제거하고 C/C++ 기반으로 구현되어 있으며, 빌드 시 핫 함수의 네이티브 코드 블롭을 미리 생성해 성능을 극대화할 수 있습니다. 이 프로젝트는 현재 베타 단계로, 표준 PostgreSQL 테스트를 통과했으며 성능 개선 효과가 검증되었으나 대규모 프로덕션 검증은 진행 중입니다.