我有一组属于少数作者的文件:
[
{ id: 1, author_id: 'mark', content: [...] },
{ id: 2, author_id: 'pierre', content: [...] },
{ id: 3, author_id: 'pierre', content: [...] },
{ id: 4, author_id: 'mark', content: [...] },
{ id: 5, author_id: 'william', content: [...] },
...
]
我想根据作者的 id 检索和分页最佳匹配文档的不同选择:
[
{ id: 1, author_id: 'mark', content: [...], _score: 100 },
{ id: 3, author_id: 'pierre', content: [...], _score: 90 },
{ id: 5, author_id: 'william', content: [...], _score: 80 },
...
]
这是我目前正在做的事情(伪代码):
unique_docs = res.results.to_a.uniq{ |doc| doc.author_id }
问题就在分页上:如何选择 20 个“不同”的文档?
有些人指向术语 facets,但我实际上并没有做标签云:
- 使用 CouchDB 和 elasticsearch 进行不同的选择
- http://elasticsearch-users.115913.n3.nabble.com/Getting-Distinct-Values-td3830953.html
谢谢,
阿迪特