Я пробовал документы DynamoDB и работал с примером, используя QueryResult
, я не смог найти источник, как использовать min, max и avg в DynamoDB (я использую Java API).Поддерживает ли DynamoDB совокупные функции, такие как AVG, MAX, MIN?
ответ
Это не предусмотрено. Вы реализуете их путем выполнения запроса или сканирования с помощью фильтра и вычисления значений самостоятельно. Чтобы упростить некоторые вещи, вы можете использовать Count
parameter, чтобы возвращать только количество элементов, которые будут возвращены этим запросом/сканированием вместо фактических элементов. (Обратите внимание, что count возвращает только частичный счет - вам может понадобиться суммировать подсчеты на нескольких страницах запросов/сканов).
В качестве альтернативы вы можете сохранить отдельную таблицу, которая сохраняет эти значения для вас, поскольку основные таблицы обновляются (обратите внимание, что это может быть сложно синхронизировать, вам придется использовать некоторую форму управления транзакциями и принимать во внимание модель окончательной согласованности динамо).
У меня была такая же проблема, как и вы, а затем у меня было 2 идеи для решения этой проблемы. 1st one - это запрос всех данных с помощью запроса/сканирования, а затем агрегирование ваших данных в Java-коде. 2nd one - использовать Hive SQL, вы можете использовать Hive и DyanmoDB вместе и суммировать свои данные в Hivql.
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EMRforDynamoDB.Tutorial.html
- 1. SQL MIN(), MAX() и AVG
- 2. как рассчитать min, max, sum и avg
- 3. Sum, Avg, Max, Min, Count of NULL
- 4. Min, Max, Avg Фильтры в opencv2.4.13
- 5. MongooseJS Find Max, Min и Avg Number
- 6. Расчета MIN, AVG, MAX на основе состояния
- 7. Вывод min, max, avg, sum в ArrayList
- 8. Поиск min, max, avg в ArrayList
- 9. Узнать значение min, max и avg
- 10. Elasticsearch - Как получить min/max/avg из набора вложенных документов
- 11. Резюме результата саранчи. Как понять Avg, Min и Max?
- 12. Как найти MIN, MAX, SUM и AVG из отсортированного списка
- 13. Поддерживает ли DynamoDB jsonp?
- 14. Критерии для значений, учтенные в расчетах MYSQL MIN/Max/Avg
- 15. MySQL медленный avg min max с использованием filesort
- 16. select avg(), min(), max(), toatl(), count() выбранного результата
- 17. SQL Server: Avg, Max и Min в одном запросе
- 18. SQL Server query - Min, Max, Avg aggregates issue
- 19. Как работают функции max и min?
- 20. Вложенные агрегатные функции, Max (Avg()), в SQL
- 21. Как вычислить min, max, среднее от массива?
- 22. php родные функции, такие как min() не поддерживают фиксированные массивы
- 23. T-SQL Совокупные Max
- 24. HQL Min Max, как
- 25. Поддерживает ли SQL Server 2014 такие функции, как ISNOTNULL()?
- 26. могут использовать функции sql, такие как min() или max() уничтожить целостность записи
- 27. Альтернатива d3.max и d3.min функции
- 28. MySQL - Как получить MIN/MAX Date из MIN/MAX Value
- 29. Функции Min и max возвращают неправильные значения
- 30. Min и Max функции с Visual Studio
только счетчик поддерживается https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Count – cjungel
Не совсем - рассчитывать только возвращает частичные результаты этого запроса - вы все еще необходимо собрать общий счет самостоятельно. Я скопировал и вставил соответствующие примечания к документу из вашей ссылки здесь: «Если соответствующие элементы для выражения фильтра или условия запроса превышают 1 МБ, граф содержит частичный подсчет общего количества элементов, соответствующих запросу. получить полное количество элементов, которые соответствуют, взять значение LastEvaluatedKey из предыдущего запроса и использовать это значение как ExclusiveStartKey в следующем запросе. Повторите это, пока DynamoDB больше не вернет LastEvaluatedKey. * « – Krease
Вы правы, вы можете должны суммировать все частичные счета, чтобы получить общее количество. Но все же это более эффективно, чем извлечение отдельных элементов и подсчет их в стороне приложения. Конечно, это будет работать только для подсчета, а не для какой-либо другой совокупной функции. – cjungel