for (Rating r: ratings) {
long id = dimension.getId(r);
if (timestamps != null) {
int idx = keys.getIndex(id);
if (keys.indexIsActive(idx) && timestamps[idx] >= r.getTimestamp()) {
continue; // we have seen a newer event - skip this.
} else {
timestamps[idx] = r.getTimestamp();
keys.setActive(idx, true);
}