SHI GmbH Augsburg - Ihr Starker Partner für Search & Big Data, Apache Solr, IT Commerce Lösungen

27-03-2017 - 28-03-2017
Apache Solr Unleashed
29-03-2017 - 30-03-2017
Apache Solr Under the Hood
04-04-2017 - 05-04-2017
Apache SolrCloud
SHI - Fast Forward to Success
SHI - Fast Forward to Success
Geschwindigkeit zählt. Bei den Kosten und bei den Erfolgsaussichten.
Bei uns sorgen professionelles Projektmanagement und modulare Entwicklung
für Ihren raschen und effizienten Software-Projekterfolg.
SHI - Support und Service
SHI - Support und Service
Wir sind Dienstleister aus Leidenschaft und verstehen unsere Kunden.
Nach dem Projekt ist vor dem Projekt und individuelle, persönliche
Betreuung stehen bei uns ganz weit oben.
SHI - Individuelle Anwendungen aus Software-Bausteinen
SHI - Individuelle Anwendungen aus Software-Bausteinen
Bei uns bekommen Sie weder Software von der Stange, noch unerprobte Eigenentwicklungen. Wir setzen auf bewährte Open-Source-Technologien und setzen Ihre individuelle Anwendung
aus passenden
Bausteinen zusammen.
SHI - Beratung  Entwicklung  Consulting
SHI - Beratung Entwicklung Consulting
Wir beraten unterstützen Sie mit Schulungen, Trainings und Consulting. Von der Strategieberatung bis zur Anwendungsentwicklung helfen wir Ihnen bei der Optimierung Ihrer
Geschäftsprozesse.

Universal AJAX Live Search

Veröffentlicht am 13.12.2016 von Patricia Kaufmann und Bianca Kaustrup

Es ist wieder soweit, Weihnachten steht vor der Tür.
Und wieder flattern täglich all die Wunschzettel der Kinder ins Haus - so viele verschiedene Wünsche, so viele verschiedene Vorlieben.

Hatte die kleine Sophie nicht erst letztes Jahr die Puppe gewollt? - Heuer ist es schon der Schminkkasten!

Und Florian wollte doch erst vor zwei Jahren das Cowboykostüm - heute ist es bereits eine Drohne.

Und Elisa? - Von ihr kam dieses Jahr gar kein Wunschzettel. Aber ich weiß was ihr gefallen könnte, denn ich habe Sie beobachtet. Elisa hat sich erst letzten Monat zwei DVDs gekauft - von diesem berühmten Schauspieler Tim Croise. Und es ist gerade ein neuer Film von ihm erschienen - den werde ich ihr einfach schenken.

Und dann ist da noch Dennis. Er hat Outdoorschuhe, eine Jacke und Wanderkarten auf seinen Wunschzettel geschrieben. Aber weil er besonders brav war, bringe ich ihm noch den Rucksack mit, über den sich Melanie und Björn letztes Jahr auch so gefreut haben. 

Aber was soll ich mit Hermann anstellen? Er hat mir schon lange keine Wunschzettel mehr geschickt - nun er ist auch kein kleiner Junge mehr. Aber ich weiß noch, dass er sich immer für Search und Big Data interessiert hat, da wird ihm das Buch „Einführung in Apache Solr“ ganz besonders gut gefallen.
Ein perfektes Geschenk für Hermann!

Wie ich das anstelle?

Klar, meine vielen Wichtel sind eine große Hilfe, aber ohne moderne technische Hilfsmittel könnten wir das niemals schaffen! Bei 7 Milliarden kleinen und großen Kindern mit voll beschriebenen Wunschzetteln braucht es schon mehr als einen Weihnachtsmann und seine Wichtel, um nichts durcheinander zu bringen. Und die ganzen Informationen müssen in kürzester Zeit ausgewertet werden! Aber da wir alle ehrenamtlich arbeiten und Kekse und Milch außerhalb des Nordpols nicht als Währungsmittel anerkannt werden, musste eine kostenlose Technologie her – Apache Solr nennt sich das Ganze.

Ich bin vielleicht ein alter Mann mit weißem Bart - aber ich bin nicht verstaubt und altmodisch!

Mit diesem Solr ist es kein Problem, die ganzen Wünsche zu speichern, egal in welcher Sprache sie geschrieben sind. Alle Briefe kommen in unserem Postfach in Apache NiFi an und werden von dort aus automatisch an die verschiedenen Wunsch-Cluster geschickt. Auch die „Artig und Unartig“-Liste habe ich mittlerweile in einem Solr-Knoten untergebracht. Als Dennis von „artig“ zu „ganz besonders brav“ aufgestiegen ist, konnte ich das ohne merkbare Zeitverzögerung in meinem System sehen!

Und wenn ein Kind mir mal keinen Wunschzettel schreibt, so wie Hermann, bekomme ich Vorschläge – meine Wichtel nennen das immer Recommendations – anhand der Wunschzettel vergangener Weihnachten. Damit ist es jetzt sogar möglich, prädiktiv zu analysieren, was die Kinder sich nächstes Jahr so alles wünschen werden und ich kann schon mal Vorbereitungen treffen.

Und ja, ich gebe es zu. Die kleine Elisa bekommt nur deshalb den richtigen Film, weil mir so ein ausgefuchster Spellchecker gesagt hat, dass der Schauspieler nicht Tim Croise, sondern Tom Cruise heißt.

Außerdem haben wir jetzt noch einen sogenannten ZooKeeper in unserem Team, der dafür sorgt, dass bei der Verteilung der Wünsche auf die Wunsch-Cluster nichts schiefgeht. Ich wünschte manchmal, dass dieser Zookeeper auch die Verteilung der Geschenke übernehmen könnte, aber weil ich dann gar nichts mehr zu tun hätte, mache ich das dann doch lieber persönlich. 

Und so bekommt jedes "meiner" Kinder nicht nur irgendein Geschenk, sondern genau das, was es sich wünscht oder wünschen wird.

Euer Big Data Clause

Veröffentlicht am 14.11.2016 von Patricia Kaufmann

Seit dem 08. November ist Solr in der Version 6.3 erhältlich. Neben diversen Fehlerkorrekturen und Optimierungen haben auch einige neue Features ihren Weg in die Suchmaschine gefunden. Nach initialen Tests zu den neuen Funktionalitäten soll im Folgenden Feedback zu


•    dem neuen ResponseWriter für xlsx-Formate
•    der neuen Facetten-Funktionalität facet.exists=true und
•    der erweiterten SQL-Query-Syntax


gegeben werden.

Veröffentlicht am 21.09.2016 von Markus Klose

Wie bekommt man in einem Big-Data Szenario seine Daten in Apache Solr? Eine gute Frage, denn Apache Solr bringt zwar im Standardumfang die Möglichkeit mit, Daten aus dem Dateisystem zu indexieren, aber Apache Solr kann beispielsweise kein HDFS crawlen. Verschärft wird das Problem noch durch die Tatsache, dass in Big Data Szenarien Daten oft unstrukturiert und/oder in diversen Data Warehouse Lösungen, wie beispielsweise Apache HIVE, gespeichert werden.

Veröffentlicht am 12.09.16 von Dr. Johannes Peter

Erstmalig in der Geschichte von Apache NiFi ist ein Major Release veröffentlicht worden, sodass ab sofort die Version 1.0.0 zum Download bereitgestellt wird. Im Rahmen erster Tests der neuen Version fallen sofort die Änderungen an der Nutzeroberfläche auf, die nun sehr viel eleganter gestaltet ist.

Veröffentlicht am 09.09.2016 von Markus Klose

Die Qualität einer Suche hängt von der Trefferliste ab. Selbstverständlich erwartet der Anwender das „richtige“ Dokument an erster Stelle. Aber auch die Informationen, die in der Trefferliste je Dokument angeboten werden, sind wichtig. Bisher musste man alle Informationen, die man in der Trefferliste anzeigen möchte, auch im Index ablegen. Dies führt zu einem größeren Index, schlechterer Performance und zu einer komplexeren Indexierungs-Strategie. Bestimmte Informationen, wie der „Preis eines Dokumentes“ oder das „Alter einer Person“, ändern sich regelmäßig und daher muss der Index immer wieder aktualisiert werden.


Mit den DocTransformern wird nun eine Möglichkeit geboten die von Apache Solr generierte Trefferliste zu beeinflussen, d.h. Felder bzw. Inhalte können generiert werden, die es nicht im Index gibt. Felder können manipuliert werden bevor sie an den Client geschickt werden. Felder können aber auch gelöscht werden. Mit DocTransformern kann der Index also kleiner  werden, was sich wiederrum positiv auf die Performance auswirkt, und unter Umständen wird auch die Indexierung vereinfacht und beschleunigt.

Veröffentlicht am 09.09.2016 von Markus Klose

Vor circa einer Woche, am 25. August 2016, wurde die neue Version 6.2 von Apache Solr veröffentlicht. Enthalten ist wie immer eine Reihe von Verbesserungen, Bugfixes und neuen Features.


Eine der Neuerungen im neuen Release ist der Upgrade der Apache Tika Version von 1.7 nach 1.13. Somit unterstützt Apache Solr nun noch mehr Datei-Formate bei der Indexierung.

Detaillierte Informationen zu dem Versions-Upgrade findet man im JIRA Ticket SOLR-8981.

Veröffentlicht am 30.08.2016 von Markus Klose

Apache NiFi MiNiFi. Hierbei handelt es sich nicht um einen Tippfehler, sondern um den Namen eines Unterprojektes von „Apache NiFi“, welches am 10.06.2016 in der Version 0.0.1 veröffentlicht worden ist.  Mit Apache NiFi MiNiFi werden sogenannte Agenten für die Daten-Extraktion möglich. Agenten sind leichtgewichtige Programme mit der Aufgabe Daten aus den unterschiedlichsten Quellen zu lesen und weiterzuleiten.

Veröffentlicht am 02.08.2016 von Dr. Johannes Peter

Am 12. Juli 2016 wurde die Version 0.7.0 von Apache NiFi veröffentlicht, das auf Grund seiner einfachen Bedienbarkeit, seiner Performanz und seiner Datensicherheit zunehmend im Big Data Kontext und darüber hinaus Verwendung findet. Apache NiFi ermöglicht es, Workflows zu generieren, um Daten zu extrahieren, zu transformieren und weiterzuschicken. Darüber hinaus eignet sich NiFi, zum Monitoren und Überwachen von Prozessen. 

Veröffentlicht am 25.07.16 von Patricia Kaufmann

Ausfallsicherheit ist eines der wichtigsten Kriterien für die Wahl einer SolrCloud-Lösung statt der Nutzung der Solr-Single-Core-Variante. Durch das Hinzufügen von Replikas lassen sich die Indizes der einzelnen Shards einer Collection duplizieren und sichern damit die Daten für den Fall, dass ein Solr-Knoten ausfällt.


Doch was, wenn gezielt ein bestimmter Zustand der SolrCloud gesichert werden soll, sodass er zu einem späteren Zeitpunkt wieder eingespielt werden kann? Bislang war der API-Aufruf zum Erstellen und Einspielen von Backups nur für einzelne Cores möglich, also auf den Single-Core-Modus von Solr zugeschnitten. Nutzer der SolrCloud mussten sich mit dem händischen Kopieren der Indizes behelfen oder jeden zu einer Collection gehörenden Core einzeln sichern – möglich, aber unpraktisch.

 

Veröffentlicht am 29.06.16 von Patricia Kaufmann


TolerantUpdateProcessor

Seit Mitte Juni steht Solr in der Version 6.1.0 zum Download bereit. Da es sich nur um ein Minor Release handelt, halten sich die Neuerungen in Grenzen. Ein zusätzliches Feature verdient es dennoch, erwähnt zu werden – die TolerantUpdateProcessorFactory. Wie der Name schon verrät handelt es sich hierbei um einen neuen Updateprozessor, der sich ab sofort mit in die diversen Update-Ketten einreihen lassen kann. 


Der neue Updateprozessor dient weniger selbst der Veränderung eingehender Daten, als dass er vielmehr die Fehlertoleranzgrenzen anderer Prozessoren in der Kette festlegt. Damit ist es beispielsweise möglich, uninteressante Datensätze schlichtweg zu ignorieren statt komplizierte Bedingungen zu formulieren.


Mit einem zusätzlichen Parameter „maxErrors“ kann außerdem festgelegt werden, wie tolerant der Prozessor tatsächlich sein soll. Ein Angeben von „maxErrors=10“ bricht die Indexierung beim 11. Fehler ab und sendet die entsprechende Meldung.

Veröffentlicht am 18.05.2016 von Patricia Kaufmann
Wie bereits in vorangegangenen Blogbeiträgen vorgestellt, bietet Solr 6 einige neue Features. Außer der neuen SQL-Suchsyntax, dem neuen Scoring-Algorithmus und der Möglichkeit zur Graphentraversierung wurde auch die Streaming API um einige Befehle erweitert. Hinzugekommen sind unter anderem verteilte Joins und ein Ausdruck update zum Aktualisieren einer Collection in der SolrCloud.

Veröffentlicht am 06.05.16 von Markus Klose

Das Release 6.0 von Apache Solr ist nun seit kurzem veröffentlicht. Mit dieser Version gibt es einige neue Funktionalitäten, aber auch einige teils gravierende Änderungen bestehender Funktionalitäten. Eine dieser Änderungen betrifft das Scoring. In Solr 6.0 ist der Default des Scoring-Mechanismus von der TF-IDF-Berechnung auf BM25 umgestellt worden.
Im Januar hat meine Kollegin Patricia Kaufmann bereits von diesen Änderungen berichtet. In diesem Blog möchte ich tiefer einsteigen und aufzeigen was genau sich ändert und wie man das Scoring bereits heute ändern kann.

Veröffentlicht am 09.05.2016 von Daniel Wrigley

In diesen Tagen wird ein neues Minor-Release von Lucidworks Fusion veröffentlicht. Dieses bietet neben allgemeinen Verbesserungen natürlich auch einige Ansätze, die wiederspiegeln was aktuelle Trends im Bereich Search und Big Data im Allgemeinen sind: Datenmodellierung, Indexierung von zeitbasierten Daten (Log-Events, von Usern generierte Daten, Tweets etc.) und bessere Integration von Tools im Bereich Machine Learning. Die nachfolgende Zusammenfassung gibt einen Überblick über die Highlights des neuen Releases.

Warum sind Wildcard-Suchen und Stemmer teilweise inkompatibel?
 

Veröffentlicht am 07.04.2016 von Dr. Johannes Peter

Mittels des Einsatzes von Wildcards können Suchen erweitert werden. Apache Solr unterstützt verschiedene Varianten von Wildcards. Beispielsweise kann mit variablen Buchstaben innerhalb eines Worts gesucht werden. Eine Suche nach w?ld führt beispielsweise zu Treffern bei Dokumenten, in denen die Begriffe wild oder wald vorkommen.

Ein weiterer typischer Einsatz von Wildcards ist die Verwendung von Trunkierung. Dabei wird nach Begriffen z. B. mit einem bestimmten Präfix gesucht (Solr unterstützt jedoch auch die Suche nach Suffixen oder Suchen mit Platzhaltern zwischen Zeichenketten). Sofern in Solr beispielsweise die Query herstell* formuliert wird, enthält die Trefferliste sowohl Dokumente, die den Begriff hersteller, als auch Dokumente, die den Begriff herstellung beinhalten. Durch Trunkierung kann zudem erreicht werden, dass Begriffe unabhängig vom Kasus gefunden werden. Infolge einer Suche nach hersteller* werden folglich nicht nur Dokumente in denen der hersteller im Nominativ vorkommt, sondern auch Dokumente mit dem Genitiv des herstellers.

Veröffentlicht am 02.03.2016 von Daniel Wrigley

Wie wir in einem vorherigen Blog über die Neuheiten des nächsten Major Releases von Apache Solr bereits angekündigt hatten, werden in Solr 6 Suchanfragen auf Basis von SQL-Syntax möglich sein. Dieser Beitrag wird detaillierter auf diese Möglichkeit eingehen.


Praktisch alle, die mit Solr in Berührung kommen und vorher mit relationalen Datenbanken gearbeitet haben, stellen sich wohl früher oder später die Frage, ob man nicht SQL-artige Abfragen auch an Solr richtigen kann. Die Antwort auf diese Frage lautet: Man kann – ab Version 6, die in Kürze (Stand 2. März) erscheinen wird. Voraussetzung dieses Features ist eine SolrCloud mit indexierten Daten. Dieses Feature funktioniert also nicht in einer traditionellen Master/Slave-Architektur. Hintergrund dieser Voraussetzung ist, dass diese SQL-Queries auch (oder eigentlich ganz besonders) auf großen Datenmengen funktionieren sollen. Das bedeutet, dass diese Abfragen auch auf verteilten Indexen möglich sind. Man kann sogar noch einen Schritt weitergehen und sagen: Die Aufteilung eines Index auf mehrere Shards ist sogar notwendig, will man größere Datenmengen so durchsuchen bzw. analysieren.

Veröffentlicht am 16.02.2016 von Patricia Kaufmann

Eine Identifikationsnummer, eine ID, sollte schon dem Namen nach ein unverkennbares Merkmal sein mittels dessen man eine Person oder ein Objekt eindeutig von anderen abgrenzen kann. Dies gilt insbesondere für die Inhalte von Datenspeichern, seien es klassische relationale Datenbanken oder nicht-relationale Speicher, wie Apache Solr sie verwendet.


Jedes Dokument in einem Solr-Index besitzt eine einmalige, eindeutige ID. Wird ein neues Dokument mit einer bereits vergebenen ID indexiert, so wird das alte Dokument schlichtweg ersetzt. Damit ist sichergestellt, dass jede Identifikationsnummer ihrem Namen gerecht wird und nur genau einmal pro Index vorhanden ist. Pro Index. Gemeint ist hier der physische Index. Die einzelnen Shards einer SolrCloud-Collection haben voneinander getrennte physische Indexe, teilen sich aber den logischen Index der Collection. Und genau an dieser Stelle verbirgt sich eine Sicherheitslücke, denn die Eindeutigkeit von Identifikationsnummern kann lediglich für einen physischen, nicht aber für einen logischen Index garantiert werden. Unter Umständen kann es so zu duplizierten IDs kommen.

 

Veröffentlicht am 27.01.2016 von Patricia Kaufmann

Die für das Frühjahr 2016 geplante Veröffentlichung der neuen Solr-Version 6 kann mit Spannung erwartet werden.
Zu vielen Verbesserungen und Erweiterungen vorhandener Funktionalitäten, verspricht Solr 6 einige neue Features zu beinhalten.
Dazu gehören parallele SQL-Abfragen, Graphen-Traversierung und ein neuer Scoring-Algorithmus zur Bewertung von Dokumenten in der Trefferliste.

 

SEARCH & BIG DATA, BERATUNG, SCHULUNG, ENTWICKLUNG, SUPPORT, PUBLISHER SOLUTIONS
MIT APACHE SOLR, LUCENE, ELASTICSEARCH, SMARTLOGIC SEMAPHORE, SHI INFOPILOT