2013-11-21 1 views

답변

1

Riak에서 수백만 개의 키를 나열하는 것은 매우 비싼 작업이기 때문에 not recommended in production environments입니다. 그래도해야한다면 목록 키 기능을 사용하는 것이 가장 좋습니다. Riak이 결과를 클라이언트로 스트리밍하고 모든 백엔드에서 작동 할 수있게하기 때문에 목록 키 기능을 사용하는 것이 가장 좋습니다.

버전 1.4 이후 버전에서 LevelDB 또는 메모리 백 엔드를 사용하는 경우 보조 인덱스 쿼리에 대해 페이징을 수행 할 수 있지만이 작업은 서버 측에서 정렬해야하므로 큰 결과 집합에는 권장되지 않습니다.

+0

캐시 파일에 모든 키를 (필요에 따라)로드해야하는데 이는 권장되는 생산 솔루션이 아니라는 것을 알고 있습니다. 다른 해결책이 있습니까? –

+0

보조 인덱스 $ 키를 사용하라는 제안을 보았습니다.이 매개 변수를 사용하면 continuation 매개 변수를 사용할 수 있습니다. Java에서 이것을 사용하는 방법을 찾을 수 없습니다. –

+0

모든 키를 반드시 나열해야하는 경우 스트리밍 키 목록을 사용하십시오. LevelDB를 사용하면 내부의 색인을 사용하게됩니다. 페이지 매김을 사용하면 리턴 할 많은 수의 키가있는 키 목록보다 클러스터에 훨씬 많은로드가 걸립니다. 또한 특수 $ key 및 $ bucket 인덱스에 페이지 매김이 가능하지 않다고 생각합니다. –

관련 문제