Frage

Ich habe eine Lösung mit einem Azure-Tabellen-Speicher mit bis zu einigen tusands „Reihen“ pro Kunde (Partition-Taste).

Wie kann ich am besten einen blitzschnellen Freitextsuche?

Aufgrund der Art der Daten, die mir nicht in der Lage bin, ein Loch Wortsuche zu tun (z. B. eine Suche nach „zur“ sollte „Azure“ entspricht).

War es hilfreich?

Lösung

Just spotted diese, die Ihnen helfen können: Azure-Bibliothek für Lucene

Andere Tipps

Wir sind mit dem folgenden in der Produktion für unsere Standorte: Wir betreiben gehosteten solr (basierend auf Lucene) Instanzen auf http: // websolr. com und cachen die Ergebnisse der neuen azur verteilten Cache-Funktion, die derzeit in der Betaphase. Das gibt uns einen schlimmsten Fall 200 ms für eine erste Suchabfrage zwischen dem Amazon Rechenzentrum Latenz wo websolr.com läuft und der Azure Datacenter und durchschnittlich 6 bis 10 ms für alle im Cache gespeicherten Suchen. Wir haben auch Rekord gemeinsame Suche Textfragmente und versuchen, sie im Cache frisch zu halten.

Im Moment gibt es keine aus der Box Lösung. Vielleicht ist eine Full-Feature-Textsuche wird bei PDC10 bekannt gegeben.

Also im Moment müssen Sie Ihre eigene Textindizierung Lösung rollen. Die Art, wie ich dies getan haben, ist durch einen Lucene.net Index für eine Workerrolle zu bauen. Ich öffne dann ein TCP-Port auf dem Arbeitnehmer Rolle, die einen Suchdienst mithilfe von WCF bietet. Jede Web-Rolle kann dann verbrauchen diesen Dienst. Das funktioniert wirklich gut und bietet eine sehr schnelle Suche Service.

Es gibt ein PDC09 Video von Steve Marx, die mehr Informationen gibt: http://www.microsoftpdc.com / 2009 / SVC16

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top