2012-11-16 5 views

답변

6

정말 B + 트리가 필요한 경우 eleveldb 응용 프로그램을 살펴 보는 것이 좋습니다. 요점은 B + 트리가 일반적으로 옵션 인 트리의 트리에 오프라인으로 데이터를 저장하려는 것입니다. LevelDB의 얼랑 (Erlang)에는 hanoidb이라는 변종도 있습니다.이 역시 Kresten Krab Thorup이 작성한 꽤 좋은 도구입니다. 같은 사용 영역.

메모리가 필요한 저장소의 경우 ETS 또는 Mnesia (배포판은 후자)를 살펴야합니다. 얼랭 (Erlang)에서는 디스크를 절대 사용하지 않는 이점이있어서 가장 빠른 솔루션이되는 경향이 있습니다. Mnesia에서 트랜잭션 컨텍스트 내에서 실행할 필요가없는 (더티 읽기 수행) 데이터에서 표준 키/값 조회를 수행 할 수있는 경우 특히 그렇습니다. 일반적인 조회 속도는 5-10 나노초입니다. 오픈 소스 데이터베이스 시스템을 해킹하지 않으려면

2

내가 아는 독립형 라이브러리가 없습니다. 그러나 CouchDB source code은 매우 읽기 쉽고 잘 구현되어 있습니다.

3

그냥 대안 :

크리스 오카 사키의 순수 기능 데이터 구조가이 스스로 그것을 구현하는 몇 가지 통찰력을 제공 할 수 있습니다. B + 트리 자체는 내 경험으로 인해 복잡하지 않습니다.

메모리 내 저장소와 ets 및 mnesia보다 더 낮은 수준 (일부 의미)이 필요한 경우 gb_trees을 사용하는 것이 좋습니다.