RavenDB запрос на основе времени - PullRequest
2 голосов
/ 26 ноября 2011

У меня есть структура документа JobData, в которой хранятся данные, основанные на времени, начиная со времени 0 до времени t в тиках.И обычно данные представляют собой документ в секунду.

public class JobData
{
       long Ticks {get;set;}
       double JobValue {get;set;}
}

Для простоты я показываю только один параметр JobValue, но на самом деле это сложный график данных.Мой вопрос: если заданное время ввода в тиках, какой тип запроса будет наилучшим для поиска последних JobData на основе заданного тика?

Так что, если в базе данных есть документ на 1000 тиков, а затемследующий в 2000 тиков, и пользователь хочет найти состояние в 1500 тиков, он / она должен получить JobData в 1000 тиков в качестве ответа.

Запрос, который я использую сейчас:

var jobData = documentSession.Query<JobData>().Where(t => t.Ticks <= 1500).OrderByDescinding(t => t.Ticks).FirstOrDefault();

Это правильный и самый эффективный запрос?У меня есть тысячи таких узлов JobData, и я хочу просто добраться до ближайшего.

Спасибо!

1 Ответ

2 голосов
/ 27 ноября 2011

Ahmad, Да, это способ сделать это. И это было бы очень быстро.

...