In an exclusive to LOG.India, Logistics Executive shares its
compilation of Salary Survey Report 2012 that covers the
entire spectrum of salary bands and geographical territories
in India. The analysis has been drawn from the Logistics
Executive Global Survey.
Dataservices - Data Processing mit MicroservicesQAware GmbH
IT-Tage 2018, Frankfurt: Vortrag von Mario-Leander Reimer (@LeanderReimer, Cheftechnologe bei QAware)
=== Dokument bitte herunterladen für bessere Lesbarkeit! ===
Abstract: Data Processing und Microservices sind ein perfektes Gespann. In dieser Kombination können Microservices dazu verwendet werden, ein flexibles, Event-getriebenes und skalierbares System von lose gekoppelten Datenverarbeitungsaufgaben aufzubauen. Diesen Ansatz nennen wir Dataservices.
In diesem Vortrag stellen wir zunächst die wesentlichen Konzepte und einige Schlüsseltechnologien vor, um Dataservice-Architekturen zu realisieren. Anschließend werden wir die einzelnen Bestandteile einer exemplarischen Datenverarbeitungs-Pipeline schrittweise komponieren und die Showcase-Pipeline in der Cloud zur Ausführung bringen und skalieren.
In diesem Vortrag ging es um die praktische Umsetzung von verschiedenen Cloud-Varianten:
- DBaaS
- IaaS
- PaaS
- MWaaS
Wir zeigen an konkreten Beispielen, wie man eine Cloud auf einer Exadata aufsetzt. Dabei werden unterschiedliche Architekturaspekte angesprochen:
- VLAN Tagging
- Backup mit ZFS
- Exadata Vorteile
- ZFS Storage Appliance
Unsere Experten Stefan Seck und Borys Neselovskyi hielten diesen Vortrag am 15.11.2017 bei der DOAG Konferenz in Nürnberg.
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...inovex GmbH
Die großen Public-Cloud-Anbieter locken inzwischen mit vielversprechenden Platform-as-a-Service-Angeboten um Daten jeglicher Art performant und kosteneffizient zu speichern und zu verarbeiten. Neben unterschiedlichen Datenbanken gibt es dazu Dienste für Batch- und Realtime-Processing. In diesem Vortrag werden einige der wichtigen Data Driven Services anhand eines typischen IoT-Szenarios aus der Praxis beleuchtet. Dazu gehen drei Schwergewichte des Cloud Business ins Rennen: Microsoft Azure vs. Amazon Web Services vs. Google Cloud Platform.
Event: inovex Meetup: "Let's talk about the Cloud!", 22.06.2016
Speaker: Thomas Neureuther, Stefan Kirner, inovex GmbH
Mehr Technologie-Vorträge: https://www.inovex.de/de/content-pool/vortraege/
Webinar - Sehr empfehlenswert: wie man aus Daten durch maschinelles Lernen We...Cloudera, Inc.
Unternehmen sind heutzutage in der Lage ihre Daten mit relativer Leichtigkeit aufzunehmen und zu verwalten. Die Herausforderung besteht nun darin, die verborgenen Muster in den Daten zu erkennen und diese zu verstehen, um einen Mehrwert zu generieren. Aufgrund der großen Datenmengen gelingt dies mit traditionelle Ansätzen zumeist nicht. Das Ergebnis: Organisationen kämpfen, um wirklich zu innovieren und sich zu differenzieren.
Lasttest auf Zuruf CloudTest on Demand webinar presentationSOASTA
SOASTA CloudTest on Demand ist die schnelle und kompetente Hilfe bei akuten oder drohenden Performance-Problemen Ihrer Web- oder Mobile-Applikationen - alles als Full Managed Service.
Besuchen Sie unser Live-Webinar und erfahren Sie, wie Sie:
Wie Lasttests innerhalb weniger Tage komplett durchgeführt werden – unabhängig von Größe, Geographie und Komplexität
Wie durch Echtzeit-Analysen während des Lasttests bereits Optimierungen durchgeführt werden können
Wie die hohe Expertise unserer Performance Engineers Sie auf ein neues Level der Performance hebt
Kennst du einUnternehmen, dass erfolgreichdie QS outtasked hat?“hpaustria
Kennst du einUnternehmen, dass erfolgreichdie QS outtasked hat?“
Presentation from HEROLD (www.herold.at) at the HP Ideas 2008 in Vienna/Austria.
http://www.herold.at
http://hpideas.wordpress.com
http://www.hp.com/at/ideas
BizDataX Transformiert und Synthetisiert neue Testdaten. Entweder wird die Produktionsdatenbank zu Maskierung von Daten benutz, oder die Testdaten werden Synthetisiert und in einer nicht-Produktionsdatenbank eingespeist. Dabei werden Datenmaskierungstechniken wie Unterteilung, Redaktion (Schwärzen), Randomisierung, Generalisierung und Mischen verwendet. Die Maskierung bewahrt sowohl das Format als auch den Kontext der realen Daten, um so neue Datensätze herstellen zu können, welche realitätsnah sowie geeignet für eine Vielzahl von nichtproduzierenden Geschäftsprozessen (zum Beispiel dem Softwareentwicklungsprozess) sind. Es können elementare Maskierungstechniken kombiniert werden, so dass sie einen komplexen Maskierungsalgorithmus bilden, welcher einen Schutz für die Sicherheit Ihrer vertraulichen Daten garantiert. BizDataXsnap-in ermöglicht den Administratoren den Datenmaskierungsprozess manuell zu starten oder dessen Ausführung terminiert zu automatisieren. Die Administratoren können laufende Prozesse beobachten, den Verlauf analysieren sowie Konfigurationsparameter und Benachrichtigungseinstellungen setzen. BizDataX zeigt Leistungsstarke Performance wenn es darum geht grosse Datenmengen zu Maskieren oder zu Synthetisieren. Beispiel: BizDataX verarbeitet ca. 500-600 Millionen Records in ca. 4 Stunden.
http://www.opitz-consulting.com
Nicht immer stehen einem DBA GUI-basierte (und oftmals teure) Tools zur Verfügung, um ein Performance-Problem in der Datenbank zu analysieren. Mit den vorhandenen "Bordmitteln" der Datenbank kann man jedoch auch eine gute Diagnose stellen. Dieser Vortrag widmet sich einer Auswahl dieser Werkzeuge und legt einen Schwerpunkt auf die Möglichkeiten, die einem in der Standard Edition und ohne Tuning Pack zur Verfügung stehen.
Unser Experte Uwe Küchler hat beim DOAG Community Webcast am 8.4.2016 eine Auswahl von Werkzeugen vorgestellt.
--
Über uns:
Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen.
Besuchen Sie unsere Homepage: http://www.opitz-consulting.com
Die Aufzeichnung dieses Webinars steht demnächst hier zur Verfügung: http://aws.amazon.com/de/recorded-webinar/
Big Data ist eines der großen Schlagworte der letzten Jahre. Aber was ist das? In vielen Unternehmen gibt es heute große Datenbestände, die nicht oder nicht ausreichend genutzt werden. Das können Logfiles eines Webservers, Bon-Daten eines Einzelhandelsunternehmens oder Sensordaten einer Produktionsstraße sein. In diesem Webinar geben wir einen Überblick über Big Data und die benutzten Technologien.
In an exclusive to LOG.India, Logistics Executive shares its
compilation of Salary Survey Report 2012 that covers the
entire spectrum of salary bands and geographical territories
in India. The analysis has been drawn from the Logistics
Executive Global Survey.
Dataservices - Data Processing mit MicroservicesQAware GmbH
IT-Tage 2018, Frankfurt: Vortrag von Mario-Leander Reimer (@LeanderReimer, Cheftechnologe bei QAware)
=== Dokument bitte herunterladen für bessere Lesbarkeit! ===
Abstract: Data Processing und Microservices sind ein perfektes Gespann. In dieser Kombination können Microservices dazu verwendet werden, ein flexibles, Event-getriebenes und skalierbares System von lose gekoppelten Datenverarbeitungsaufgaben aufzubauen. Diesen Ansatz nennen wir Dataservices.
In diesem Vortrag stellen wir zunächst die wesentlichen Konzepte und einige Schlüsseltechnologien vor, um Dataservice-Architekturen zu realisieren. Anschließend werden wir die einzelnen Bestandteile einer exemplarischen Datenverarbeitungs-Pipeline schrittweise komponieren und die Showcase-Pipeline in der Cloud zur Ausführung bringen und skalieren.
In diesem Vortrag ging es um die praktische Umsetzung von verschiedenen Cloud-Varianten:
- DBaaS
- IaaS
- PaaS
- MWaaS
Wir zeigen an konkreten Beispielen, wie man eine Cloud auf einer Exadata aufsetzt. Dabei werden unterschiedliche Architekturaspekte angesprochen:
- VLAN Tagging
- Backup mit ZFS
- Exadata Vorteile
- ZFS Storage Appliance
Unsere Experten Stefan Seck und Borys Neselovskyi hielten diesen Vortrag am 15.11.2017 bei der DOAG Konferenz in Nürnberg.
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...inovex GmbH
Die großen Public-Cloud-Anbieter locken inzwischen mit vielversprechenden Platform-as-a-Service-Angeboten um Daten jeglicher Art performant und kosteneffizient zu speichern und zu verarbeiten. Neben unterschiedlichen Datenbanken gibt es dazu Dienste für Batch- und Realtime-Processing. In diesem Vortrag werden einige der wichtigen Data Driven Services anhand eines typischen IoT-Szenarios aus der Praxis beleuchtet. Dazu gehen drei Schwergewichte des Cloud Business ins Rennen: Microsoft Azure vs. Amazon Web Services vs. Google Cloud Platform.
Event: inovex Meetup: "Let's talk about the Cloud!", 22.06.2016
Speaker: Thomas Neureuther, Stefan Kirner, inovex GmbH
Mehr Technologie-Vorträge: https://www.inovex.de/de/content-pool/vortraege/
Webinar - Sehr empfehlenswert: wie man aus Daten durch maschinelles Lernen We...Cloudera, Inc.
Unternehmen sind heutzutage in der Lage ihre Daten mit relativer Leichtigkeit aufzunehmen und zu verwalten. Die Herausforderung besteht nun darin, die verborgenen Muster in den Daten zu erkennen und diese zu verstehen, um einen Mehrwert zu generieren. Aufgrund der großen Datenmengen gelingt dies mit traditionelle Ansätzen zumeist nicht. Das Ergebnis: Organisationen kämpfen, um wirklich zu innovieren und sich zu differenzieren.
Lasttest auf Zuruf CloudTest on Demand webinar presentationSOASTA
SOASTA CloudTest on Demand ist die schnelle und kompetente Hilfe bei akuten oder drohenden Performance-Problemen Ihrer Web- oder Mobile-Applikationen - alles als Full Managed Service.
Besuchen Sie unser Live-Webinar und erfahren Sie, wie Sie:
Wie Lasttests innerhalb weniger Tage komplett durchgeführt werden – unabhängig von Größe, Geographie und Komplexität
Wie durch Echtzeit-Analysen während des Lasttests bereits Optimierungen durchgeführt werden können
Wie die hohe Expertise unserer Performance Engineers Sie auf ein neues Level der Performance hebt
Kennst du einUnternehmen, dass erfolgreichdie QS outtasked hat?“hpaustria
Kennst du einUnternehmen, dass erfolgreichdie QS outtasked hat?“
Presentation from HEROLD (www.herold.at) at the HP Ideas 2008 in Vienna/Austria.
http://www.herold.at
http://hpideas.wordpress.com
http://www.hp.com/at/ideas
BizDataX Transformiert und Synthetisiert neue Testdaten. Entweder wird die Produktionsdatenbank zu Maskierung von Daten benutz, oder die Testdaten werden Synthetisiert und in einer nicht-Produktionsdatenbank eingespeist. Dabei werden Datenmaskierungstechniken wie Unterteilung, Redaktion (Schwärzen), Randomisierung, Generalisierung und Mischen verwendet. Die Maskierung bewahrt sowohl das Format als auch den Kontext der realen Daten, um so neue Datensätze herstellen zu können, welche realitätsnah sowie geeignet für eine Vielzahl von nichtproduzierenden Geschäftsprozessen (zum Beispiel dem Softwareentwicklungsprozess) sind. Es können elementare Maskierungstechniken kombiniert werden, so dass sie einen komplexen Maskierungsalgorithmus bilden, welcher einen Schutz für die Sicherheit Ihrer vertraulichen Daten garantiert. BizDataXsnap-in ermöglicht den Administratoren den Datenmaskierungsprozess manuell zu starten oder dessen Ausführung terminiert zu automatisieren. Die Administratoren können laufende Prozesse beobachten, den Verlauf analysieren sowie Konfigurationsparameter und Benachrichtigungseinstellungen setzen. BizDataX zeigt Leistungsstarke Performance wenn es darum geht grosse Datenmengen zu Maskieren oder zu Synthetisieren. Beispiel: BizDataX verarbeitet ca. 500-600 Millionen Records in ca. 4 Stunden.
http://www.opitz-consulting.com
Nicht immer stehen einem DBA GUI-basierte (und oftmals teure) Tools zur Verfügung, um ein Performance-Problem in der Datenbank zu analysieren. Mit den vorhandenen "Bordmitteln" der Datenbank kann man jedoch auch eine gute Diagnose stellen. Dieser Vortrag widmet sich einer Auswahl dieser Werkzeuge und legt einen Schwerpunkt auf die Möglichkeiten, die einem in der Standard Edition und ohne Tuning Pack zur Verfügung stehen.
Unser Experte Uwe Küchler hat beim DOAG Community Webcast am 8.4.2016 eine Auswahl von Werkzeugen vorgestellt.
--
Über uns:
Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen.
Besuchen Sie unsere Homepage: http://www.opitz-consulting.com
Die Aufzeichnung dieses Webinars steht demnächst hier zur Verfügung: http://aws.amazon.com/de/recorded-webinar/
Big Data ist eines der großen Schlagworte der letzten Jahre. Aber was ist das? In vielen Unternehmen gibt es heute große Datenbestände, die nicht oder nicht ausreichend genutzt werden. Das können Logfiles eines Webservers, Bon-Daten eines Einzelhandelsunternehmens oder Sensordaten einer Produktionsstraße sein. In diesem Webinar geben wir einen Überblick über Big Data und die benutzten Technologien.
Visuelle Gestaltung und Testdatenentwicklung mit BizDataXDragan Kinkela
Visuelle Gestaltung mit BizDataX
Visuelle Gestaltung von Maskierungs- und Transformierungsvorgängen bei Testdatenherstellung haben wir bewusst gewählt um damit auch Businessanforderungen gerecht zu werden. Unsere Sicht auf Testdatenentwicklung liegt nicht mit dem Schwerpunkt auf Datenbank Administratoren sondern auf Developer welche Ihr Business verstehen und mit Ihrem Business die Testdaten Entwicklung vorantreiben können.
Viele denken wenn die Daten in der DB sind dann sollte ein DB Administrator die Testdaten generieren. Nun aber die Daten befinden sich nicht nur in der DB sondern auch in Office Dokumenten, Bilder, XML Files und vieles mehr wo dann die Kompetenz von einem DB Administrator aufhört. Wir haben beobachtet dass fast alle Datenmaskierungstools wie DB Administrationswerkzeuge aussehen. Man hat sich bemüht ein besseres Administrationswerkzeug zu entwickeln als man es schon hat. Diese Ideenlosen Vorgänge waren für uns der Ansporn nicht nochmal eine Kopie von einer Kopie zu sein, sondern was besonders zu werden, wo alle am Testdatenmanagement beteiligten sich optimal zurecht finden zu können.
Cloud Native & Java EE: Freund oder Feind?QAware GmbH
JavaLand 2017, Brühl: Vortrag von Josef Adersberger (@adersberger, CTO bei QAware)
Abstract:
Anwendungen nativ für den Betrieb in der Cloud auszulegen, ist der Architekturstil der Stunde: Microservices, 12-Factor Apps und Serverless-Architecturen sind en vogue. Daneben gibt es Java EE, das sich über Jahre bewährt hat beim Bau von Java-Anwendungen fürs Unternehmen. Java-EE-Anwendungen im modernen Cloud-Native-Stil zu entwickeln ist kein Widerspruch, sondern ein Zugewinn: Man kann damit Enterprise-Anwendungen bauen, die reif für die Cloud-Ära sind.
Der Vortrag zeigt am laufenden Beispiel, wie man eine Cloud-Native-Java-EE-Anwendung entwickelt und wie sich Java-EE-APIs wie JAX-RS, CDI und JPA integrieren mit Cloud-Native-Infrastruktur wie DC/OS, Kubernetes, Hystrix, Traefik, Consul und Docker. Dabei wird nicht nur blanke Technologie gezeigt, sondern auch das Thema Cloud Native Java EE auf Architekturebene betrachtet.
Anwendungen nativ für den Betrieb in der Cloud auszulegen, ist der Architekturstil der Stunde: Microservices, 12-Factor Apps und Serverless-Architecturen sind en vogue. Daneben gibt es Java EE, das sich über Jahre bewährt hat beim Bau von Java-Anwendungen fürs Unternehmen. Java-EE-Anwendungen im modernen Cloud-Native-Stil zu entwickeln- ist kein Widerspruch, sondern ein Zugewinn: Man kann damit Enterprise-Anwendungen bauen, die reif für die Cloud-Ära sind.
Der Vortrag zeigt am laufenden Beispiel, wie man eine Cloud-Native-Java-EE-Anwendung entwickelt und wie sich Java-EE-APIs wie JAX-RS, CDI und JPA integrieren mit Cloud-Native-Infrastruktur wie DC/OS, Kubernetes, Hystrix, Traefik, Consul und Docker. Dabei wird nicht nur blanke Technologie gezeigt, sondern auch das Thema Cloud Native Java EE auf Architekturebene betrachtet.
Die Public Cloud bietet Innovationen, die Unternehmen in den nächsten Jahren dringend brauchen. So hat Amazon Web Services allein im vergangenen Jahr über 700 neue, hilfreiche und produktive Dienste bereitgestellt.
Allerdings ist die Transformation vom eigenen Rechenzentrum hin zur Public Cloud nicht immer einfach. Neben der technischen Vorgehensweise stellen sich Fragen zu Sicherheit, Datenschutz, Monitoring, Reporting und Support.
Hilfe beim Einstieg in die Cloud-Angebote von AWS leisten Managed Public Cloud Provider (MPCP) wie Claranet. Erst mit ihnen lässt sich das volle Potenzial der Public Cloud ausschöpfen. Das Webinar zeigt Ihnen konkret, wie MPCP Sie auf dem Weg in die Cloud unterstützen.
Learning Objectives:
• Das kann die Public Cloud für Ihr Unternehme leisten.
• Das sind die Herausforderungen auf dem Weg in die Cloud.
• So helfen Managed Public Cloud Provider (MPCP), die Dienste von AWS zu nutzen.
• So haben andere Unternehmen ihre Projekte dank MPCP bereits erfolgreich in die Cloud gebracht.
Who Should Attend:
CTOs, CIOs, CISOs, IT-Leiter, IT Administrator, IT Architects and IT Security Engineers
Ähnlich wie Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit Palladium - code.talks 2015 (20)
Retention Strategies in Mobile E-CommerceAboutYouGmbH
The app is the fastest growing product at ABOUT YOU and already generates a large portion of its sales. New app users to win over different marketing channels is not exactly cheap.
It is thus all the more important to keep the commitment and the retention of the won users high.
E-commerce is a fast-growing market, but most online shops lag behind the conceptual and technical possibilities. Inspiring online experiences are rare and all customers usually see the same, non-personalized, online shop.
By integrating external content from Influencers, Fashion and Consumer Brands as well as users themselves, ABOUTYOU makes online shopping more inspiring and ventures into the field of Discovery Commerce. In addition, ABOUTYOU consistently focuses on personalization and distinguished itself from the competition by an individually tailored shopping experience for its users.
Carina Bittihn & Linda Dettmann - Same Same but Different - code.talks 2015
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit Palladium - code.talks 2015
1. Titel der Präsentation,
Name, Abteilung,
Ort, xx. Monat 2014
1
Dr. Andreas Lattner
Group Business Intelligence, Otto Group
Aufsetzen skalierbarer Prognose- und Analysedienste
mit Palladium
2. 2 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Agenda
1 Einleitung
2 Framework und Architektur
3 Beispiel: Aufsetzen eines Klassifikationsdienstes mit Palladium
4 Deployment mit Docker und Mesos / Marathon
5 Zusammenfassung
3. 3 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Historie und Motivation
Palladium basiert auf einem von der Otto Group BI bei Hermes entwickelten Kern
Anforderungen Predictive Analytics in der
Gruppe
• Machine Learning Modelle schnell vom Prototyp in
Produktion zu bringen. Beschleunigung Übergang
Datenanalyse zu Produktion
• Hohe Skalierbarkeit
• Zuverlässiger Betrieb und Ausfallsicherheit bzgl.
Hardwaredefekten
• Vermeidung von Lizenzkosten bei
Gruppenunternehmen
• Schneller Projektstart. Das Rad nicht für jedes
Predictive Analytics-Projekt neu erfinden
+
Prediction Framework für
Zeitfensterprognose
PALLADIUM
Erweiterung für
Group-weite
Anwendung
4. 4 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Agenda
1 Einleitung
2 Framework und Architektur
3 Beispiel: Aufsetzen eines Klassifikationsdienstes mit Palladium
4 Deployment mit Docker und Mesos / Marathon
5 Zusammenfassung
5. 5 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Palladium: Framework für die Erzeugung, Evaluation,
Verteilung und Nutzung von Prädiktionsmodellen
Anwendungsspezifische Aspekte lassen sich flexibel über Schnittstellen integrieren
Palladium
Model 1
DB
Config
predict(X) ŷ
Palladium
Model 2
DB
Config
predict(X) ŷ
• Model Management (Python, R, Julia)
Palladium ermöglicht Erstellen, Speichern, Laden,
Verteilen & Versionieren von Modellen, Erfassung von
Metadaten
• Erstellung operativer Prognosedienste
Bereitstellung der Dienste als Web Service
• Flexibilität
Über Konfiguration und definierte Schnittstellen lassen
sich schnell neue Dienste aufsetzen
• Automatisierte Aktualisierung
Update der Daten / Modelle für Dienst in konfigurierbaren
Zyklen
• Skalierbarkeit
Einfaches Verteilen und Skalieren der Prognosedienste
über Docker-Container und Load Balancer
• Autorisierung und Logging
OAuth2-Integration und Logging für Prüfung der
Zugriffsrechte und Nutzungsstatistik
6. 6 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Architektur
Erzeugung von Modellen
Anwendung von Modellen
Load Balancer
host/service/v1.1/predict?feat1=blue&feat2=38.0“class A”
“Service User”
Model DB
Testing Data
Train Server
model
Training Data
Server 1
Predict Node
model
Server 2 Server 3
7. 7 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Architektur
Flexibles Einbinden von Autorisierung, Logging und Monitoring
Erzeugung von Modellen
Anwendung von Modellen
Model DB
Testing Data
Server 1 Server 2
Load Balancer
Server 3
host/service/v1.1/predict?feat1=blue&feat2=38.0
Train Server
“class A”
“Service User”
model
model
Training Data
Predict Node
OAuth2-ServerMonitoring Service
8. 8 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Flexible Struktur via Interfaces
Integration von scikit-learn / Nutzung des Interfaces
Palladium
config
dataset
loader train
CSV Loader
DB Connection
grid search
param1: [a, b]
param2: [1.0, 2.0]
model
persister
File Persister
DB Persister
predict
service
/predict?feat1=0.1
→
{"class": "cat"}
model
Support Vector Classifier
Logistic Regression
…
dataset
loader test
CSV Loader
DB Connection
9. 9 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Agenda
1 Einleitung
2 Framework und Architektur
3 Beispiel: Aufsetzen eines Klassifikationsdienstes mit Palladium
4 Deployment mit Docker und Mesos / Marathon
5 Zusammenfassung
10. 10 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Beispiel: Iris-Klassifikation
sepal length: 5.2
sepal width: 3.5
petal length: 1.5
petal width: 0.2
Iris-setosa
Iris-versicolor
Iris-virginica ?
5.2,3.5,1.5,0.2,Iris-setosa
4.3,3.0,1.1,0.1,Iris-setosa
5.6,3.0,4.5,1.5,Iris-versicolor
6.3,3.3,6.0,2.5,Iris-virginica
5.1,3.8,1.5,0.3,Iris-setosa
...
Training- & Testdaten
Palladium Predict Server
http://localhost:5000/predict?
sepal length=5.2&sepal width=3.5&
petal length=1.5&petal width=0.2
{"result":"Iris-setosa",
"status":"OK"}
11. 11 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration und zugehörige Klassen
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
DatasetLoader
DatasetLoader
Model (→sklearn.base.BaseEstimator)
sklearn.grid_search.GridSearchCV
ModelPersister
PredictService
12. 12 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'__factory__':
'palladium.dataset.Table',
'path': 'iris.data',
'names': [
'sepal length',
'sepal width',
'petal length',
'petal width',
'species',
],
'target_column': 'species',
'sep': ',',
'nrows': 100,
13. 13 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'__factory__':
'palladium.dataset.Table',
'path': 'iris.data',
'names': [
'sepal length',
'sepal width',
'petal length',
'petal width',
'species',
],
'target_column': 'species',
'sep': ',',
'skiprows': 100,
14. 14 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'__factory__':
'sklearn.tree.
DecisionTreeClassifier',
'min_samples_leaf': 1,
15. 15 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'param_grid': {
'min_samples_leaf':
[1, 2, 3],
},
16. 16 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'__factory__':
'palladium.persistence.File',
'path':
'iris-model-{version}.pickle',
17. 17 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Konfiguration
'dataset_loader_train': {...},
'dataset_loader_test': {...},
'model': {...},
'grid_search': {...},
'model_persister': {...},
'predict_service': {...},
'__factory__':
'palladium.server.
PredictService',
'mapping': [
('sepal length', 'float'),
('sepal width', 'float'),
('petal length', 'float'),
('petal width', 'float'),
],
18. 18 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Lernen und Evaluieren von Modellen
Kommando: pld-fit
• Lädt Trainingsdaten
• Lernt Modell
• Speichert Modell + Metadaten
INFO:palladium:Loading data...
INFO:palladium:Loading data done in 0.010 sec.
INFO:palladium:Fitting model...
INFO:palladium:Fitting model done in 0.001 sec.
INFO:palladium:Writing model...
INFO:palladium:Writing model done in 0.039 sec.
INFO:palladium:Wrote model with version 8.
19. 19 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Lernen und Evaluieren von Modellen
Kommando: pld-grid-search
• Lädt Trainingsdaten
• Teilt Trainingsdaten in “Folds” (Cross Validation)
• Trainiert und evaluiert Modelle auf verschiedenen Folds
INFO:palladium:Loading data...
INFO:palladium:Loading data done in 0.004 sec.
INFO:palladium:Running grid search...
Fitting 3 folds for each of 3 candidates, totalling 9 fits
...
[Parallel(n_jobs=-1)]: Done 9 out of 9 | elapsed: 0.1s finished
INFO:palladium:Running grid search done in 0.041 sec.
INFO:palladium:
[mean: 0.93000, std: 0.03827, params: {'min_samples_leaf': 2},
mean: 0.92000, std: 0.02902, params: {'min_samples_leaf': 1},
mean: 0.92000, std: 0.02902, params: {'min_samples_leaf': 3}]
20. 20 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Lernen und Evaluieren von Modellen
Kommando: pld-test
• Lädt Testdaten
• Wendet gelerntes Modell auf Testdaten an
• Zeigt Ergebnis (z.B. Accuracy)
INFO:palladium:Loading data...
INFO:palladium:Loading data done in 0.003 sec.
INFO:palladium:Reading model...
INFO:palladium:Reading model done in 0.000 sec.
INFO:palladium:Applying model...
INFO:palladium:Applying model done in 0.001 sec.
INFO:palladium:Score: 0.92.
21. 21 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Anwenden von Modellen
Kommandos: pld-devserver & pld-stream
• Integriertes Script zum Testen des Web Services: pld-devserver
• Einsatz des Flask Web Servers
• Empfehlung zur Nutzung eines WSGI-Containers + Web Server,
z. B. gunicorn / nginx
• Predict Server
• Lädt Modell (via Model Persister)
• Konfiguration regelmäßiger Modell-Updates möglich
• Bereitstellung von Web Service Entry Points (“predict”, “alive”)
• Kommando für stdin/stdout-Verarbeitung von Prognoseanfragen: pld-stream
• Zeilenweise Verarbeitung, Rückgabe der Prognose an stdout
• In Kombination mit Hive zur Erstellung großer Anzahl an Prognosen eingesetzt
22. 22 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Statusinformationen über aktuellen predict-Node
Entry Point /alive, z.B. http://localhost:5000/alive
{
"memory_usage": 68,
"palladium_version": "1.0",
"service_metadata": {
"service_name": "iris",
"service_version": "0.1"
},
"model": {
"updated": "2015-09-28T16:33:53.316178",
"metadata": {
"train_timestamp": "2015-09-28T10:16:33.226367",
"version": 2,
"score_train": 0.94,
"score_test": 0.96
}
}
}
23. 23 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Anwendung des Modells
Entry Point /predict
GET Request:
http://localhost:5000/predict?sepal%20length=5.2&sepal%20width=3
.5&petal%20length=1.5&petal%20width=0.2
{
"result": "Iris-setosa",
"metadata": {
"error_code": 0,
"service_version": "0.1",
"status": "OK",
"service_name": "iris"
}
}
24. 24 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Performanztest des Service-Overheads (1 CPU)
Inklusive Prognose durch Iris-Modell; Verwendung des Entwicklungs-Webservers von Flask
ab -n 1000
"http://localhost:4999/predict?sepal%20length=5.2&sepal%20width=
3.5&petal%20length=1.5&petal%20width=0.2"
Time taken for tests: 1.217 seconds
Complete requests: 1000
Failed requests: 0
Total transferred: 273000 bytes
HTML transferred: 112000 bytes
Requests per second: 821.82 [#/sec] (mean)
Time per request: 1.217 [ms] (mean)
Time per request: 1.217 [ms] (mean, across all concurrent
requests)
Transfer rate: 219.10 [Kbytes/sec] received
(Intel(R) Xeon(R) CPU E5-2667 0 @ 2.90GHz)
25. 25 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Agenda
1 Einleitung
2 Framework und Architektur
3 Beispiel: Aufsetzen eines Klassifikationsdienstes mit Palladium
4 Deployment mit Docker und Mesos / Marathon
5 Zusammenfassung
26. 26 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Docker, Mesos & Marathon
• Docker ist eine Plattform für die
Erzeugung, Verteilung & Ausführung
von Applikationen
• Leichtgewichtige Umgebung
• Einfache Kombination von Komponenten
• Gesamtpaket inkl. Abhängigkeiten
• Docker Hub für Deployment
• Cluster-Framework Mesos abstrahiert
von eingesetzter Hardware und
stellt Ressourcen bereit
• Hohe Skalierbarkeit und Ausfallsicherheit
• Marathon (Mesosphere): Framework zum
Initialisieren und Überwachen von Diensten im
Cluster; Einsatz in Kombination mit Mesos
Quelle: https://www.docker.com/whatisdocker/
Quellen:
http://mesos.apache.org/
https://mesosphere.github.io/marathon/
27. 27 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Docker Image
Deployment von Palladium-Instanzen via Docker
Palladium
Base Image
Application
specific code
Config
Server 1 Server 2
Load Balancer
Docker Image
Palladium
Base Image
Application
specific code
Config
Server 3
Service 1 Service 2
host/service/v1.0/predict?feat1=austria host/service/v1.1/predict?feat1=blue&feat2=38.0
Skript zum automatischen Erzeugen von Docker-Images für Palladium-basierte Dienste
28. 28 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Automatisches Erzeugen von Docker-Images
Kommando: pld-dockerize
• Script pld-dockerize erzeugt Docker-Image für Prognosedienst, z.B.
pld-dockerize pld_codetalks ottogroup/palladium-base:1.0 alattner/iris-demo-
tmp:0.1
• Option, nur das Dockerfile für eine Nachbearbeitung zu erzeugen (ohne Erstellung
des Images)
29. 29 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
30. 30 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
31. 31 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
32. 32 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
33. 33 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
34. 34 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
35. 35 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
36. 36 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
37. 37 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Deployment via Mesos / Marathon
38. 38 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Agenda
1 Einleitung
2 Framework und Architektur
3 Beispiel: Aufsetzen eines Klassifikationsdienstes mit Palladium
4 Deployment mit Docker und Mesos / Marathon
5 Zusammenfassung
39. 39 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Zusammenfassung
https://github.com/ottogroup/palladium
• Unterstützung von Modellen in Python, R und Julia
• Mechanismus für automatisches Modell-Update
• Einfache Integration von Authentifizierungs-, Logging- und Monitoringlösungen
• Administration von Modellen (Aktivieren / Löschen)
• Automatisierte Generierung von Docker-Images (pld-dockerize)
• Skalierung und Überwachung z.B. mit Mesos / Marathon
• Einfache Installation über pip oder conda
• Bereitstellung des Palladium Docker Images bei Docker Hub:
https://hub.docker.com/r/ottogroup/palladium-base/
• Ausführliche Dokumentation inkl. Tutorial für Beispieldienst bei readthedocs
• Test-driven development, 100% Coverage
• Verschiedene Otto Group Services wurden mit Palladium umgesetzt
40. 40 Skalierbare Prognose- und Analysedienste mit Palladium
Dr. Andreas Lattner
Otto Group BI
Herzlichen Dank an…
• Daniel Nouri (gemeinsame Konzeption & Entwicklung von Palladium)
• Tim Dopke (Palladium mit Docker, Mesos / Marathon)
• das Data Science-Team der Otto Group BI
• alle Entwickler der eingesetzten Pakete, u.a.
• scikit-learn
• numpy
• scipy
• pandas
• flask
• sqlalchemy
• pytest
• …
41. Titel der Präsentation,
Name, Abteilung,
Ort, xx. Monat 2014
41
Vielen Dank für Ihre Aufmerksamkeit!
andreas.lattner //AT ottogroup.com