LiteFS - SQLite를 위한 오픈소스 분산 파일 시스템
(fly.io)- SQLite의 풀스택 활용에 올인하고 있는 Fly io의 새로운 프로젝트
- 세분화된 트랜잭션 제어를 통해서 Litestream의 아이디어를 확장
- Litestream은 WAL 파일을 단순 복제하지만, LiteFS는 각각의 트랜잭션 단위로 조사 및 적용
- SQLite의 파일시스템 API를 인터셉트 하는 방법은 두가지 : VFS 추상화 사용 vs. FUSE 파일 시스템 작성
- LiteFS는 더 어려운 FUSE 파일시스템 생성하는 방식을 채택
- VFS는 사용하기 위한 사전 단계가 있어서, 누군가 DB를 사용하려고 하면 VFS를 먼저 로드해야함
- FUSE는 이런 사용성 문제의 대부분을 해결함
- 가용성을 증대하기 위해 클러스터의 프라이머리 노드를 임대(Hashicorp 의 Consul을 이용)
- 분산 복제 방식을 사용
- 앞으로 준비중인 기능들
- WAL모드 지원
- Write Forwading
- S3 Replication
- Encryption