2013-12-03 6 views
0

현재 MongoDB의 전체 텍스트 검색 기능을 사용하여 특정 키워드가 포함 된 시간당 문서 수를 계산하고 있습니다.MongoDB 전체 텍스트 검색 및 집계 파이프 라인

각 문서가 트윗 인 대규모 컬렉션에서 실행하면 매우 흥미로운 일입니다. 예를 들어 키워드 "thanks"에 대해서는 11 월 29 일 (Thanks Giving)을 참조하십시오.

enter image description here

내 현재의 접근 방식은 작동합니다 (위의 플롯을)하지만 규모 않을 것입니다. 지금은 검색으로 반환 된 문서를 반복하여 매 시간마다 트윗 수를 수동으로 계산합니다. 이 검색 결과는 결국 MongoDB 문서 제한에 도달하므로이 접근법은 확장되지 않습니다. 지금은 3.5 백만개의 트윗 만 있기 때문에 작동하지만 더 많이 수집 할 계획입니다.

data = db.command('text', collection, 
    search=query, 
    project={'hour_bucket': 1, '_id': 0}, 
    limit=-1 
) 

hours = Counter() 
    for d in data['results']: 
    hours[d['obj']['hour_bucket']] += 1 

제 질문은 집합 파이프 라인에서 텍스트 검색을 사용할 수 있습니까? 이것은 내 모든 문제를 해결할 것입니다. 그러나 이것에 대해 내가 본 유일한 코멘트는 다음과 같습니다. https://jira.mongodb.org/browse/SERVER-9063

이 작품의 상태를 아는 사람이 있습니까?

답변

0

어느 정도 우연히도, 집계 프레임 워크의 텍스트 검색 지원은 곧 MongoDB 2.5.5 개발/불안정한 릴리스 (SERVER-11675 참조)를위한 태그가 지정된 fixVersion으로 커밋되었습니다.

QA/테스트에서 모두 잘 수행된다고 가정하면이 기능은 2.6 프로덕션 릴리스에 포함될 것입니다.

draft 2.6 release notes에 2.5.5가 출시 된 이후 추가 정보가 포함되어 있어야하며 개발 환경에서이 기능을 테스트 해 보시기 바랍니다.

참고로 을 통해 공지 사항을 찾거나 구독 할 수 있습니다.

관련 문제