TigerBeetle: 안전성과 속도를 중시하는 고성능 OLTP 데이터베이스

2025-06-06

TigerBeetle은 복식부기용으로 구축된 온라인 트랜잭션 처리(OLTP) 데이터베이스로, 안전성과 속도를 중시합니다. 강력한 직렬화 가능한 일관성을 제공하기 위해 Viewstamped Replication(VR) 컨센서스 프로토콜을 활용합니다. 범용 데이터베이스와 달리 TigerBeetle은 계정과 계정 간 전송만 저장하므로 금융 거래 및 유사한 애플리케이션에 적합합니다. 높은 경합 워크로드의 경우, 주 노드의 단일 코어를 통해 쓰기를 처리하고, 스케일 아웃보다 스케일 업을 우선시합니다. 견고한 내결함성은 핵심 설계 원칙이며, 다양한 오류에 대한 명시적 모델과 단일 복제본이 살아남은 경우에도 데이터 손실을 방지하는 메커니즘이 있습니다. 고유한 업그레이드 프로세스는 매끄러운 전환을 위해 멀티 버전 바이너리를 사용합니다. Jepsen 테스트에서는 주로 클라이언트 처리 및 단일 노드 오류와 관련된 몇 가지 버그가 드러났으며, 대부분은 TigerBeetle 팀에 의해 나중에 수정되었습니다.

더 보기
개발

Amazon RDS for PostgreSQL 멀티 AZ 클러스터, 스냅샷 격리 실패

2025-04-29

Jepsen의 테스트 결과, Amazon RDS for PostgreSQL 멀티 AZ 클러스터가 스냅샷 격리를 완벽하게 보장하지 않는다는 사실이 밝혀졌습니다. 스냅샷 격리 규칙을 위반하는 G-비인접 사이클과 같은 이상 현상이 관찰되었습니다. 여기에는 Long Fork가 포함되어 있으며, RDS for PostgreSQL이 다소 약한 병렬 스냅샷 격리를 제공할 가능성을 시사합니다. 즉, 고병렬 환경에서 읽기 트랜잭션이 실행 순서에 대해 의견이 다를 수 있음을 의미합니다. 사용자는 트랜잭션 구조에 유의하고, Long Fork를 피하거나, 스냅샷 격리를 복구하기 위해 쓰기 엔드포인트만 사용해야 합니다.

더 보기