'Increment the key by doing the following:
- Insert/update a hashmap based on (model, columns)
- Perform an incrby on counters
- Perform a set (last write wins) on extra
- Add hashmap key to pending flushes'

def incr(self, model, columns, filters, extra=None):

    key = self._make_key(model, filters)
    conn = self.cluster.get_local_client_for_key(key)
    pipe = conn.pipeline()
    pipe.hsetnx(key, 'm', ('%s.%s' % (model.__module__, model.__name__)))
    pipe.hsetnx(key, 'f', pickle.dumps(filters))
    for (column, amount) in six.iteritems(columns):
        pipe.hincrby(key, ('i+' + column), amount)
    if extra:
        for (column, value) in six.iteritems(extra):
            pipe.hset(key, ('e+' + column), pickle.dumps(value))
    pipe.expire(key, self.key_expire)
    pipe.zadd(self.pending_key, time(), key)
    pipe.execute()
