private long[] getMinCountsForHour(String name, int year, int month, int day, int hour) {
   DateTime dt =
       new DateTime()
           .withYear(year)
           .withMonthOfYear(month)
           .withDayOfMonth(day)
           .withHourOfDay(hour);
   AggregateKeyGenerator akg = new AggregateKeyGenerator(getPrefix(), name, dt);
   return convertToArray(getEntries(akg.getHourKey()), 60);
 }
  @Override
  public long increment(String name, long amount, DateTime dateTime) {
    final AggregateKeyGenerator akg = new AggregateKeyGenerator(getPrefix(), name, dateTime);

    String bookkeepingKey = bookkeepingKeyFor(name);

    doIncrementHash(akg.getYearsKey(), akg.getYear(), amount, bookkeepingKey);
    doIncrementHash(akg.getYearKey(), akg.getMonth(), amount, bookkeepingKey);
    doIncrementHash(akg.getMonthKey(), akg.getDay(), amount, bookkeepingKey);
    doIncrementHash(akg.getDayKey(), akg.getHour(), amount, bookkeepingKey);
    doIncrementHash(akg.getHourKey(), akg.getMinute(), amount, bookkeepingKey);

    return super.increment(name, amount);
  }
 private long[] getHourCountsForDay(String name, DateTime day) {
   AggregateKeyGenerator akg = new AggregateKeyGenerator(getPrefix(), name, day.toDateMidnight());
   return convertToArray(getEntries(akg.getDayKey()), 24);
 }