문제

I have a solution with a Azure table storage with up to a few tusands "rows" per customer (partition key).

How do I best do a lightning fast free text search?

Because of the nature of the data I'm not able to do a hole word search (eg. a search for "zur" should match "Azure").

도움이 되었습니까?

해결책

Just spotted this which may help you: Azure Library for Lucene

다른 팁

We are using the following in production for our sites: We run hosted solr (based on lucene) instances on http://websolr.com and cache the results using the new azure distributed cache feature that is currently in beta. That gives us a worst case 200 ms latency for an initial search request between the Amazon datacenter where websolr.com runs and the Azure Datacenter and an average 6 - 10 ms for all cached searches. We also record common search text fragments and try to keep them fresh in the cache.

At the moment there is no out of the box solution for this. Perhaps a full text search feature will be announced at PDC10.

So at the moment you will need to roll your own text indexing solution. The way I have done this is by building a Lucene.net index on a worker role. I then open a tcp port on that worker role that provides a search service using WCF. Any web role can then consume that service. This works really well and provides a very fast search service.

There is a PDC09 video by Steve Marx that gives more information: http://www.microsoftpdc.com/2009/SVC16

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top