8 Selbst gehostete leistungsstarke Suchmaschine 🔍 Engine-Software für Ihr Produkt

Es mag zunächst einschüchternd wirken, doch eine leistungsstarke Suchfunktion in Ihre Anwendung zu integrieren, ist weder kompliziert noch zeitaufwendig. Hier sind einige fundierte Empfehlungen!

Während viele Technologien in den letzten zwei bis drei Jahrzehnten beeindruckt haben, gehört die Suche zu den wenigen, die sich fest in unserem Alltag etabliert haben. Sie ist überall präsent – auf E-Commerce-Seiten, in Blogs, Wissensdatenbanken und vielen anderen Bereichen. Dies liegt nicht nur daran, dass ein Suchfeld und ein Symbol optisch ansprechend sind, sondern vor allem daran, dass sie eine wichtige Funktion erfüllen.

Was sollten Sie tun, wenn Sie ein Unternehmen sind, das nach einer geeigneten Suchlösung sucht oder mit Ihrer bestehenden unzufrieden ist?

Glücklicherweise müssen Sie keine astronomischen Lizenzgebühren bezahlen oder ein Team von 20 Entwicklern und Systemadministratoren beschäftigen. Ich stelle Ihnen heute einige Suchmaschinen vor, die sich schnell installieren und integrieren lassen, besonders für kleine Unternehmen mit Entwicklungsteams von ein bis zwei Personen.

MeiliSearch

MeiliSearch ist eine der herausragendsten und qualitativ hochwertigsten Suchmaschinen, die Sie finden können.

Was veranlasst mich also, MeiliSearch unter meinen Top-Empfehlungen zu nennen?

Hier sind die Gründe:

Open Source

Der gesamte Quellcode von MeiliSearch ist auf GitHub frei zugänglich. Das bedeutet, dass Entwickler jeden Teil des Codes selbst überprüfen können. Dies gibt Unternehmen Sicherheit hinsichtlich der Qualität und der zugrundeliegenden Absichten (z. B. keine Hintertüren oder Scanner im Programm). Außerdem können erfahrene Entwickler zur Weiterentwicklung der Technologie beitragen.

Hervorragende Benutzererfahrung (UX)

MeiliSearch verwendet keine komplexen Regeln (wie „a – b“ bedeutet a, aber nicht b). Geben Sie Ihre Suchanfrage einfach auf natürliche Weise ein, und die Ergebnisse werden nahtlos angezeigt. Die Engine ist sehr tolerant und entgegenkommend und liefert präzise Ergebnisse, selbst bei Tippfehlern oder der Verwendung von Synonymen. Sie unterstützt zudem mehrere Sprachen.

Großartige Entwicklererfahrung (DevEx)

Entwickler werden MeiliSearch lieben! Sie ist nicht nur anpassbar und skalierbar, sondern bietet auch Schnittstellen als REST-API! Die Dokumentation ist ebenfalls hervorragend und vollständig. Während HTTP-Aufrufe in jeder Sprache trivial sind, gibt es für eilige Entwickler Beispiele in fünf Sprachen (JavaScript, Ruby, Python, Golang und PHP).

Einfache Suchlösungen sollten leicht zu bedienen und einzurichten sein. MeiliSearch erfüllt all diese Kriterien! Wenn Sie starten möchten, können Sie die Engine mit einem Klick auf DigitalOcean in Betrieb nehmen.

Solr

Solr, ein Projekt von Apache, existiert bereits seit einigen Jahren. Es basiert auf der bekannten und äußerst zuverlässigen Lucene-Bibliothek, die auch die Grundlage für die beliebte Suchlösung ElasticSearch bildet. Dies bedeutet, dass Solr zu den leistungsstärksten, skalierbarsten, standardkonformen, funktionsreichen und vertrauenswürdigen Suchlösungen gehört.

Solr wird von Branchengrößen wie Disney, eBay, Netflix, Zappos und BestBuy eingesetzt. Das heißt aber nicht, dass Sie nicht auch eine kleinere, einfachere Installation nutzen können (z. B. Einzelmaschinen, ohne Skalierung, kein Failover – das ist manchmal durchaus in Ordnung), um die Stärken dieses Kraftpakets namens Solr zu nutzen.

Warum also Solr verwenden?

Hier sind einige gute Gründe:

Präzise und leistungsstark

Solr zählt zu den präzisesten, leistungsfähigsten und effizientesten Suchsystemen der Welt. Zudem ist es Open Source, was erklärt, warum sich so viele große Unternehmen dafür entschieden haben. Seine Fähigkeit, Dokumente zu verarbeiten und Suchanfragen zu beantworten, ist unübertroffen.

Einfache Installation und Wartung

Die Installation von Solr ist so einfach wie das Entpacken und Ausführen des Programms. Bei einfachen Einzelmaschinensystemen ist keine komplizierte Wartung erforderlich. Behalten Sie jedoch die RAM-Nutzung im Auge, da Suchlösungen im Allgemeinen und Java-basierte Technologien im Besonderen recht RAM-intensiv sein können (da sie versuchen, alles im RAM zu halten, um schnelle Lese-/Schreibvorgänge zu ermöglichen).

Administrationsmenü

Solr wird mit einem Admin-Panel ausgeliefert, das eine visuelle Überwachung und Konfiguration ermöglicht. Nach einer kurzen Schulung können sogar Personen ohne Entwicklerkenntnisse die wichtigsten Diagramme interpretieren. Nicht viele Suchlösungen auf dieser Liste bieten solche Funktionen.

API-gesteuert, standardkonform

Solr stellt eine Schnittstelle für Ergebnisse in einer API bereit, die mehrere Formate verarbeiten kann – JSON, CSV, XML und Binär. Es liefert Überwachungsdaten gemäß dem JMX-Standard, was für Java-Entwickler von großem Vorteil ist.

Es gäbe noch viel mehr über Solr zu sagen, aber der Versuch, alles abzudecken, würde uns die Zeit nehmen. 😂 Es reicht zu sagen, dass Solr eine erstklassige Lösung ist und Sie damit bei jeder Art von Daten nichts falsch machen können.

Elasticsearch

Elasticsearch war und ist wohl immer noch ein Pionier im Bereich der Freitextsuche. Wenn Sie heutzutage einen Programmierer oder Systemadministrator nach einer Suchmaschinenempfehlung fragen, wird Elasticsearch wahrscheinlich als einziger Name genannt. Sicher, ein nicht unerheblicher Teil wird auch Algolia empfehlen, aber wir haben bereits gesehen, wie sich das entwickelt. 🤪

Lassen Sie sich nicht vom Button „Kostenlose Testversion starten“ in der obigen Grafik täuschen. Während die Kerntechnologie von Elasticsearch selbst Open Source und kostenlos ist, versucht das Unternehmen, seine Bemühungen zu monetarisieren und sich an Unternehmen zu richten. Was Sie hier sehen, ist also eigentlich die Testversion für ihren Cloud-Service, der die Verwaltung von Elasticsearch vereinfacht, insbesondere wenn Cluster involviert sind.

Uff, so viele Details zu entwirren. Fassen wir zusammen: Elasticsearch ist Open Source und kostenlos, und jeder kann es problemlos einrichten und ohne Einschränkungen nutzen.

Und nun, wie erwartet, werfen wir einen Blick auf die Gründe für die Wahl von Elasticsearch:

  • Ausgereifte, bewährte Suchmaschine. Das bedeutet, dass Sie mit größerer Wahrscheinlichkeit Lösungen finden, wenn Sie auf „seltsame“ Fehler stoßen.
  • Erstklassige Fokussierung auf Clustering, Skalierbarkeit und asynchrone Schreibvorgänge.
  • Zugänglich über eine einfache REST-API (die alle anderen kopiert haben).
  • Dokumentorientiert, unterstützt aber bei Bedarf Schemas.
  • Unglaublich schnelle und präzise Ergebnisse. Konfigurierbare Suchgeschwindigkeit.
  • Hervorragende Dokumentation, sowohl in Bezug auf den Umfang als auch auf die Nützlichkeit.
  • Eine vollständige Such- und Analyse-Cloud-Plattform (der ELK-Stack), wenn Sie bereit sind, für die Bequemlichkeit zu bezahlen.

Der einzige Kritikpunkt, den ich an Elasticsearch habe, ist sein massiver RAM-Verbrauch. Als Berater ist es schwer genug, Kunden davon zu überzeugen, in einen Server zu investieren, der 20 US-Dollar pro Monat kostet, was leider bei weitem nicht den Anforderungen von Elasticsearch entspricht.

Wenn Sie Elasticsearch kennenlernen möchten, empfehle ich Ihnen diesen Udemy-Kurs.

Typesense

Typesense ist eine schlanke, unkomplizierte und dennoch leistungsstarke Suchmaschine. Wer Nützlichkeit und Einfachheit sucht, sollte sie unbedingt ausprobieren.

Einer der besten Aspekte von Typesense ist, dass Sie es direkt auf ihrer Website testen können. Das kann Frustration und Zeit sparen, wenn Sie alles einrichten und die API ausprobieren müssen . . . nur um festzustellen, dass eine oder mehrere Funktionen nicht Ihren Erwartungen entsprechen.

Dies soll nicht bedeuten, dass es Fehler in der Engine geben könnte; es bedeutet lediglich, dass die Arbeitsweise der Engine möglicherweise nicht Ihren Vorlieben entspricht oder mit Ihrer Geschäftsdynamik kollidiert. Tippfehler, Sonderzeichen, Synonyme und mehr . . . Sie können die Ergebnisse, die die Engine liefert, direkt auf der Homepage prüfen (dort wird eine Bücherdatenbank verwendet).

Wie Sie sehen können, befindet sich dieser Abschnitt direkt unter dem obigen. Ich habe im Suchfeld die Anfrage „tra“ eingegeben und sehe darunter passende Ergebnisse aus der Bücherdatenbank (sowie Metadaten – Gesamtergebnisse, aktuelle Seite usw.).

Typesense hat viel zu bieten, wenn es um die Auswahl einer Suchmaschine geht:

  • Die zugrunde liegende Technologie ist vollständig Open Source und einladend.
  • Einfache Konfiguration eines Hochverfügbarkeits-Setups (HA), falls Sie eines benötigen.
  • Tolerant gegenüber Tippfehlern und anderen Störungen in Suchanfragen.
  • Ein fortschrittliches Filtersystem für Benutzer, die eine detaillierte Kontrolle über die Suchergebnisse benötigen.
  • Einfache REST-API, obwohl die Dokumentation recht schwer zu finden ist!
  • Clients (SDKs) sind für einige der wichtigsten Sprachen verfügbar (JavaScript, Python, Ruby und PHP).

Wenn Sie es lästig finden, neue Server einzurichten, bietet Typesense auch eine Cloud-Lösung, bei der die Bereitstellung per Mausklick erfolgt. Die Abrechnung erfolgt stundenweise und Lese- sowie Schreibvorgänge werden nicht gemessen. Ehrlicherweise denke ich, dass dies für die meisten Unternehmen die bessere Option ist, vorausgesetzt, sie haben die Preise im Voraus kalkuliert und sichergestellt, dass es sich um einen Nettogewinn handelt.

Insgesamt ist Typesense eine sehr sinnvolle Wahl (kein Wortspiel beabsichtigt!), wenn Sie eine schlanke, präzise und zuverlässige Suchmaschine suchen.

Sonic

Sonic ist stolz darauf, eine Alternative zu Elasticsearch zu sein, die mit „wenigen MB RAM“ auskommt.

Wie ist das möglich?

Nun, die Java Virtual Machine (JVM) ist dafür bekannt, ressourcenhungrig zu sein (allein das Starten der JVM verbraucht in der Regel etwa 1 GB RAM). Kein Wunder also, dass etwas, das in der Programmiersprache Rust geschrieben ist (die Entwicklern volle Kontrolle und Speichersicherheit bietet), genauso schnell läuft und nur wenige MB RAM benötigt.

Bislang sind einige Unternehmen unter den Benutzern aufgeführt, obwohl ich sicher bin, dass es noch einige mehr gibt, die sich nicht die Mühe gemacht haben, ihre Namen hinzuzufügen. Ich weiß nicht mehr, wie oder wann genau, aber ich bin schon früher auf Sonic gestoßen. Damals war ich zwar froh, eine speichereffiziente Alternative zu sehen, dachte aber, es würde eine Weile dauern, bis versteckte Fehler stabilisiert und behoben sind. Nun, es sieht so aus, als wären sie mehr oder weniger angekommen. Die Zeit wird zeigen, wie beliebt Sonic wird.

Okay, lange Rede kurzer Sinn: Warum sollten Sie Sonic für Ihr Unternehmen/Projekt verwenden?

Hier sind einige Gründe:

  • Extrem geringer Speicherbedarf für eine Suchmaschine.
  • Bibliotheken sind für alle wichtigen Programmiersprachen verfügbar. Node, PHP und Rust sind das, was die Autoren selbst veröffentlicht haben, während andere von der Community erstellt wurden (freut euch, denn auch exotische Kandidaten wie Elixir und Nim werden bedient!).
  • Es werden mehrere Sprachen unterstützt (es waren zu viele zum Zählen, aber ich schätze, 40-50 Sprachen werden derzeit unterstützt).
  • Eine Überraschung! Sie können sogar neue Sprachen verwenden und die Engine wird funktionieren (😂😂), obwohl Sie einige erweiterte Funktionen wie Stoppwörter verlieren.
  • Sehr schnelle Engine. Wenn Sie sich die GitHub-Seite ansehen, werden Sie feststellen, dass die Aufnahme- und Suchzeiten in mehreren Fällen im Mikrosekundenbereich lagen! Dies war natürlich ein Einzelmaschinen-Test, da die Netzwerklatenz die Werte niemals so niedrig werden lässt.

Wenn Sie die Engine in Aktion erleben möchten, klicken Sie auf diesen Link (eines der Unternehmen, die sie verwenden) und spielen Sie mit dem Suchfeld, das Sie dort sehen:

Sonic hat bestimmte Einschränkungen als Suchmaschine. Die Entwickler haben diese auf ihrer GitHub-Seite hervorgehoben und offen diskutiert. Mein Rat wäre, diese Liste sorgfältig zu prüfen und sicherzustellen, dass Ihre Anwendungsfälle nicht im Widerspruch zu ihren Grenzen stehen. Allerdings hat alles seine Grenzen; es ist nur so, dass sie oft verborgen sind und wir es nicht bemerken, bis es zu spät ist. Daher halte ich Sonic für eine gute Wahl für eine Suchmaschine.

TNTSearch

Hier haben wir einen faszinierenden Eintrag auf dieser Liste. Das erste Interessante ist, dass diese produktionsreife Suchmaschine mit allen Funktionen in PHP geschrieben wurde!

Ja, von allen möglichen Sprachen ausgerechnet PHP. Und ich sage das nicht, weil ich PHP hasse, sondern weil es von Natur aus ein kurzlebiger Prozess ist.

Die zweite interessante Sache ist ihre Lizenz, zumindest zum Zeitpunkt des Schreibens. Eigentlich ist die Lizenz selbst MIT, es gibt also keine Probleme, aber die Autoren klassifizieren diese Software als PS4Ware; wenn Sie TNTSearch in der Produktion verwenden, sollten Sie ihnen ein PS4-Spiel schicken! 😂 Nun, es ist nicht obligatorisch, wie das „sollte“ andeutet, aber es ist unglaublich lustig. Ich hoffe auch, dass sie es auf eine PS5-Lizenz aktualisieren, auch wenn es noch zu früh ist.

Wie auch immer, da ich selbst einen starken PHP- + Laravel-Hintergrund habe, schätze ich die Bemühungen dieser Entwickler sehr. Ihre Website sagt nicht viel aus, scheint aber anzudeuten, dass sie Berater sind. Ich empfehle Ihnen daher dringend, sich an sie zu wenden, wenn Sie Projekte haben!

Gibt es also gute Gründe, TNTSearch in Ihren Projekten zu verwenden?

Ja, die gibt es:

  • In PHP programmiert, für PHP, von PHP. Das PHP-Ökosystem braucht mehr dedizierte, hochwertige Lösungen wie diese.
  • Wichtige Funktionen wie Fuzzy-Suche, Geo-Suche und Textklassifizierung.
  • Einfaches Ändern des Suchindexes, eine Flexibilität, die vielen Lösungen fehlt.
  • Stemming, BM25-Ranking und benutzerdefinierte Tokenisierung sorgen für hohe Genauigkeit.
  • Einfache Bereitstellung – genau wie jedes andere Composer-Paket!

Sie können die Leistung der Engine hier überprüfen und sich selbst davon überzeugen, wie schnell und genau sie ist. Ich möchte noch einmal den PHP-Aspekt hervorheben: Wenn Sie ein PHP-Projekt betreuen, sollten Sie so weit wie möglich innerhalb der PHP-Mauern bleiben (warum? Denken Sie an die Kosten für die Umschulung). Und für solche Fälle bietet TNTSearch ein Leistungsversprechen, das schwer abzulehnen ist!

Vespa

Vespa ist ein umfassendes und komplexes Angebot. Wie einige andere Einträge auf dieser Liste ist es zu umfangreich, um es in wenigen Worten zusammenzufassen. Aber ich muss es versuchen, also werde ich es tun. 🙂 Vespa ist eine Suchmaschine, ja, aber wenn Sie sie nur als gewöhnliche Suchmaschine verwenden, wird ihr Potenzial verschwendet.

Vespa wurde entwickelt, um riesige Datenmengen (Big Data) zu verarbeiten und bietet darüber hinaus Funktionen, die durch maschinelles Lernen gesteuert werden, sowie endlose Anpassungsmöglichkeiten.

Vespa positioniert sich als Konkurrent zu Elasticsearch und traditionellen Datenbanken und bietet einen guten Vergleich, wann welche Lösung zu verwenden ist.

Wie Sie sehen, ist Vespa umso sinnvoller, je näher Sie an maschinellem Lernen orientierten Prozessen arbeiten möchten. Als reine Suchmaschine für ein kleines oder mittelständisches Unternehmen hat sie meiner Meinung nach keine Vorteile gegenüber anderen Optionen.

Wenn Sie jedoch bedenken, dass Sie kontinuierlich große Datenmengen generieren und die Entscheidungsfindung durch KI/ML verbessern möchten (eine Beschreibung, die heutzutage auf viele SaaS-Unternehmen zutrifft), ist Vespa eine sehr sinnvolle Wahl:

  • Open Source: Keine seltsamen Lizenzen und keine bindenden Verträge. Und obendrein gibt es nichts zu bezahlen, obwohl ich immer wieder betone, dass Unternehmen eine regelmäßige Summe für die Projekte zahlen sollten, die sie am meisten nutzen (selbst 50 $/Monat helfen ihnen sehr).
  • Echtzeit: Vespa ist wirklich in Echtzeit. Es kann nicht nur Daten aufnehmen, verarbeiten und nach eingehenden Daten suchen, sondern auch seine Konfiguration kann im laufenden Betrieb geändert werden.
  • Skalierbar und tolerant: Vespa ist einfach zu skalieren. Es reagiert auch sehr gut auf das plötzliche Ausfallen von Knoten und bietet eine hohe Zuverlässigkeit.
  • Ranking und Empfehlungen: Such-, Ranking- und Vespa-Empfehlungen können mit strukturierten Abfragen kombiniert werden, um wirklich präzise Ergebnisse zu liefern.
  • Einfache KI/ML: Vespa wird mit hochwertigen, vortrainierten ML-Modellen geliefert. Sie müssen nicht 20 Data Scientists einstellen, um Ihre Daten zu bereinigen und zu verwenden.
  • Benutzerdefinierte Plugins: Es gibt eine vollständige Reihe von APIs, die Entwicklern helfen, benutzerdefinierte Java-Plugins zu erstellen, falls sie die Funktionsweise der Engine ändern müssen.

Vespa ist zweifellos riesig und daher klar für Teams geeignet, die sich über die Startphase hinaus befinden – sei es die Teamgröße, die technischen Fähigkeiten, das Infrastrukturbudget, das tägliche Datenvolumen oder etwas anderes. Für dieses Segment wird Vespa eine sehr gute Wahl sein und ist daher sehr empfehlenswert.

Ambar

Bei manchen Unternehmen werden Suchdaten nicht sauber aufbereitet und als JSON-Dokumente gespeichert, sondern sind eher ein unübersichtliches Durcheinander – eine chaotische Ansammlung aller möglichen Dokumente wie Word-, PDF-, HTML-Dateien usw. Wenn Sie dazugehören und dachten, es gäbe keine Hoffnung, dann heißen Sie Ambar willkommen!

Das Beste an Ambar ist die große Vielfalt an Dateien, mit denen es arbeiten kann:

  • MS Office-Dateiformate (.docx, .xlsx usw.), einschließlich PowerPoint, Visio und Publisher!
  • OpenOffice-Dateiformate
  • PDF-Dokumente mit automatischer OCR zum Extrahieren von Informationen.
  • Bilder
  • E-Mail-Archivformate wie PST (Hallo, Outlook-Nutzer!)
  • E-Mail-Nachrichten mit Anhängen

Die Vorteile enden hier noch nicht. Ambar kann mit großen Dateien (über 30 MB), ZIP-Archiven und Multithreading arbeiten, um die CPU voll auszunutzen und schnellere Ergebnisse zu erzielen. Wenn Sie also jahrelang Dokumente auf einer Festplatte auf einem vergessenen Server liegen haben, ist es an der Zeit, sie wieder hervorzukramen und Ambar damit zu füttern!

Fazit

Die Suche 🔎 ist mächtig, die Suche ist magisch und die Suche ist überall!

Sie könnte sogar schwarze Magie sein, aber heutzutage gibt es keinen Grund, warum nicht jeder (natürlich mit etwas Unterstützung von Entwicklern) davon profitieren sollte. Von Unternehmen über Einzelpersonen bis hin zu Regierungen bieten die Suchmaschinen in dieser Liste einen nahezu mühelosen Zugang mit exponentiellen Vorteilen und Auswirkungen.

Besorgen Sie sich einen Cloud-Server und installieren Sie die oben genannte Suchsoftware, um sie selbst auszuprobieren.