В DynamoDB у меня есть таблица, в которой каждая запись имеет два атрибута даты, create_date
и last_modified_date
. Эти даты приведены в формате ISO-8601, то есть 2016-01-22T16:19:52.464Z
.DynamoDB запрос/сортировка на основе timestamp
мне нужно иметь способ запрашивая их на основе create_date
и last_modified_date
т.е.
- получить все записи, где
create_date > [some_date]
- получить все записи, где
last_modified_date < [some_date]
- вообще получить все записи, где
[date_attr] [comparison_op] [some_date]
и т.д. ...
Один из способов сделать это - вставить фиктивный фиксированный атрибут wi й каждой записи и создать индекс с фиктивным атрибутом в качестве ключа раздела и create_date
в качестве ключа сортировки (аналогично для last_modified_date
.)
Тогда я буду иметь возможность запросить его как таковые, обеспечивая фиксированный фиктивный атрибут как ключ раздела, атрибуты даты в качестве ключа сортировки и использовать любые операторы сравнения <
, >
, <=
, >=
, и так далее.
Но это не кажется хорошим и выглядит как хак вместо правильного решения/дизайна. Есть ли лучшие решения?
Это актуально: http://stackoverflow.com/a/38790120/491553 –