키 길이가 트리를 걷는 데 걸리는 시간에 직접 영향을 미치기 때문에 짧은 응답은 물론 성능에 영향을 미칩니다.
키가 길면 키가 더 많은 공간을 차지하므로 저장 공간에도 영향을줍니다.
그러나 누락 된 뉘앙스는 Couch CAN은 새로운 ID를 할당 할 수 있지만 필요하지 않습니다. 자체 ID를 생성하는 것보다 자신의 ID를 수락하는 것이 더 행복 할 것입니다. 따라서 열쇠 길이가 너를 괴롭히는 경우, 더 짧은 열쇠를 자유롭게 사용할 수 있습니다.
그러나 소파의 "json"특성을 고려하면 "텍스트"기반 데이터베이스에 가깝습니다. 보통의 Couch 인스턴스에 저장된 바이너리 데이터는 많지 않습니다 (첨부 파일은 견딜 수 없지만 BASE64에 저장되어 있다고 생각되는 파일은 잘못되었습니다).
그래, 64 비트가 가장 효율적이지만 간단한 사실은 소파가 모든 키에서 작동하도록 설계되었으며 "모든 키"가 텍스트에서 가장 쉽게 표현된다는 것입니다.
마지막으로, 키 비교 비용은 디스크 I/O 페치 시간과 데이터의 JSON 마샬링 (특히 쓰기)으로 인해 비하면 작다는 사실을 알 수 있습니다. 이러한 시스템으로 변환하여 얻은 실제 이득은 전체 성능에 "실제"영향을 미치지 않을 것입니다.
정말로 카우치 키 시스템의 속도를 높이려면 64Bit 길이의 키를 차단하는 키 루틴을 코딩하고 (말한대로) 그 키움을 완성하십시오. 8 바이트 텍스트는 64 비트 "long int"와 같습니다. 이것은 이론적으로 핵심 비교에서 8 배의 성능 향상을 제공합니다. erlang이 그러한 코드를 만들 수 있는지 여부는 말할 수 없습니다.
답변 해 주셔서 감사합니다. 나는 더 긴 끈이 허용하는 우아함을 좋아합니다. 이제는 성능에 대한 염려가 줄어 들었습니다. –