def iter_data(self): match = u"{}*".format(self.KEY_PREFIX) count = None results = {} keys = [ key for key in self.r.scan_iter(match=match, count=count) ] values = self.r.mget(keys) keys = map(lambda x: x.replace(self.KEY_PREFIX, u''), keys) values = map(lambda x: utils.json_loads(x), values) results.update(dict(izip(keys, values))) raise tornado.gen.Return(results.iteritems())
def get_info(self, url): key = self.key(url) data = self.r.get(key) if not data: raise KeyError(u"Key: {} does not exist in db".format(key)) raise tornado.gen.Return(utils.json_loads(data))