title: PartitionKey and RowKey on Azure Storage Table
body: <p>Learning about Azure Storage Tables.<br>
  For a table of people with addresses and other fields, 
  what would be the best way to set up the PartitionKey and RowKey to optimize a query like this?</p>
  
  <pre><code>SELECT * FROM {table} 
  WHERE
  ((FIRST_NAME LIKE '%{Name}%'
   OR LAST_NAME LIKE '%{Name}%'
   OR NICK_NAME LIKE '%{Name}%')
  AND
   (CITY LIKE '%{Loc}%'
    OR STATE LIKE '{Loc}'
    OR ZIP LIKE '%{Loc}%'))
  </code></pre>
  
  <p>I am looking for a way to store a large amount of data and be able to query it quickly while keeping the cost as low as possible.  I've been looking at the storage table and CosmosDB tables.  Pricing wise, it looks like CosmosDB could get expensive for very large tables.  </p>
  
  <p>Regarding the query, could I put "City", "State", "Zip" as PartitionKey and "First_Name", "Last_Name", and "Nick_Name" as RowKey.  Ex: " Los Angeles CA 90045" as partitionKey and "John Doe JDoe" as RowKey.  Will I be able to do a PartitionKey search that contains Los Angeles and KeySearch for John quickly?</p>