ForestDB 는 1년 전에 구현을 시작한 오픈 소스 프로젝트에 의해 정의된 차세대 스토리지 엔진입니다. 이 임베디드 키-값 시스템은 는 일반적인 B+-Tree 인덱스 구조의 주요 단점을 해결하여 디스크 IO 성능을 한 단계 끌어올리기 위해 구축되었습니다.
새로운 HB+-Trie 구조는 원래 안정상 님이 ACM SIGMOD 2011에서 발표했던 것으로, ForestDB의 기본 구조입니다. 서치영은 다음과 함께 ForestDB를 구현하는 팀을 이끌고 있습니다. 순다르 스리다란 에서 이를 통해 SSD(솔리드 스테이트 드라이브) 성능이 크게 향상되었습니다.
내부적으로 ForestDB는 MVCC(다중 버전 동시성 제어) 애드온 전용 스토리지 엔진입니다. ForestDB는 데이터베이스의 여러 보기를 생성하는 스냅샷 기능을 제공하며 스냅샷에 대한 롤백을 지원합니다. 자세한 내용을 알아보려면 repo.
처음에 저희의 목표는 ForestDB로 키/값 저장소 성능 수치를 깨는 것이었으므로 마무리하기 전에 이에 대해 간략히 살펴보겠습니다. ForestDB와 vs. RocksDB LevelDB, 그리고 모바일 배포의 경우 SQLite로 전환했습니다. 여러 측면에서 모두 우수한 성능을 보여드리게 되어 기쁩니다. 일반적으로 확장하기가 가장 까다롭기 때문에 여기서는 LevelDB 및 Rocks DB와 비교한 쓰기 성능을 강조하겠습니다. 아래 문서 수 배치에서 2배 이상 더 나은 처리량을 확인할 수 있습니다.
벤치마킹은 항상 복잡한 문제이므로 모든 사람이 자세한 내용을 살펴볼 것을 권장합니다. 자세한 내용은 성능 결과 페이지 에 자세한 내용을 게시했습니다.
ForestDB를 Couchbase Server 및 Couchbase Lite에 출시하기 전에 베타 버전으로 출시하게 되어 매우 기쁩니다. 기여와 피드백을 환영합니다. 다음 주소로 연락해 주세요. repo. 앞으로도 스토리지 엔진 계층의 혁신을 위해 함께 노력합시다.
시한 비이코글루 - 제품 관리 이사 @ Couchbase
성능 테스트 데이터와 로드 스크립트를 다운로드할 수 있나요?
문의해 주셔서 감사합니다. 성능 측정 및 비교를 위한 스크립트가 준비되어 있으며 곧 깃허브 리포지토리에 푸시할 예정입니다.
지금 안드로이드 CBLite 지원 ???
기존 안드로이드 CBlite 프로젝트를 어떻게 이걸로 업데이트하나요?
고마워요.
안녕하세요, 준비 중입니다. 현재로서는 구체적인 날짜를 알려드릴 수 없지만 일정이 확정되는 대로 다시 알려드리겠습니다.
핑. 이 기능이 3.0에 포함될 것으로 충분히 예상했지만 :(
안녕하세요 @alexanderpetrossian:disqus님, 3.0의 forestDB를 말씀하신 것이라면, 그렇게 되고 있습니다. 새로운 글로벌 보조 인덱스를 지원하는 forestDB가 추가될 예정입니다.
Cihan, 저의 주된 관심사는 지속성 디스크 요구 사항을 줄이는 것이었습니다.
2.x일 만에 사용 사례 중 하나에서 약 10배 감소했습니다. 세션 스토리지. 저희는 꽤 바쁜 세션이 있습니다. 그리고 세션은 거의 영구적으로 유지되어야 합니다.
jira 댓글에서 새로운 저장 형식을 사용하여 지속성 속도를 높이려는 계획이 기억납니다.
제가 잘못 이해했다면 바로잡아 주세요, 시한.
두 가지 문제가 있습니다:
- 여기서는 멤캐시드 버킷 유형인 지속성이 없는 방법을 추적하고 있습니다: https://issues.couchbase.com/b…
- 또 다른 하나는 카우치베이스 데이터 서비스 스토리지용 ForestDB를 도입하는 것입니다. 4.0 데이터 서비스 저장소에는 약간의 개선 사항이 있지만 데이터 서비스용 ForestDB는 아직 작업 중입니다. 카우치베이스 서버 4.0에서는 인덱스 서비스만 ForestDB를 사용할 수 있습니다.
집중하겠습니다.
네, 감사합니다!