SonnetDB 5.0 정식 출시…SQL·트랜잭션 강화, MCP 지원
SonnetDB 5.0.0이 11월 4일 정식 출시돼 SQL과 관계형 트랜잭션, 정밀 타입, .NET 데이터 접근, 9개 모델 MCP 도구를 강화했다.
중국어 원문을 AI로 번역했습니다. 고유명사와 수치는 원문 표기를 우선하며, 중요한 판단에는 아래 출처 원문을 함께 확인하세요.
SonnetDB 5.0.0은 2026년 11월 4일 정식 출시되었다. 4.0 대비 이번 메이저 버전 업데이트는 SQL과 관계형 트랜잭션, 정밀 타입, .NET 데이터 액세스, 구(九)모델 MCP 도구를 중점 강화하고, 쿼리 실행과 리소스 제어, 영속화 복구, 관리 경험을 개선했다.
AI 주제 시안 이미지이며, 제품 화면이나 실제 측정 스크린샷이 아니다.
SonnetDB는 MIT 라이선스를 채택한 C# / .NET 10 멀티모델 데이터 엔진으로, 임베디드 및 독립 Server 배포를 지원한다. 시계열, 관계형 테이블, 키-값, JSON 문서, 전문 검색, 벡터 검색, 오브젝트 스토리지, 메시지 큐, 네이티브 속성 그래프가 엔진을 공유하며, 각 모델은 네이티브 의미를 유지한다. 코어 엔진은 서드파티 NuGet 런타임 의존성이 없고, Server는 NativeAOT 배포물을 제공한다.
주요 신규 및 개선 사항
SQL 및 집합 처리. rank, dense_rank, ntile, 기본 string_agg / group_concat, 문자열 패딩, 삼각함수, 시프트 및 완전한 UInt64 정밀 파싱과 비트 연산 함수를 추가했다. TAG / 시간 버킷 그룹화, HAVING, 복합 프로젝션, Int64 페이징을 보완했으며, 행 없는 표현식 삽입, 파생 데이터 소스 일괄 갱신, 네이티브 REPLACE, CTAS, 세션 임시 테이블, 기본 키 없는 테이블 쓰기, 유계 삭제를 추가했다.
트랜잭션 및 구조 진화. 다중 테이블 트랜잭션, 저장점, 명시적 Serializable 및 지원되는 트랜잭션 DDL을 보완하고, 제한된 FOR UPDATE / NOWAIT / SKIP LOCKED를 추가했다. schema / table 구조화 아이덴티티, 영속 시퀀스, 테이블 컬럼 주석, 문자열 길이 제약, 기본 키 및 인덱스 유지 관리, 보다 완전한 뷰 메타데이터를 추가했다.
정밀 타입 및 애플리케이션 연계. 네이티브 DATETIME2, DATETIMEOFFSET, DURATION을 추가했으며, 관계형 날짜 타입은 완전한 UTC 100ns ticks를 보존하고 DECIMAL 선언 제약과 크로스 프로토콜 타입을 강화했다. ADO.NET은 다중 결과, HasRows, 저장 프로시저 및 출력 파라미터를 보완했고, EF Core는 ToJson의 모델링과 쿼리, 지원되는 부분 업데이트를 개선했으며 기본 DateTime은 DATETIME2를 사용한다.
구모델 MCP. 구모델 리소스 탐색, 읽기 및 적용 가능한 쓰기 도구를 제공하며, 기존 SQL 쿼리 도구는 계속 읽기 전용으로 유지되고, 쓰기 도구는 호출 시마다 대상 데이터베이스 권한을 검사하며 입력, 페이징, 응답 예산을 제한한다. 아울러 WorkBuddy 커넥터와 연동 테스트 자료를 제공한다.
성능 및 리소스 제어. nullable / EXISTS 인덱스 경로, 복합 역순 페이징 조기 종료, Hash Join 빌드 측 선택을 개선하고 인덱스 복구 시 무관한 컬럼 할당을 줄였다. 일부 쿼리에 명시적 구체화 예산을 추가했으며, KNN은 Top-K 후보 유지를 사용하고, KV는 제한된 읽기 동시성, 큐잉 및 체크포인트 유지 관리 용량을 제공한다.
지속 처리 및 복구. 로컬 문서 CDC 스냅샷 및 증분 이어받기, 영속 구독, 윈도우 집계, 데드레터 격리와 재생을 보완하고, 실제 프로세스 중단 후의 복구 회귀 테스트를 추가했다. 로컬 복구 계약과 원격 복제, 일반 exactly-once 및 물리적 전원 차단 수용 기준은 각각 정의되었다.
중점 문제 수정
- SonnetMQ가 비(非) Topic 하위 디렉터리를 만났을 때 정상적으로 복구되지 않던 문제를 수정했다.
- 다중 외래 키 SET NULL 캐스케이드에서 컬럼이 누락되던 문제, 자기 참조 외래 키 하에서 지원되는 날짜 컬럼 마이그레이션이 차단되던 문제를 수정했다.
- 트랜잭션 로그 디렉터리 동기화, Windows 긴 경로 플러시, measurement 삭제 의도 및 배치 schema 실패 원자성을 강화했다.
- JSON 대정수, DECIMAL 반올림, 원격 소정수 / 열거형, BLOB 비교, 날짜 선언 및 영행 뷰 메타데이터를 수정했다.
- 샤드 업로드 목록 표시 삭제 후 이어 읽기를 수정하고, 시맨틱 백필 예산 종료 시 진행 상황 저장을 보완했다.
- 관리 인터페이스의 세션 만료 후 자격 증명 없는 재읽기와 이전 컨텍스트 응답 오염을 수정하고, 최초 설치의 입력 검증과 원자적 초기화를 보완했다.
배포 및 업그레이드
5.0은 정식 SonnetDB.Protocol, SonnetDB.Client를 추가하고 CAP, EF Core, 캐시 어댑터, CLI 및 SonnetDB.Testcontainers를 십(十)패키지 배포에 포함했다. NuGet.org에서 열 개의 5.0.0 패키지를 조회할 수 있으며, 정식 배포 페이지는 Windows / Linux x64 SDK, Server bundle, MSI / DEB / RPM, Windows Studio 및 해당 언어 커넥터를 제공한다. Compose는 생존 검사를 추가했고, 관련 의존성 및 VS Code 패키징 보안 문제도 함께 유지 관리한다.
이는 메이저 버전 업그레이드다. 공용 타입 마이그레이션 어셈블리, 페이징 API는 long으로 변경되었으므로, 애플리케이션과 Provider는 의존성을 통일하고 다시 컴파일해야 한다. 업그레이드 전에는 쓰기를 중지하고 백업하며 복구를 리허설해야 하고, 새 디렉터리는 이를 지원하지 않는 구 엔진으로 직접 열 수 없으며, 롤백 시에는 업그레이드 전 복사본을 복구해야 한다. 기존 EF 날짜 컬럼은 필요에 따라 마이그레이션해야 하며, 시계열 measurement 시간축은 여전히 기존 밀리초 계약을 사용한다.
네이티브 그래프는 Graph Beta를 유지하고, 새 Client는 완전한 구모델 typed SDK와 동등하지 않으며, ORM 업스트림 패키지는 각자의 실제 배포 버전에 따라 검수한다. Server 인스턴스 MQ는 별도로 백업해야 하며, 이번 버전은 검증되지 않은 성능 배수나 전면적 프로덕션 준비 약속을 발표하지 않는다.
- 프로젝트 저장소(Gitee)
- 5.0.0 정식 배포 및 다운로드
- 전체 버전 차이
- 업그레이드 가이드