Я хочу получить все предметы за последние 24 часа. Я уже сделал некоторые поисковые запросы Google, и кажется, что это не так просто сделать с DynamoDB.Amazon DynamoDB получить все товары за последние 24 часа
Я думал, если можно создать вторичный индекс с общим хеш-ключом и поле метки времени в качестве ключа сортировки. Поэтому я могу запросить метку времени с условием timestamp> (DateTime.Now - 24h). Может кто-нибудь прокомментировать это, если это возможно или есть другая идея?
На самом деле, мне нужны только предметы в моем столе, которые не старше 24 часов. Поэтому еще одна идея - очищать таблицу каждый час и удалять все предметы старше 24 часов. Это возможно?
EDIT: Другой идеей было бы создать вторичный индекс с датой в качестве хеш-ключа и времени, как ключ сортировки, а затем выполнить два запроса. Первый для date = 'today' и второй для date = 'вчера' с условием вовремя. Но как сохранить дату и время, как строку или целое число? Было бы лучше, чем моя идея выше?
Ваш первый предложенный вариант звучит хорошо. Считаете ли вы, что более эффективно выполнять 24 «маленьких» запросов вместо 2 «больших» запросов? Должен ли я хранить эти значения в виде строк с форматом даты yyyyMMdd и временным форматом HH: ss или как числовые значения с учетом производительности? Второй вариант кажется интересным, но на данный момент он слишком сложный. –
24 запроса могут быть быстрее, если у вас достаточно ресурсов для запуска параллельно, но в остальном это не будет большой разницей –