Apache Solr ist ein Open Source-freier, plattformunabhängiger und leistungsfähiger Suchserver, der auf dem Apache Lucene-Projekt basiert und XML / HTTP- und JSON-APIs verwendet. Das Projekt befindet sich derzeit in der Apache Software Foundation.
Funktionen auf einen Blick
Zu den wichtigsten Funktionen gehören Hit-Hervorhebung, Facettensuche, Zwischenspeicherung, Replikation, eine webbasierte Verwaltungsschnittstelle, erweiterte Volltextsuchfunktionen, die für Webverkehr mit hohem Datenaufkommen optimiert sind, sowie standardbasierte offene Schnittstellen wie HTTP , XML und JSON.
Darüber hinaus enthält es umfassende HTML-Verwaltungsschnittstellen, Serverstatistiken, automatische Indexreplikation, automatische Wiederherstellung und Failover, nahezu Echtzeit-Indexierung, anpassbare und flexible XML-Konfiguration und eine erweiterbare Plugin-Architektur.
Das Projekt ist schemalos und ermöglicht dem Benutzer einen schnellen Einstieg in Apache Solr. Zu dieser Zeit werden sowohl Schema- als auch schemalose Modi unterstützt, aber letzteres wird zu einer starken Produktionsumgebung führen.
Verschiedene Typen werden von Solr unterstützt, einschließlich Feldtypen, mit denen Sie Lucene-Analysatoren mischen und anpassen können, ohne Code zu schreiben. Darüber hinaus unterstützt das Projekt dynamische Felder, die während des Betriebs aktiviert werden können.
Neben anderen interessanten Funktionen können wir die Kopierfeldfunktionalität erwähnen, die es Benutzern ermöglicht, den gleichen Inhalt mit verschiedenen Methoden zu analysieren, Unterstützung für explizite Typen, um das Erraten von Feldtypen zu vermeiden, benutzerdefinierte Konfigurationen basierend auf externen Dateien sowie zahlreiche zusätzliche Textanalysekomponenten.
Unter der Haube und Verfügbarkeit
Wenn wir uns Apache Solr anschauen, stellen wir fest, dass die Anwendung vollständig in der Programmiersprache Java geschrieben wurde und 32-Bit- und 64-Bit-Distributionen von Linux sowie Microsoft Windows und Mac OS unterstützt X Betriebssysteme.
Zu Ihrer Bequemlichkeit ist es sowohl als Binär- als auch als Quellarchiv erhältlich, so dass Sie Apache Solr in kürzester Zeit und ohne großen Aufwand verwenden können.
Was ist? new in dieser Version:
- Overseer kann niemals die letzten Nachrichten verarbeiten.
- Kern umbenennen im Solr Standalone-Modus wird nicht beibehalten.
- Das Parsen von rq-Parametern von QueryComponent berücksichtigt den defType-Parameter nicht mehr.
- Repariere NPE in SolrQueryParser, wenn sich die Abfragebegriffe innerhalb einer Filterklausel auf nichts reduzieren.
Was ist neu in der Version:
- Zusätzlich zu vielen anderen Verbesserungen im Sicherheitsframework enthält Solr jetzt ein AuthenticationPlugin, das HTTP Basic Auth implementiert und Anmeldeinformationen sicher in ZooKeeper speichert. Dies ist ein einfacher Weg, um einen Benutzernamen und ein Passwort für jeden zu erhalten, der auf den Admin-Bildschirm oder die APIs von Solr zugreift.
- Im eingebauten AuthorizationPlugin, das eine feinkörnige Kontrolle über die Implementierung von ACLs für verschiedene Ressourcen mit Permission-Regeln bietet, die in ZooKeeper gespeichert sind.
- Die JSON-Facet-API kann jetzt die Domäne für Facettenbefehle ändern, indem sie im Wesentlichen einen Block-Join durchführt und von Eltern zu Kindern oder Kindern zu Eltern wechselt, bevor sie die Facettendaten berechnet.
- Wesentliche Verbesserungen der Leistung des neuen Facet-Moduls / JSON-Facetten-API.
- Query- und Range-Facets unter Pivot-Facetten Genau wie die JSON Facet-API können Pivot-Facets auch andere Facettentypen wie Bereichs- und Abfragefacetten verschachteln.
- Diese Abfrage Parser Optionen. Der MoreLikeThis QParser unterstützt nun alle vom MLT Handler bereitgestellten Optionen. Der Abfrageparser ist vielseitiger als der Handler, da er sowohl im Cloud-Modus als auch überall dort funktioniert, wo eine normale Abfrage angegeben werden kann.
- Schema-API-Unterstützung in SolrJ wurde hinzugefügt
- Scoring-Modus für Query-Time-Join und Block-Join hinzugefügt.
- Smile-Antwortformat hinzugefügt
Was ist neu in Version 4.10.3:
- Solr 4.10.2 enthält 10 Fehlerbehebungen sowie Lucene 4.10.2 und seine 2 Fehlerbehebungen.
Was ist neu in Version 4.6.1:
- Apache Tika 1.4
- Carrot2 3.8.0
- Velocity 1.7 und Velocity Tools 2.0
- Apache UIMA 2.3.1
- Apache ZooKeeper 3.4.5
- Fehlerbehebungen:
- SOLR-5408: CollapsingQParserPlugin schneidet falsch ab, wenn mehrere Sortierkriterien verwendet werden
- (Brandon Chapman, Joel Bernstein)
- SOLR-5416: CollapsingQParserPlugin bricht Tag / Facettierung ausschließen
- (David Boychuck, Joel Bernstein)
- SOLR-5442: Der Python-Client kann die Proxy-Antwort nicht analysieren, wenn er von Tomcat bedient wird.
- (Patrick Hunt, Gregory Chanan, Vamsee Yarlagadda, Romain Rigaux, Mark Miller)
- SOLR-5445: Proxied-Antworten sollten alle Header statt des ersten für jeden Schlüssel propagieren.
- (Patrick Hunt, Mark Miller)
- SOLR-5479: Die Wiederholungslogik für SolrCmdDistributor stoppt, wenn in 1 Sekunde kein Leader für die Anforderung gefunden wird.
- (Mark Miller)
- SOLR-5532: Die SolrJ Content-Type-Validierung ist für einige Webcontainer / Proxies zu streng.
- (Jakob Furrer, hossman, Shawn Heisey, Uwe Schindler, Mark Miller)
- SOLR-5547: Beim Erstellen eines Sammlungsalias mit SolrJs CollectionAdminRequest werden der Aliasname und die Sammlungen auf den gleichen Wert umgestellt.
- (Aaron Schram, Mark Miller)
- SOLR-5577: Wahrscheinlich wird der Ablauf von ZooKeeper die Updates nicht um einen bestimmten Betrag verzögern, sondern die Updates nach einer bestimmten Zeit abschneiden.
- (Mark Miller, Christine Poerschke, Ramkumar Aiyengar)
- SOLR-5580: NPE beim Erstellen eines Kerns mit explizitem shard und coreNodeName.
- (YouPeng Yang, Mark Miller)
- SOLR-5552: Der Recovery-Prozess des Anführers kann den falschen Anführer auswählen, wenn alle Replikate für einen Shard außer Betrieb sind und versuchen, sich zu erholen sowie Updates zu verlieren, die wiederhergestellt werden sollten.
- (Timothy Potter, Mark Miller)
- SOLR-5569 Ein Replikat sollte nicht versuchen, von einem Leader wiederherzustellen, bis es veröffentlicht hat, dass es ACTIVE ist.
- (Mark Miller)
- SOLR-5568 Ein SolrCore kann sich nicht entscheiden, der Anführer zu sein, nur weil der Cluster-Zustand sagt, dass keine anderen SolrCores aktiv sind.
- (Mark Miller)
- SOLR-5496: Wir sollten einen http-Verbindungsmanager für nicht-suchende HttpClients freigeben und sicherstellen, dass alle HTTP-Verbindungsmanager heruntergefahren werden.
- (Mark Miller)
- SOLR-5583: ConcurrentUpdateSolrServer # blockUntilFinished kann ewig warten, wenn der Executor-Dienst heruntergefahren wird.
- (Mark Miller)
- SOLR-5586: Alle ZkCmdExecutor's sollten mit dem ZK-Client-Timeout initialisiert werden.
- (Mark Miller)
- SOLR-5587: ElectionContext-Implementierungen sollten ZkCmdExecutor # secureExists verwenden, um sicherzustellen, dass ihre Wahlpfade ordnungsgemäß erstellt werden.
- (Mark Miller)
- SOLR-5540: HdfsLockFactory sollte bei Bedarf das übergeordnete Sperrverzeichnis explizit erstellen.
- (Mark Miller)
- SOLR-4709: Der Core-Reload nach der Replikation, wenn Konfigurationsdateien geändert wurden, kann aufgrund einer Racebedingung fehlschlagen. (Mark Miller, Hossman))
- SOLR-5503: Wiederholen Sie 'Forward to Leader' erneut, um weniger aggressiv zu werden - statt über IOException und Status 500, ConnectException.
- (Mark Miller)
- SOLR-5588: PeerSync zählt nicht alle Verbindungsfehler als Erfolg.
- (Mark Miller)
- SOLR-5564: hl.maxAlternateFieldLength sollte auf das ursprüngliche Feld angewendet werden, wenn ein Fallback versucht wird
- (janhoy)
- SOLR-5608: Lasse es nicht zu, dass ein geschlossener SolrCore den Status in ZooKeeper veröffentlicht.
- (Mark Miller, Shawn Heisey)
- SOLR-5615: Deadlock beim Versuch, sich nach Ablauf einer ZK-Sitzung wiederherzustellen.
- (Ramkumar Aiyengar, Mark Miller)
- SOLR-5543: Core-Swaps führten zu doppelten Kerneinträgen in solr.xml, wenn die persistent solr.xml verwendet wurde.
- (Bill Bell, Alan Woodward)
- SOLR-5618: Korrigiert falsche Cache-Treffer in queryResultCache, wenn hashCodes gleich sind und doppelte Filterabfragen in einer der Anfragen existieren
- (hossman)
- SOLR-4260: ConcurrentUpdateSolrServer # blockUntilFinished kann zurückkehren, bevor alle zuvor hinzugefügten Aktualisierungen beendet wurden. Dies könnte dazu führen, dass verteilte Updates für Replikate verloren gehen.
- (Markus Jelsma, Timothy Potter, Joel Bernstein, Mark Miller)
- SOLR-5645: Ein SolrCore Reload über den CoreContainer wird versuchen, sich mit dem neuen SolrCore erneut in zk zu registrieren.
- (Mark Miller)
- SOLR-5636: SolrRequestParsers führt bei jeder Anfrage einige XPath-Lookups durch, die Probleme mit dem gemeinsamen Zugriff verursachen können.
- (Mark Miller)
- SOLR-5658: commitWithin und overwrite werden nicht an Repliken verteilt, nachdem SolrCloud javabin zum Verteilen von Updates verwendet hat.
- (Mark Miller, Varun Thacker, Elodie Sannier, Shalin)
- Optimierungen:
- SOLR-5576: Verbessern Sie die Parallelität bei der Registrierung und warten Sie darauf, dass alle SolrCore einen DOWN-Status registrieren.
- (Christine Poerschke über Mark Miller)
Was ist neu in Version 4.6.0:
- Viele Verbesserungen und Verbesserungen für die Optionen zum Teilen von Splitter
- Neue AnalysingInfixLookupFactory zur Nutzung von AnalysingInfixSuggester
- Neues CollapsingQParserPlugin für Hochleistungskomprimierung in Feldern mit hoher Kardinalität
- Neue SolrJ-APIs für das Sammlungsmanagement
- Neue DocBasedVersionConstraintsProcessorFactory bietet Unterstützung für benutzerkonfigurierte doczentrische Versionsregeln
- Neues Standard-Indexformat: Lucene46Codec
- Neuer EnumField-Typ
Was ist neu in Version 4.5.1:
- Solr 4.5.1 enthält eine Handvoll Fehlerbehebungen, darunter zwei, die als sehr schwerwiegend angesehen werden.
Was ist neu in Version 4.5.0:
- Benutzerdefinierte Shard-Unterstützung, verbessertes Routing und Multi-Thread-Facettierung.
Was ist neu in Version 4.2.0:
- Eine readseitige REST-API für das Schema. Wolltest du schon immer das Schema über http untersuchen? Jetzt kannst du. Sieht so aus, als würde die Schreibseite als nächstes kommen.
- DocValues wurden in Solr integriert. DocValues können viel schneller geladen werden als der Feldcache und können auch verschiedene Komprimierungsalgorithmen sowie im RAM oder Disk-Darstellungen verwenden. Facettierungs-, Sortier- und Funktionsabfragen profitieren davon. Wie sieht es mit der OS Handhabung Facettieren und Sortieren von Caches aus Haufen? Keine 60 Gigabyte Tunes mehr? Wie wäre es mit einer neuen DocValues-Facettenmethode für jedes Segment? Verbesserte numerische Facettierung? Schatz.
- Sammlung Aliasing. Haben Sie zeitbasierte Daten? Möchten Sie in einer temporären Sammlung neu indizieren und diese dann in die Produktion umwandeln? Erledigt. Bleibt dran für Shard Aliasing.
- Sammlungs-API-Antworten Das Collections-API war in Version 4.0 immer noch sehr neu, und obwohl es in 4.1 etwas verbessert wurde, waren Antworten zwar erforderlich, aber der Cut-off-Effekt fehlte. Zu Beginn haben wir uns entschieden, das Collection-API super fehlertolerant zu machen, was die Reaktion schwieriger machte. Niemand möchte Logdateien durchsuchen, um zu sehen, wie sich die Dinge entwickeln. Geschehen in 4.2.
- Interagieren Sie mit einer beliebigen Sammlung auf einem beliebigen Knoten. Bis 4.2 konnten Sie nur mit einem Knoten in Ihrem Cluster interagieren, wenn dieser mindestens eine Replik der Sammlung enthielt, die Sie abfragen / aktualisieren wollten. Nicht länger - Frage irgendeinen Knoten ab, ob er ein Stück deiner beabsichtigten Sammlung hat oder nicht und erhalte eine proxied Antwort.
- Erlauben Sie benutzerdefinierte Shard-Namen, damit neue Host-Adressen die alten Shards übernehmen können. Ohne elastische Pads auf Amazon arbeiten? Das ist für dich.
- Lucene 4.2 Optimierungen wie komprimierte Termvektoren.
Was ist neu in Version 3.3.0:
- Gruppierung / Feldzusammenführung
- Eine neue, automatenbasierte Suggest / Autocomplete-Implementierung, die den RAM-Verbrauch um eine Größenordnung verringert.
- KStemFilterFactory, eine optimierte Implementierung eines weniger aggressiven Stemmers für Englisch.
- Solr verwendet standardmäßig eine neue, effizientere Zusammenführungsrichtlinie (TieredMergePolicy). Weitere Informationen finden Sie unter http://s.apache.org/merging.
- Wichtige Bugfixes, einschließlich extrem hoher RAM-Auslastung bei der Rechtschreibprüfung.
- Bugfixes und Verbesserungen von Apache Lucene 3.3
Was ist neu in Version 3.2.0:
- Möglichkeit, bei Verwendung des JSON-Aktualisierungsformats Überschreibung und Festschreibung als Anforderungsparameter anzugeben
- TermQParserPlugin, nützlich beim Generieren von Filterabfragen aus Begriffen, die von der Feldfacettierung oder der Begriffskomponente zurückgegeben wurden.
- DebugComponent unterstützt jetzt die Verwendung einer NamedList zum Modellieren von Erklärungsobjekten in ihren Antworten anstelle von Explanation.toString
- Verbesserungen der Integrationen von UIMA und Carrot2
- Bugfixes und Verbesserungen von Apache Lucene 3.2
Was ist neu in Version 3.2.0:
- JSON-Update-Verbesserungen wurden vorgenommen.
- Das Suchergebnis-Clustering und die UIMA-Integration wurden verbessert.
- Bugs wurden behoben.
Kommentare nicht gefunden