6P by xguru 8시간전 | ★ favorite | 댓글과 토론
  • AI와 Edge 컴퓨팅을 위한 메시지 버스처럼 동작하는 고성능 동기화 엔진
  • 로그 네이티브(log-native) 실시간 데이터베이스 : 엣지 AI와 엣지 컴퓨팅 환경의 데이터 일관성과 실시간 반응성 문제를 해결하기 위해 설계
  • B+Tree 스토리지 엔진WAL(Write-Ahead Logging) 기반 스트리밍 복제를 결합해, 수백 개 노드 간 서브초 단위 복제강한 일관성을 보장
  • 멀티모델 구조로 Key-Value, Wide-Column, Large Object(LOB) 저장 지원
  • ZeroMQ 기반 실시간 알림으로 밀리초 단위 변경 감지 제공
  • 엣지 퍼스트(Edge-First) 설계로 로컬 우선 아키텍처에 최적화
  • 네임스페이스 격리를 통한 멀티테넌시 지원
  • 기존 시스템과의 차이:
    • LMDB/BoltDB는 빠른 로컬 저장소지만 복제 불가
    • etcd/Consul은 일관성은 높지만 확장성 제한
    • Kafka/NATS는 스트리밍에 강하지만 쿼리 불가
    • UnisonDB는 이 간극을 메우며, 저장과 스트리밍을 통합한 단일 로그 중심 구조 제공
  • 핵심 아키텍처 3계층 구조
    • 1. WALFS(Write-Ahead Log File System)* – mmap 기반 로그 파일 시스템, 대규모 읽기/쓰기 최적화
      • 세그먼트 단위 로그 구조로, 순차 쓰기와 랜덤 읽기 모두 최적화
      • 제로카피 읽기, 오프셋 기반 탐색, 실시간 tailing 지원
      • 여러 복제 노드가 동시에 읽을 수 있는 병렬 리더 구조
    • 2. Engine – WAL, MemTable, B-Tree를 결합한 하이브리드 스토리지
      • WALFS를 기반으로 MemTable(스킵리스트)B-Tree 인덱스를 조합
      • FlatBuffers를 사용해 복제 시 역직렬화 없이 전송 가능
      • 원자적 멀티키 트랜잭션 지원, 커밋 단위로 일관성 보장
      • LOB(대용량 객체) 를 트랜잭션 단위로 청크 처리 및 스트리밍 가능
      • Wide-Column 모델로 부분 컬럼 업데이트 및 동적 스키마 확장 지원
    • 3. Replication – WAL 기반 스트리밍 복제, 오프셋 추적 기능 포함
      • WAL 기반 스트리밍 복제로, 팔로워가 오프셋을 추적하며 실시간 동기화
      • FlatBuffer 로그 레코드를 사용해 자체 기술된 데이터 구조 유지
      • 배치 전송으로 효율적 스트리밍 구현
      • BoltDB 대비 약 2배 빠른 읽기 성능, 일관성 중심 설계
  • UnisonDB의 해결 방식
    • Append-only 로그 + B-Tree 결합으로 고속 쓰기와 효율적 범위 읽기 제공
    • 트랜잭션 기반 멀티키 복제컬럼 인식 동기화 지원
    • gRPC WAL 스트리밍 + B-Tree 스냅샷으로 내장 복제 수행
    • 압축(compaction) 없는 구조로 예측 가능한 지연과 높은 처리량 확보
  • 라이선스: Apache License 2.0
  • 개발 언어: Go
  • 적합한 활용 분야: 엣지 AI, 분산 IoT, 로컬 우선 데이터 처리, 실시간 분석 시스템