NextLytics Blog

SQLScript Suche mit CONTAINS - Mit SQLScript für SAP HANA Suchen optimieren

Geschrieben von Torsten Drewes | 27.04.2018 13:07:00

Seit Längerem schon steht das Thema Big Data bei vielen Unternehmen auf der Agenda. Die zentrale Frage lautet dabei: Wie gelingt die Analyse und Auswertung immer größer werdender Datenmengen und Datenflüsse sowie unterschiedlicher Datenformate? Nur, wer aus der riesigen Flut von Daten die richtigen Rückschlüsse ziehen und seine Strategie entsprechend ausrichten kann, bleibt im Zeitalter des Internet of Things und Big Data  wettbewerbsfähig. Ein Datenbanksystem, welches Analyse und Auswertung dieser Daten in Echtzeit ermöglicht, kommt von SAP und heißt HANA.

War die Skepsis mit der Markteinführung 2010 noch eher groß, wird HANA inzwischen von etwa 7000 Unternehmen eingesetzt, Tendenz steigend. Ein großer Vorteil der HANA-Datenbank: Dank der In-Memory-Technologie können Anwender Daten wesentlich schneller und effizienter analysieren und in Echtzeit auswerten. HANA beinhaltet ebenfalls eine integrierte Suchfunktion, um Datensätze mithilfe verschiedener Verfahren zu durchsuchen. Die Suchfunktion ist zwar bereits an Board, muss jedoch für jedes Unternehmen und die unterschiedlichen Anforderungen entsprechend eingerichtet werden. Ist die Suchfunktion optimal eingerichtet, erhöht sie die Anwenderzufriedenheit und Akzeptanz und führt langfristig auch zu einer höheren Wirtschaftlichkeit. Falsch eingerichtet, weist die Suchfunktion zu hohe Fehlerquoten auf, die Akzeptanz der Anwender sinkt und die Produktivität leidet.

Aufbau der HANA-Plattform

Handlungsempfehlung für eine optimierte HANA-Suche

Unser Mitarbeiter Johannes Brandau hat in seiner Bachelor-Thesis die Optimierung der HANA-Suche für strukturierte Daten wissenschaftlich untersucht und aus seinen Ergebnissen entsprechende Handlungsempfehlungen abgeleitet. Herausgekommen ist ein Leitfaden für die Sucheinstellungen in SAP HANA, der Unternehmen dabei helfen kann, die Suchfunktionen an Ihre Bedürfnisse anzupassen und die Akzeptanz innerhalb des Unternehmens deutlich zu erhöhen. Den Leitfaden sowie die ausführliche Bachelor-Arbeit stellen wir Ihnen gerne zur Verfügung.

In diesem Blogbeitrag stellen wir Ihnen die wichtigsten Aspekte des Leitfadens vor. Bestimmt gibt es auch in Ihrem Unternehmen Handlungsbedarf für eine Optimierung Ihrer Sucheinstellungen und Sie finden in den folgenden Abschnitten Anregungen für eine Verbesserungen.

Die Suche ohne SAP HANA

Ohne SAP HANA bleiben die Suchergebnisse oftmals ungenau, da keine Fehlertoleranzen möglich sind. Zudem können nur herkömmliche SQL-Abfragen gemacht werden, die sehr lang und komplex sind. Bedient man sich der unterschiedlichen Funktionen, die SAP HANA zur Verfügung stellt, und optimiert die Abfragen mithilfe der unterschiedlichen Suchmodi, lässt sich das Suchergebnis deutlich verbessern. Wie diese Optimierung im Detail gelingt, zeigt unsere wissenschaftliche Untersuchung.

Die optimierte SAP HANA-Suche

SAP HANA hat wie gesagt standardmäßig bereits Suchfunktionen integriert, wie zum Beispiel Fuzzy-Suche oder Freestyle. Ebenso können unterschiedliche Suchverfahren für die HANA-Suche wie Compare, Search, Symmetricsearch oder Substringsearch verwendet werden. Herauszufinden galt es, ob die Optimierung der Suchverfahren den gewünschten positiven Effekt auf die HANA-Suche zeigt. Die Forschungsergebnisse unseres Mitarbeiters beziehen sich auf strukturierte Daten, am besten eignen sich personenbezogene Daten oder Daten, die Waren oder die Logistik betreffen.

Getestet wurden in der Untersuchung drei Bereiche der HANA-Suche: die Fuzzy-Suche, die Freestyle-Suche sowie mehrere durch UNION verbundene Suchen. Bei den ersten beiden Suchverfahren wurde die Suche mit und ohne Fehlerszenarien getestet und ob die Indexierung eine positive Auswirkung auf die Suchergebnisse hat. Bei der UNION-Abfrage galt es herauszufinden, ob die durch UNION verbundene Durchsuchung mehrerer Spalten genauere Ergebnisse liefert als andere Suchfunktionen und ob auch hier die Indexierung das Ergebnis verbessert.

Das Ergebnis: Die Indexierung hat positive Auswirkung auf die Suchergebnisse in SAP HANA. Eine weitere Erkenntnis: Bei den unterschiedlichen Suchverfahren zeigte sich, dass die Ergebnisse sehr unterschiedlich ausfallen und hier ein starker Zusammenhang mit den zu durchsuchenden Daten besteht. Sucht man nach Daten mit einer gewissen Fehlertoleranz, so bietet sich die Fuzzy-Suche am ehesten an.

Ermittlung des Optimums mithilfe der Standardabweichung

Steigern Sie die Leistung Ihres BW mit SQLScript

Im folgenden Abschnitt zeigen wir ihnen eine beispielhafte Implementierung der SAP HANA Fuzzy Suche mithilfe der vier unterschiedlichen Suchverfahren:

// Fuzzy Search with compare  

SELECT  SCORE()  AS  score,  *  FROM  COMPANIES

WHERE  CONTAINS(COMPANY_NAME,'SAP',FUZZY(0.8,'similarCalculationMode=compare'))

ORDER  BY  score  DESC;

 

// Fuzzy Search with substringsearch

SELECT  SCORE()  AS  score,  *  FROM  COMPANIES

WHERE  CONTAINS(COMPANY_NAME,'SAP',FUZZY(0.8,'similarCalculationMode=substringsearch'))

ORDER  BY  score  DESC;

 

// Fuzzy Search with search

SELECT  SCORE()  AS  score,  *  FROM  COMPANIES

WHERE  CONTAINS(COMPANY_NAME,'SAP',FUZZY(0.8,'similarCalculationMode=search'))

ORDER  BY  score  DESC;

 

// Fuzzy Search with symmetricsearch

SELECT  SCORE()  AS  score,  *  FROM  COMPANIES

WHERE  CONTAINS(COMPANY_NAME,'SAP',FUZZY(0.8,'similarCalculationMode=symmetricsearch'))

ORDER  BY  score  DESC;

 

Die detaillierten Ergebnisse können Sie der Bachelor-Thesis entnehmen.

Das Potenzial einer optimierten HANA-Suche

Die HANA-Datenbank hat im Vergleich zu herkömmlichen relationalen Datenbanken den Geschwindigkeitsvorteil und ist damit besser für die Analyse von Big Data geeignet. Die mitgelieferte Suchfunktion hingegen ist für Viele immer noch ein relativ unbeschrittenes Terrain, birgt aber gleichzeitig ein sehr hohes Potenzial, das es auszuschöpfen gilt. Die wissenschaftliche Untersuchung unseres Kollegen zeigt, dass eine Optimierung möglich und absolut sinnvoll ist, will man die Genauigkeit und damit auch die Nutzerzufriedenheit erhöhen.

Als Spezialist für SAP BI und Systementwicklung sind wir gerne Ihr professioneller Partner, wenn es um die Umstellung auf und Optimierung von SAP HANA geht und stehen Ihnen mit unserer Expertise jederzeit beratend zur Seite.