схема доступа к DynamodB для данных временных рядов - PullRequest
1 голос
/ 03 ноября 2019

В документации AWS для DynamoDB они описывают лучшие практики для хранения данных временных рядов в DynamodB (https://docs.aws.amazon.com/en_pv/amazondynamodb/latest/developerguide/bp-time-series.html).

. Какова лучшая практика для доступа к этим данным, когда вам нужен следующий шаблон доступа:

  • Получите строки между двумя диапазонами данных, которые не являются единицами дырок, например час или неделя, например, с 2019-11-03 22:01:50 до 2019-11-04 04:10:35Поскольку вы не можете запросить hashkey, и вставка фиктивного hashkey звучит как плохая идея. Если я использую 2019-11-03 в качестве первичного ключа, то я должен сначала запросить 2019-11-03, а затем 2019-11-04, что такжезвучит как плохое решение.

1 Ответ

1 голос
/ 06 ноября 2019

Я бы не назвал несколько запросов "плохим" решением ...

На самом деле, поскольку вы должны выполнять их параллельно, общее время ответа может быть меньше, чем если бы вы могли это сделать тогдас одним запросом.

Вы не предоставляете никакой оценки количества операций записи / чтения в секунду или наличия других требований к доступу;поэтому трудно сказать, что будет работать лучше.

Я укажу, что пример временного ряда AWS поддерживает очень большой объем данных, поступающих в таблицу.

Если ваш объем не так высок, вы можете иметь хеш-ключ YYYY-MM вместо YYYY-MM-DD. Тогда ключом сортировки будет DD HH:MM:SS.xxxxxx

Тем не менее потребуется несколько запросов, если вы запрашиваете в течение нескольких месяцев ...

...