code: private void createHighResolutionAlarm(String alarmName, String metricName, double threshold) {
          putMetricAlarm.apply(new PutMetricAlarmRequest()
                  .withNamespace(CUSTOM_TABLE_METRICS_NAMESPACE)
                  .withDimensions(tableDimension)
                  .withMetricName(metricName)
                  .withAlarmName(alarmName)
                  .withStatistic(Statistic.Sum)
                  .withUnit(StandardUnit.Count)
                  .withComparisonOperator(ComparisonOperator.GreaterThanThreshold)
                  .withDatapointsToAlarm(5).withEvaluationPeriods(5) //alarm when 5 out of 5 consecutive measurements are high
                  .withActionsEnabled(false) //TODO add actions in a later PR
                  .withPeriod(10) //high resolution alarm
                  .withThreshold(10 * threshold));
      }
docs: A high-resolution alarm is one that is configured to fire on threshold breaches of high-resolution metrics. See
  this [announcement](https://aws.amazon.com/about-aws/whats-new/2017/07/amazon-cloudwatch-introduces-high-resolution-custom-metrics-and-alarms/).
  DynamoDB only publishes 1 minute consumed capacity metrics. By publishing high resolution consumed capacity
  metrics on the client side, you can react and alarm on spikes in load much quicker.
  @param alarmName name of the high resolution alarm to create
  @param metricName name of the metric to alarm on
  @param threshold threshold at which to alarm on after 5 breaches of the threshold