Добрый день
При создании коллекции я создаю индекс
await this.db.collection('users').insertOne({
id: id,
user_id: userId,
sent_at: new Date(),
});
await this.db.collection('throttling_pitch_queue').createIndex({
sent_at: Date.now(), // можно ли как-то использовать new Date() для индексов?
});
Далее, я ищу пользователей, которые были добавлены в течении минуты
const user = database
.collection('users')
.find({
sent_at: {
$gt: new Date(new Date().getTime() - 60000),
},
})
.toArray();
Вопросы:
- При создании индекса, для sent_at могу ли я как-то использовать new Date() , сейчас у меня ошибка, так как пишет, что не может быть данного формата?
- Сейчас у меня поиск идет по полю sent_at, если не ошибаюсь, то поиск по индексу будет гораздо быстрее, тем более, если пользователей может быть миллион. Подскажите пожалуйста, как в данном случае осуществить поиск по индексу set_at, используя тот же алгоритм, как сейчас: new Date(new Date().getTime() - 60000), ?