2014-04-11 2 views
3

Это как-то связано с: How to get row count from DynamoDB (iOS & PHP)?Как получить количество строк в диапазоне ключей DynamoDB?

Однако мне нужен эффективный способ, чтобы получить количество для числа диапазона клавиш для данного хэш-ключа в таблице ключей хеш-и-диапазона.

Он должен быть эффективным, поэтому я надеялся, что что-то похожее на ItemCount от DescribeTable (Указано в ответе @jtlebi) существует для заданного диапазона.

Пример: Давайте воспользуемся примером, предоставленным Amazon, указанным HERE. Если я хочу получить быстрый, но не полностью точный подсчет количества потоков на данном форуме. Как достичь этого без Scan или Query?

ответ

0

Я не использовал iOS & PHP DynamoDB SDK, но у меня есть приличный опыт использования Java Low-Level API.

Это зависит от вашего значения точности, которое в свою очередь зависит от количества записей, которые вы делаете на столе, если вы хотите использовать ItemCount DescribeTableResult. Скажем, количество записей в 6-часовом окне (в настоящее время требуется 6 часов для обновления TableStats) слишком велико (несколько тысяч), и вы хотите получить счет, используя DescribeTableRequest, тогда счетчик близок к точности. Но преимущество этого в том, что это бесплатный API, за это вы не будете платить.

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

+0

Я использую API Java Low-Level для. Я надеялся на такое решение, как DescribeTableResult, которое было обновлено медленно, но могло бы дать мне эффективную оценку элементов через несколько часов или даже дней после пиковых времен. Как вы думаете, какой атомный счетчик будет выполнять по сравнению с запросом для каждого запроса? Допустим, атомный счетчик обновляется для каждого создания нового элемента. Тогда я могу запросить оценку предметов очень быстро. Меня не волнует, что атомный счетчик не является идемпотентным, так как мне нужна только оценка. – dynamokaj

+0

Это должно сработать. Взгляните на http://doc.akka.io/docs/akka/2.2.0/scala/stm.html, если вы используете Akka. –

Смежные вопросы