Ist Big-Data-Technologie auch bei kleinen Datenmengen sinnvoll einsetzbar? i+e 2015 / Freiburg Peter Soth exensio GmbH Unsere Expertise ● Tätigkeitsfelder ● IT-Consulting • Beratung, Analyse, Planung, Architektur, Design, Projektmanagement, … ● Software-Entwicklung ● Unser Know-How ● Enterprise Portallösungen mit der Integration unterschiedlichster Back-EndSysteme, z.B. Documentum, Day CQ oder ● ● ● ● ● SAP. Integration von heterogenen Systemlandschaften Datawarehouse / Business Intelligence Enterprise Suche Mobile Lösungen Social Media (Web 2.0 und Enterprise 2.0) 2 Was ist Big Data? ● Definition ● Unter Big Data versteht man das Sammeln und Auswerten riesiger Datenmengen, das mit den herkömmlichen Verfahren der Datentechnik nicht durchführbar wäre ● Herkömmliche Relationale-Datenbanken stoßen hier an Ihre Grenzen. ● Bei Big Data zählt der Gesamtzusammenhang, aber nicht der einzelne Datensatz ● NoSQL Technologien sind für den Einsatz bei Big Data besonders gut geeignet ● Mögliche Einsatz-Szenarien ● Marketing und Vertrieb • Markt- und Wettbewerbsanalysen • Management von Kundenabwanderungen ● Internet of Things (Sensordaten) • Vorrausschauende Instandhaltung von Maschinen ● Intelligente Verbrauchssteuerung (Smart Metering) ● IT-Forensik (Log-File-Analyse) ● … 3 3-V-Modell von Gartner Forschungsbericht des Analysten Doug Laney ● Volume steigende Datenmengen (GB/TB/PB) ● Velocity steigende Geschwindigkeit mit der Daten erzeugt und verarbeitet werden ● Echtzeit ● Nahe an Echtzeit ● Periodisch ● Batch ● Variety Vielfalt der Daten ● Strukturiert ● Unstrukturiert ● Videos / Ton 4 Warum sind NoSQL Technologien nötig? ● Vorteile gegenüber Relationalen Datenbanken: ● Keine Performance-Einbußen bei großen Datenmengen durch horizontale Skalierung (neue Server können hinzugefügt werden) ● Strukturierte und unstrukturierte Daten wie Texte, Videos, PDFs, etc. können durch flexibleres Datenmodell (kein SQL Tabellen-Korsett) besser verwaltet und abgefragt werden ● Nachteile ● Keine Konsistenzgarantien über Cluster ● Keine Zuverlässigkeitsgarantien (ACID) wie bei Relationalen Datenbanken ● Die bekanntesten NoSQL Datenbanken (Quelle: http://db-engines.com) ● MongoDB ● Apache Casandra ● Redis ● Apache Solr (Suchmaschine) ● Apache Hbase (basiert auf Apache Hadoop) ● Elasticsearch (Suchmaschine) 5 SQL vs. NoSQL Quelle: Wikipedia / Volkswagen Früher war Plattenplatz - im Verhältnis zu den Entwicklungskosten - teuer, heute ist es umgekehrt. 6 Elasticsearch vs. Hadoop Eco-System Elasticsearch ● Suchmaschine ● Eignet sich besonders gut für die Suche und Analyse von strukturierten und unstrukturierten Daten Hadoop ● Framework (MapReduce) für skalierbare und verteilte Systeme auf großen Datenmengen ● Basis für Eco-System mit über 100 Erweiterungen, wie Hbase, Hive, Pig, Spark, ZooKeeper … Hadoop ist aktuell die Schlüsseltechnologie für Big Data. Elasticsearch bietet ähnliche Möglichkeiten, bei geringerer Komplexität. 7 Elasticsearch vs. Hadoop Eco-System Vorteile von Elasticsearch ● Schnell aufzusetzen, geringe Komplexität bzw. niedrigere Einstiegshürde ● Lohnt sich mehr bei kleinen Datenvolumen ● Abfragen in „Real-time“ ● Viele Standard-Analysemöglichkeiten (min, max, avg, etc.) sind einfacher als bei Hadoop zu verwenden Nachteile ● Für komplexe Analysen wie Datamining eher ungeeignet, da sich statistische Module wie R nur schwer integrieren lassen ● Funktionalität wie Predictive Analytics (bspw. Vorhersagen eines Wartungsintervalls) nicht realisierbar. Hier Hadoop-Eco-System verwenden Elasticsearch = Einfachheit mit eingeschränktem Funktionsumfang Hadoop = Komplexität mit Full-Scope. 8 Einsatz-Szenarien für Elasticsearch ● Suchmaschinentechnologien ermöglichen SoftwareLösungen, die mit Relationalen Datenbanken nur schwer umsetzbar wären. ● Diese Technologie ergänzt SQL, ist aber nicht die Lösung aller Probleme. 9 Einsatz-Szenarien für Elasticsearch ● NoSQL Document Store (JSON) ● Einfache Skalierbarkeit für Big Data (Sharding) ● Keine Transkationen ● Sehr gute Aggregationsmöglichkeiten im Vergleich zu anderen NoSQL Lösungen ● Alle Attribute sind automatisch indiziert – im vgl. zu einer Datenbank – hier muss man angeben, welches Attribut indiziert werden soll ● Query Engine für strukturierte Daten ● Daten werden in SQL DB gespeichert ● Abfragen laufen über Elasticsearch • Vereinfachung von komplexen SQL Queries (insb. bei hierarchischen Abfragen) • Keine Notwendigkeit SQL-Queries mit Indices zu optimieren • Mehr Möglichkeiten bei textbasierten Abfragen (bspw. Fuzzy-Search) 10 Einsatz-Szenarien für Elasticsearch ● Volltextsuche bzw. Facettierte Suche ● Volltextsuche • Erweiterbar um Vorschläge • Phonetische bzw. Fuzzy Suche ● Facettierte Suche basiert auf einer Taxonomie (Schlagworte) • Schnelleres und präziseres Finden von Informationen anhand von Schlagworten anstatt der Relevanz (basiert auf Wörter zählen) ● Suche in strukturierten (Datenbanken, CRM, ERP, …) sowie unstrukturierten Daten (Content, Dokumente) möglich ● Mögliche Anwendungen: • Wissensportale • Enterprise Search (Integration von verschiedenen Informations-Silos) 11 Suche in unstrukturierten Daten Volltextsuche Taxonomie 12 Suche in strukturierten Daten – Präparate-DB Volltextsuche Taxonomie Strukturierte Daten aus indizierter Datenbank 13 Einsatz-Szenarien für Elasticsearch ● Geo-Suche ● PLZ-Umkreissuche (Filialen) ● Immobilienportal zeigt Gebäude (bspw. Schulen) im Umkreis der selektierten Immobilie ● Flottenmanagement ● Logistik ● Location Based Services ● … Einfachere Geo-Such-Möglichkeiten als mit bspw. Oracle Spatial, jedoch keine Routenplanung bzw. Optimierung möglich 14 Einsatz-Szenarien für Elasticsearch ● Business Analytics ● Datawarehouse (Aggregationen ersetzen Dimensionen im Star-Schema) ● Competitive Intelligence • Mapping bspw. über den Weinnamen, falls keine eindeutige Id wie EAN Code vorhanden ist ● Schneller und kostengünstiger vgl. mit Data Warehouse ● Nahezu Realtime. Keine nächtlichen Aggregations-Batches ● Auch unstrukturierte Daten können integriert werden Business Intelligence Lösungen setzen strukturierte, konsistente und beständige Daten voraus, wohingegen Big Data Lösungen speziell auf unstrukturierte und möglicherweise nicht konsistente Daten hin optimiert sind. Folglich eignen sich Big Data Lösungen weniger für ein Konzern-Reporting. Quelle: Gesellschaft für Informatik / http://www.gi.de/service/informatiklexikon/detailansicht/article/big-data.html 15 Competitive Intelligence Dimensionen Volltextsuche in strukturierten und unstrukturierten Daten strukturierte Informationen 16 Competitive Intelligence Umsatz pro Land und Wettbewerber 17 Einsatz-Szenarien für Elasticsearch ● Logfile-Analyse ● IT-Forensik ● Optimierung von Online-Kampagnen ● Sortimentslücken entdecken (Kunden suchen nach nicht vorhandenen Artikeln) ● Prozesslaufzeiten analysieren ● … 18 Wann und wo treten die Fehler auf? Unterstützung bei der Fehlersuche in Log-Files 19 Was geschah alles um diesen Zeitpunkt herum? Unterstützung bei Einhaltung von Informationspflicht Analyse: „Zeige alle Einträge zwischen 10 und 13 Uhr am fraglichen Tag“ Bei dieser Analyse werden alle Logdateien des Index durchsucht. Man kann somit schnell alle Systeme überblicken! 20 Online Marketing-Kampagnen Zugriffe und Trends ermitteln Auswertung der gestiegenen Zugriffszahlen infolge Online Marketing-Kampagne Welche Browser verwenden die Kunden hauptsächlich? 21 Einsatz-Szenarien für Elasticsearch ● Internet-Of-Things ● Darstellung von Zeitreihen ● Setzen von Alarmen (bspw. Temperatur steigt über Schwellwert) ● Alerts (Percolator -> indiziertes Dokument passt zu gespeicherter Query) ● News Alerts ● Preis-Monitor ● Online-Werbung ● … 22 Fallstudien Big Data mit Hadoop Unseres Partners Dr. Hornecker IT-Dienstleistungen ● Überwachung von Maschinen- und Anlagenparametern und vorausschauende Wartung ● Messdaten aus Anlagen werden gesammelt und in einer Datenzentrale ausgewertet, hierbei sind Aspekte der Datensicherheit zu berücksichtigen ● Mehrwert entsteht durch Verbesserungen im Herstellungsprozess, bessere Planung von Wartungsintervallen sowie durch die frühzeitige Erkennung von Störungen. ● Überwachung und Früherkennung im Produktionsprozess ● Ein bestehendes System zur Qualitätskontrolle wird um Big Data Methoden erweitert. ● Zusammenhänge im Produktionsprozess können dynamisch analysiert werden, Durchlaufzeiten werden optimiert. ● Ein Frühwarnsystem ermöglich die frühe und somit kostengünstige Erkennung von Störungen. Die Firma Dr. Hornecker verfügt über eine langjährige Kompetenz, um aus immensen Datenmengen nützliches Wissen abzuleiten. 23 Zusammenfassung Ist Big-Data-Technologie auch bei kleinen Datenmengen sinnvoll einsetzbar? exensio konnte bereits mehrere der aufgezeigten Szenarien produktiv einführen Folgende Fragen gilt es bei der Technologiewahl zu klären: ● Art der Analysen ● Datenkomplexität ● Voraussichtliche Datenmengen ● Budget 24 Fragen? Besuchen Sie uns auch gerne an unserem Stand: Halle: F Stand: A 108 25 exensio Gesellschaft für Informationstechnologie mbH Am Rüppurrer Schloß 12 76199 Karlsruhe http://www.exensio.de http://blog.exensio.de http://twitter.com/exensio