title: Redis: Return all values stored in a database
body: <p>We're using Redis to store various application configurations in a DB 0.</p>
  
  <p>Is it possible to query Redis for every key/valuie pair within the database, without having to perform two separate queries and joining the key/value pairs yourself?</p>
  
  <p>I would expect functionality similar to the following:</p>
  
  <pre><code>kv = redis_conn.getall()
  # --OR-- #
  kv = redis_conn.mget('*')
  </code></pre>
  
  <p>... Where <code>kv</code> would return a tuple of tuples, list of lists, or a dictionary:</p>
  
  <p>However after scouring StackOverflow, Google and Redis documentation, the only solution I can derive (I haven't yet found anyone else asking this question..) is something similar to the following:</p>
  
  <pre><code>import redis
  red = redis.Redis(host='localhost', db=0)
  keys = red.keys()
  vals = red.mget(keys)
  kv = zip(keys, vals)
  </code></pre>
  
  <p>Am I crazy here, in assuming there to be a more elegant approach to this problem?</p>
  
  <h2>Additional Info</h2>
  
  <p>Every value within this database is a String.</p>
  
  <p>My question is not how to retrieve values for each unique data type or data-type related at all.</p>
  
  <p>Rather, my question is: Is there a way to say <code>"hey Redis, return to me every string value in the database"</code> without having to ask for the keys, then query for the values based on the keys returned?</p>