NoSQL, Lucene und Solr

Neulich fragte mich Michael Coté, welchen Platz Apache Lucene und Solr in der NoSQL-Bewegung einnehmen (nachdem er von der Verwendung von Solr durch den Guardian gehört hatte), worauf ich ihm antwortete: Ich habe SQL nicht mehr in nennenswertem Umfang verwendet, seit ich 2004 mit Lucene angefangen habe (und ich habe meine Karriere damals mit Oracle DBA-Arbeiten usw. begonnen). Wir hatten „damals“ einfach keinen lustigen Namen dafür.

Spaß beiseite und auf die Gefahr hin, auf den Buzzword-Zug aufzuspringen, lassen Sie uns einen Blick auf die Definition von NoSQL bei Wikipedia werfen:

NoSQL (Not only SQL) ist eine Bewegung, die eine lose definierte Klasse von nicht-relationalen Datenspeichern fördert, die mit der langen Geschichte der relationalen Datenbanken brechen. Diese Datenspeicher benötigen keine festen Tabellenschemata, vermeiden normalerweise Join-Operationen und skalieren in der Regel horizontal.

Wenden wir diese Definition nun auf Lucene an (zu Solr kommen wir gleich noch):

  1. NoSQL – Überprüfen. Ironischerweise haben viele Leute auch SQL auf Lucene aufgesetzt. Ich denke, wir sollten uns auch für die Aufnahme in die No-NoSQL-Bewegung (wie Coté vorschlägt) einsetzen!
  2. Eine lose definierte Klasse von nicht-relationalen Datenspeichern, die mit der langen Geschichte der relationalen Datenbanken brechen: Prüfen. Und wieder einmal deckt Lucene ironischerweise beide Seiten des Ganges ab.
  3. Keine festen Schemata: Kennen Sie schon, haben Sie schon gemacht und das T-Shirt gekauft. Noch einmal: Lucene unterstützt auch feste Schemata.
  4. Vermeiden Sie Fugen: Prüfen. Denormalisierung macht Ihren Kopf frei. (zumindest in vielen Fällen). Mit etwas Arbeit können Sie Joins in Lucene durchführen.
  5. Horizontal skalieren: Ja und nein. Seien wir ehrlich, Lucene skaliert recht gut, aber Sie müssen schon ein wenig Arbeit investieren, um das zu erreichen. Treten Sie ein in Solr.

Da es sich bei Solr um „Lucene Best Practices“ handelt, die in einem einfach zu bedienenden Server verpackt sind, deckt es die Punkte 1-4 problemlos ab. Außerdem ist er horizontal skalierbar, sowohl was die Datengröße als auch das Abfragevolumen betrifft. Und mit der kürzlich erfolgten Ergänzung von Solr (auch bekannt als Solr Cloud) durch Apache ZooKeeper war die Skalierung noch nie so einfach. Am Ende des Tages erhalten Sie alle Vorteile von NoSQL (unter einem letztendlich konsistenten Modell) plus integrierte Funktionen wie Freitextsuche, Facettierung, Rechtschreibprüfung, Suche nach ähnlichen Objekten, Hervorhebung von Treffern und eine ganze Reihe anderer Funktionen, die sich in Tausenden von Installationen auf der ganzen Welt bewährt haben.

NoSQL sah noch nie so gut aus.

Share the knowledge

You Might Also Like

Warum Protokolle für KI-Agenten wichtig sind: Vom Kontext zum Handel

KI-Agenten werden immer mehr zum Bindegewebe moderner Unternehmenssysteme. Sie beantworten nicht nur...

Read More

Einführung von KI in Unternehmen im Jahr 2026: Trends, Lücken und strategische Erkenntnisse

Basierend auf der KI-Benchmark-Studie 2025 von Lucidworks mit 1.600+ KI-Führungskräften und einer...

Read More

Agentische KI und der Aufstieg von Protokollen: Wohin sich das Ökosystem als nächstes bewegt

m Jahr 2025 bewegen wir uns schnell auf ein neues Paradigma in...

Read More

Quick Links