5
votes

Are there any patterns for implementing efficient string search for Azure Table Storage?

Let's say there are a large number of rows and each of them contain a string column. Users should be able to perform a search based on the words in stored text. Azure Table Storage does not support this without loading all entries to memory. However, speed and low cost made me think about possible workarounds.

The only solution that comes to mind is keeping indexes of all the words. When entry is added/updated, indexes for it should be regenerated.

Maybe someone solved the same problem before? What would be your suggested strategies? Or is Azure Table Storage just not a good fit for what I am trying to accomplish?

2

2 Answers

5
votes

There is now Azure Search for full text searching.

0
votes

Until now the answer for you your question is that exactly: Azure Table Storage just not a good fit for what I am trying to accomplish But is very useful have quick search capability in your model

The last time I do the same that you suggest: Using indexes to have keywords in a separate table. The only negative thing here is that you are unable to have any transaction between the Table Update operations and the Index Update operation

The other thing that I tried is using the PartitionKey and RowKey columns to store the primary search terms of my entity (concat, etc...)