Порядок NoSQL DB по количеству одинаковых ключевых слов
У меня есть база данных NoSQL (в настоящее время в Azure Cosmos DB, но ее можно искать с помощью команд MongoDB) с набором документов со следующей схемой:
{
"id": "dfhajdkfh",
"name": "Document 1",
"keywords": ["key1", "key2", "key3"...]
...
}
Я хочу сделать запрос, который захватит все документы с>=1 совпадающим элементом в keywords
, затем упорядочить по полному совпадению и вернуть 10 лучших.
Есть ли способ сделать что-то подобное? Я могу изменить типы базы данных на что-то другое, если есть другое решение, которое работает лучше. В настоящее время у меня есть папка, заполненная файлами JSON в этом формате (всего ~2000), и я хочу иметь возможность искать их на основе общих ключевых слов.