Задача следующая: имея список идентификаторов, проверить ходили ли пользователи по территории в промежутке времени.
Единственная идея, которая меня посетила - это взять все события определенных id в промежутке времени и если > 0, то значит ходили.
Проблема в том, что событий миллионы и брать все - это очень плохо. Подскажите, можно ли проверять только часть? Например, если искомый id совпал лишь раз, то больше не искать и так со всеми id
Василий Банников, это ravendb, в котором ивенты, а выглядит они вот так:
event/16a84f14-56e5-4b0c-8286-6922ea20e40a,
event/9d5988af-a2a3-4b0e-aef7-2899276daa19 .. итд
в каждом таком ивенте есть поле subject_id, достаю данные по id вот так:
from "event" where Header.Name = "territory_entry" and Payload.identifiers.subject_id = "12131241"
задача на 100 элементах решается просто: я просто выполняю такой запрос и если кол-во элементов больше 0, то человек проходил, иначе нет и его id не нужен
представьте, что у меня есть один id и миллионы записей в базе. Правильным ли решением будет поиск по всем и взятие count?
А считать кол-во точно необходимо или достаточно булево значение в каждом промежутке времени?
2. Какова точность отсчета времени? Достаточно секунды или нужно точнее?