Вы не можете легко решить эту проблему в DynamoDB, по крайней мере, в общем случае, который позволил бы вам сделать один запрос и только один запрос, чтобы получить все записи в произвольном диапазоне дат независимо от name
(ключ раздела).
DynamoDB - это база данных ключ / значение. Ваши запросы обычно относятся к отдельным ключам, возможно с диапазоном значений для ключа сортировки. Запрос имени = A и отметки времени между X и Y является совершенным и может быть очень эффективно запрошен.
Чтобы сделать то, что вы хотите, вы обычно создаете глобальный вторичный индекс, первичный ключ которого состоит из:
- ГГММДД отметки времени
- отметка времени
Теперь вы можете запрашивать элементы с отметкой времени в определенном диапазоне, независимо от name
, но они должны быть в тот же день . Если вам нужен этот запрос для более широкой работы, скажем, с диапазонами до месяца, то у вашего GSI будет первичный ключ, который будет составным из:
- ГГММ отметки времени
- отметка времени
И теперь вы можете запрашивать все элементы в пределах заданного диапазона дат / времени в одном и том же месяце.
Вот несколько полезных ресурсов: