CouchDB와 같은 문서 기반 데이터 저장소를 사용하면 큰 이익을 얻을 수있는 애플리케이션이있다. 그러나 Map Reduce를 구현하기 위해 애 쓰고있는 쿼리 유스 케이스가 있습니다.CouchDB에서 임의의 술어 쿼리를위한 전략
- 숫자는
- 부울 부울 본질적 속성을 하나 이상의 비 독점적 세트에 속하는 것으로 문서를 표시
속성 속성 :
우리의 문서는 정말 단지 두 가지 유형의 데이터를 포함 . 숫자 속성은 항상 합계 만 필요합니다.
이 구성에{
"id": 3123123,
"attr": {"x": 2, "y": 4, "z": 6},
"sets": ["A", "B", "C"]
}
, 그것은 세트 A, B 및 C에 대한 집합 X, Y, Z 값을 작동하기 쉬운, 그러나 당신이 할 때 더 복잡해진다 : 문서를 구조화하는 한 가지 방법은 다음과 같이이다 A &과 같은 집합체를 볼 수 있습니다.
이 작은 경우 나는 ABC ("A, B, C, AB, AC, BC, ABC")의 모든 순열에 대해 키를 내보낼 수 있습니다. 이것이 어떻게 규모가 될지 걱정했습니다. 우리의 문서는 80 세트의 일부 조합에 속할 수 있으며 사용자 인터페이스를 통해 가능한 모든 조합을 구성 할 수 있습니다.
저는 이것이 CouchDB의 직업이 아니라고 생각합니다. 아마도 MongoDB 또는 다른 것이이 문제에 더 잘 맞을 것입니다.
나는 무엇이 있습니까?
감사의 말 Victor -이 시점에서 나는 멀티 키 인덱스가있는 MongoDB를 확인하려고 노력하고 있습니다. 그렇지 않으면 내가 소파로 시도 할 수있는 접근법은 세트 일치 횟수를 저장하고 가장 작은 세트를 클라이언트 측 축소를위한 기초로 사용하는 것입니다. 또는 당신이 말한대로, 아마 이것을 두 가지 조합 하위 집합으로 가져 가라. –