Я довольно новый для больших объемов данных, и мы имеем миллионы записей, которые имеют данные следующим образом -MongoDB запрос или программное решение
ID Timestamp Status
1. 12:00:00. ON
1. 12:00:35. Off
1. 12:01:01. ON
1. 12:10:00. Off
1. 12:11:00. On
мне нужно рассчитать общее время он был выключен. Это по миллионам записей, поэтому решение должно быть быстрым. Любые мысли о том, что я мог бы сделать либо алгоритмически, либо через запросы? Я считаю, что один из способов - перебрать данные через массив, но это кажется слишком трудоемким, и я уверен, что люди это делали раньше.
Что такое формат данных? Вы говорите, итерации через массив - что такое массив? Можете ли вы включить фактический документ, находящийся в БД? Также гарантированы ли события, которые будут упорядочены и уникальны? То есть у вас не может быть ВЫКЛ после другого ВЫКЛ или вы можете? –
1. Формат данных - это json, поскольку он хранится в mongodb. – user3204574
1. Когда я имел в виду массив, то, что я пытался сказать, я могу написать запрос, который возвращает и вставляет эти данные в массив с помощью java. Мне придется настроить тестовый документ, и я могу сделать это дома. Я только поместил соответствующий документ, но могу гарантировать, что они уникальны. И да, у вас может быть еще один за другим, так как обновлен какой-то другой столбец. – user3204574