Automotive Information Research driven by Apache Solr

QAware GmbH
QAware GmbHQAware GmbH
Automotive Information Research
driven by Apache Solr
Mario-Leander Reimer
Cheftechnologe, QAware GmbH

mario-leander.reimer@qaware.de
@LeanderReimer
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Agenda
• Reverse Data Engineering und Daten-Exploration mit MIR
• Informationsrecherche im Aftersales mit AIR
• System-Architektur und Herausforderungen
• Lösungen für das Problem der kombinatorischen Explosion
• Datenaktualität und Konsistenz
• Auflösung von Stücklisten und Bedarfsrechner mit ZEBRA
2
Automotive Information Research driven by Apache Solr
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Reverse Data Engineering und
Daten-Exploration mit MIR
4
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
In welchem Daten-Silo sind die gesuchten Daten?
5
System A System B System C System D
Fahrzeugdaten
Weitere Daten
Wo sind die gesuchten Fahrzeugdaten?
60 potentielle Systeme und 5000 Entitäten.
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Welche versteckten Relationen gibt es zwischen
den Silos und deren Daten?
6
Wie sind die Daten miteinander verbunden?
400.000 potentielle Relationen.
Fahrzeugdaten
Weitere Daten
System A System B System C System D
Teile
Dokumente
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Reverse Data Engineering und Exploration mit MIR
• MIR indiziert und verwaltet die Beschreibung der Datenmodelle und Records aller
relevanten Quell-Systeme (RDBMS, XML, WSDL, …)
• MIR ermöglicht die Suche und Navigation in den Meta-Informationen, der Drill-
Down funktioniert über Solr Facets
• MIR verwaltet das Datenmodell und das Solr XML Schema des Zielsystems AIR
7
Tree-View der
Systeme, Tabellen
und Attribute
Wildcard-Suche
Drill-Down über
Facetten
Such-
Ergebnisse
Mögliche
Synonyme für
Fahrgestell-Nr.
gefunden
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Informationsrecherche im
Aftersales mit AIR
9
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Die richtige Information in nur 3 Klicks.
Die Ausgangssituation:
• Benutzer müssen bis zu 7 verschiedene Applikationen gleichzeitig benutzen.
• Die Bestandsapplikationen sind nicht wirklich gut integriert.
• Die Suche nach den richtigen Informationen ist aufwändig und fehleranfällig.
Die Projektvision:
• Aggregation aller relevanten Daten in ein konsistentes Informationsnetz
• Freie Suche nach Informationen und Navigation zu den verknüpften Informationen
• Ablöse der Bestandsapplikationen durch eine einfache Suchanwendung
10
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer11
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer12
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
–Unbekannt
„Aber Apache Solr ist doch eine Volltext-
Suchmaschine. Für die Anwendungsdaten müsst ihr
Oracle verwenden.“
13
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Apache Solr schlägt Oracle deutlich im direkten Vergleich
in Sachen Query-Performance und Index-Größe.
14
SELECT * FROM VEHICLE WHERE VIN='V%'
INFO_TYPE:VEHICLE AND VIN:V*
SELECT * FROM MEASURE WHERE TEXT='engine'
INFO_TYPE:MEASURE AND TEXT:engine
SELECT * FROM VEHICLE WHERE VIN='%X%'
INFO_TYPE:VEHICLE AND VIN:*X*
| 038 ms | 000 ms | 000 ms
| 383 ms | 384 ms | 383 ms
| 092 ms | 000 ms | 000 ms
| 389 ms | 387 ms | 386 ms
| 039 ms | 000 ms | 000 ms
| 859 ms | 379 ms | 383 ms
Disk space: 132 MB Solr vs. 385 MB OracleTest Datenset: 150.000 Records
Der Dirt Race Use-Case:
•Keine Internet-Verbindung
•Low-End Devices
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Solr und AIR auf einem Raspberry Pi Model B als
Proof of Concept lief 1A.
16
Running Debian Linux + JDK8
Jetty Servlet Container mit den Solr
und AIR Webapps
Reduziertes offline Datenset mit
~1.5 Mio Solr Documents
Model B Hardware Specs:
• ARMv6 CPU 700Mhz
• 512MB RAM
• 32GB SD Card
And now try this
with Oracle!
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Nur ein überlegtes Schema-Design führt zu einer
optimalen Solr Query-Performance.
17
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Naive Denormalisierung der Daten führt schnell zu
kombinatorischer Explosion.
18
33.071.137
Fahrzeuge14.830.197
Arbeitswerte
1.678.667
Pakete
5.078.411
AW Gruppen
18.573
Reparatur-
Anleitungen
648.129
Technische
Dokumente
55.000
Teile
648.129
Maßnamen
41.385
Typen
6.180
Fehler Indikationen
Relationship
Navigation
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Multi-valued Felder können 1..n Relationen effizient
abbilden, ergeben aber manchmal False Positives.
19
{
"INFO_TYPE":"AWPOS_GROUP",
"NUMMER" :[ "1134190" , "1235590" ]
"BAUSTAND" :["1969-12-31T23:00:00Z","1975-12-31T23:00:00Z"]
"E_SERIES" :[ "F10" , "E30" ]
}
Dieser Ansatz erfordert ein Nachfiltern der Suchergebnisse. Bei wenigen Treffern kein Problem.
Alternative: neuere Versionen von Solr unterstützen Nested Child Documents.
Index 0 Index 1
fq=INFO_TYPE:AWPOS_GROUP AND NUMMER:1134190 AND E_SERIES:F10
fq=INFO_TYPE:AWPOS_GROUP AND NUMMER:1134190 AND E_SERIES:E30
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Die Gültigkeiten von Technischen Dokumenten sind
als Boolsche Ausdrücke in binärer Form abgelegt.
• Gültigkeits-Ausdrücke haben bis zu 46 verschiedene Terme.
• Gültigkeits-Ausdrücke nutzen bis zu fünf Operatoren (AND, NOT, …)
• Gültigkeits-Ausdrücke sind geschachtelt und komplex.
• Einige Terme sind dynamisch und somit unbekannt zum Zeitpunkt
der Indizierung.
20
Die Lösung: Transformation der Ausdrücke in einen equivalenten, ternären Ausdruck.
Auswertung der Ausdrücke zum Abfrage-Zeitpunkt über eine Custom Function Query.
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Beispiel für einen binären Gültigkeits-Ausdruck
21
Type(53078923) = ‚Brand‘, Value(53086475) = ‚BMW PKW‘
Type(53088651) = ‚E-Series‘, Value(53161483) = ‚F10‘
Type(64555275) = ‚Transmission‘, Value(53161483) = ‚MECH‘
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Transformation der binären Gültigkeits-Ausdrücke in
ihr JavaScript Equivalent während der Indizierung.
22
((BRAND=='BMW PKW')&&(E_SERIES=='F10')&&(TRANSMISSION=='MECH'))
AND(Brand='BMW PKW', E-Series='F10'‚ Transmission='MECH')
{
"INFO_TYPE": "TECHNISCHES_DOKUMENT",
"DOKUMENT_TITEL": "Getriebe aus- und einbauen",
"DOKUMENT_ART": " reparaturanleitung",
"VALIDITY": "((BRAND=='BMW PKW')&&((E_SERIES=='F10')&&(...))",
„BRAND": [„BMW PKW"]
}
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Auswertung der JavaScript Gültigkeits-Ausdrücke zum
Abfrage-Zeitpunkt über eine Custom Function Query.
23
&fq=INFO_TYPE:TECHNISCHES_DOKUMENT
&fq=DOKUMENT_ART:reparaturanleitung
&fq={!frange l=1 u=1 incl=true incu=true cache=false cost=500}
jsTerm(VALIDITY,eyJNT1RPUl9LUkFGVFNUT0ZGQVJUX01PVE9SQVJCRUlUU
1ZFUkZBSFJFTiI6IkIiLCJFX01BU0NISU5FX0tSQUZUU1RPRkZBUlQiOm51bG
wsIlNJQ0hFUkhFSVRTRkFIUlpFVUciOiIwIiwiQU5UUklFQiI6IkFXRCIsIkV
kJBVVJFSUhFIjoiWCcifQ==)
http://qaware.blogspot.de/2014/11/how-to-write-postfilter-for-solr-49.html
Base64decode
{
"BRAND":"BMW PKW",
"E_SERIES":"F10",
"TRANSMISSION":"MECH"
}
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Ein flexibler ETL Prozess, Continuous Delivery und
DevOps sorgen für Datenaktualität und Konsistenz.
24
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Auflösung von Stücklisten und
Bedarfsrechner mit ZEBRA
25
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Bills of Materials (BOMs) explained
26
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
BOMs werden gebraucht für …
27
Produktionsplanung Vorhersage von
Bedarfen
Scenario-basierte PlanungSimulationen
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Die grobe Architektur von ZEBRA
28
Teile /
abstrakte
Bedarfe
Bestellungen /
tatsächliche
Bedarfe
Analytics
BOMs /
Abhängige
Bedarfe
Demand
Resolver
Produktions-
Planung
7 Mio.2 Mio. 21 Mrd.
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Die wesentlichen Solr Optimierungen für ZEBRA
29
Bulk RequestHandler
Binary DocValue Support
Boolean Interpreter als Post-Filter
Massen-Data Response Format
Search Komponenten für 

Custom JOIN Algorithmus
Auflösung von tausenden
Orders mit einem Request.
Effizienter Datenspeicher
mit Custom JOIN Logik
Drastische Verbesserung
der Zugriffszeiten auf die
gespeicherten Daten über
Binary DocValues.
0111 0111
Nutzt den Default Solr Binary
Codec mit einem optimierten
Datenmodell. Reduziert die
Datenmenge um Faktor 8.
Computing
BOMs
Eigene Post-Filter Implementierung
zur Auswertung der am Dokumente
gespeicherten Boolean Ausdrücke.
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Low-Level Optimierungen der Solr-Interna führten
zu einer drastischen Steigerung der Performance.
30
October 14 January 15 May 15 October 15
4,9 ms 0,28 ms
24 ms
TimetocalculatetheBoMforoneorder
0,08 ms
Scoring (-8%)
Default Query Parser (-25%)
Stat-Cache (-8%)
String DocValues (-28%)
Development of the processing time Demand Calulation Service PoC Profiling result and the some improvements to reduce the query time.
X
X
X
X
| data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer
Solr ist ein leistungsfähiges Werkzeug
das für den Bau von Enterprise und Datenanalyse

Anwendungen eingesetzt werden kann.
Seien Sie kreativ!
31
Mario-Leander Reimer
Cheftechnologe, QAware GmbH
mario-leander.reimer@qaware.de
https://www.qaware.de
https://slideshare.net/MarioLeanderReimer/
https://speakerdeck.com/lreimer/
https://twitter.com/leanderreimer/
&
1 von 32

Recomendados

A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf von
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfA Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfMario-Leander Reimer
337 views29 Folien
4×4: Big Data in der Cloud von
4×4: Big Data in der Cloud4×4: Big Data in der Cloud
4×4: Big Data in der CloudDanny Linden
492 views27 Folien
Leveraging the Power of Solr with Spark von
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkQAware GmbH
1.1K views52 Folien
Automotive Information Research driven by Apache Solr von
Automotive Information Research driven by Apache SolrAutomotive Information Research driven by Apache Solr
Automotive Information Research driven by Apache SolrMario-Leander Reimer
510 views32 Folien
Der Cloud Native Stack in a Nutshell. #CloudExpoEurope von
Der Cloud Native Stack in a Nutshell. #CloudExpoEuropeDer Cloud Native Stack in a Nutshell. #CloudExpoEurope
Der Cloud Native Stack in a Nutshell. #CloudExpoEuropeMario-Leander Reimer
922 views16 Folien
Die Leichtigkeit des Seins: Bindings für Eclipse SmartHome entwickeln von
Die Leichtigkeit des Seins: Bindings für Eclipse SmartHome entwickelnDie Leichtigkeit des Seins: Bindings für Eclipse SmartHome entwickeln
Die Leichtigkeit des Seins: Bindings für Eclipse SmartHome entwickelnQAware GmbH
1.8K views22 Folien

Más contenido relacionado

Was ist angesagt?

Enterprise Cloud Native ist das neue Normal von
Enterprise Cloud Native ist das neue NormalEnterprise Cloud Native ist das neue Normal
Enterprise Cloud Native ist das neue NormalQAware GmbH
290 views58 Folien
Realtime BigData Step by Step mit Lambda, Kafka, Storm und Hadoop von
Realtime BigData Step by Step mit Lambda, Kafka, Storm und HadoopRealtime BigData Step by Step mit Lambda, Kafka, Storm und Hadoop
Realtime BigData Step by Step mit Lambda, Kafka, Storm und HadoopValentin Zacharias
4.7K views42 Folien
Der Status Quo des Chaos Engineerings von
Der Status Quo des Chaos EngineeringsDer Status Quo des Chaos Engineerings
Der Status Quo des Chaos EngineeringsQAware GmbH
560 views42 Folien
Freie Fahrt für die Reisendeninformation mit Kafka Streams von
Freie Fahrt für die Reisendeninformation mit Kafka StreamsFreie Fahrt für die Reisendeninformation mit Kafka Streams
Freie Fahrt für die Reisendeninformation mit Kafka Streamsconfluent
1.7K views43 Folien
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action! von
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!confluent
893 views32 Folien
In-Memory Computing mit Apache Ignite und Kubernetes von
In-Memory Computing mit Apache Ignite und KubernetesIn-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und KubernetesQAware GmbH
852 views44 Folien

Was ist angesagt?(20)

Enterprise Cloud Native ist das neue Normal von QAware GmbH
Enterprise Cloud Native ist das neue NormalEnterprise Cloud Native ist das neue Normal
Enterprise Cloud Native ist das neue Normal
QAware GmbH290 views
Realtime BigData Step by Step mit Lambda, Kafka, Storm und Hadoop von Valentin Zacharias
Realtime BigData Step by Step mit Lambda, Kafka, Storm und HadoopRealtime BigData Step by Step mit Lambda, Kafka, Storm und Hadoop
Realtime BigData Step by Step mit Lambda, Kafka, Storm und Hadoop
Valentin Zacharias4.7K views
Der Status Quo des Chaos Engineerings von QAware GmbH
Der Status Quo des Chaos EngineeringsDer Status Quo des Chaos Engineerings
Der Status Quo des Chaos Engineerings
QAware GmbH560 views
Freie Fahrt für die Reisendeninformation mit Kafka Streams von confluent
Freie Fahrt für die Reisendeninformation mit Kafka StreamsFreie Fahrt für die Reisendeninformation mit Kafka Streams
Freie Fahrt für die Reisendeninformation mit Kafka Streams
confluent1.7K views
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action! von confluent
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
confluent893 views
In-Memory Computing mit Apache Ignite und Kubernetes von QAware GmbH
In-Memory Computing mit Apache Ignite und KubernetesIn-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und Kubernetes
QAware GmbH852 views
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017 von Mario-Leander Reimer
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur von QAware GmbH
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturContinuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
QAware GmbH981 views
Eval Apache Storm vs. Spark Streaming - German von Erik Schmiegelow
Eval Apache Storm vs. Spark Streaming - GermanEval Apache Storm vs. Spark Streaming - German
Eval Apache Storm vs. Spark Streaming - German
Erik Schmiegelow1.1K views
MongoDB Atlas – der beste Weg, MongoDB in der Cloud zu betreiben 2 von MongoDB
MongoDB Atlas – der beste Weg, MongoDB in der Cloud zu betreiben 2MongoDB Atlas – der beste Weg, MongoDB in der Cloud zu betreiben 2
MongoDB Atlas – der beste Weg, MongoDB in der Cloud zu betreiben 2
MongoDB488 views
Holistische Sicherheit für Microservice Architekturen von QAware GmbH
Holistische Sicherheit für Microservice ArchitekturenHolistische Sicherheit für Microservice Architekturen
Holistische Sicherheit für Microservice Architekturen
QAware GmbH267 views
Hadoop in modernen BI-Infrastrukturen von inovex GmbH
Hadoop in modernen BI-InfrastrukturenHadoop in modernen BI-Infrastrukturen
Hadoop in modernen BI-Infrastrukturen
inovex GmbH1.7K views
20181210_ITTage2018_OracleNoSQLDB_KPatenge von Karin Patenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge
Karin Patenge66 views
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s von QAware GmbH
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8sKontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
QAware GmbH276 views
Webinar Neues von der re:invent 2013 Teil 1: PostgreSQL RDS, CloudTrail, neue... von AWS Germany
Webinar Neues von der re:invent 2013 Teil 1: PostgreSQL RDS, CloudTrail, neue...Webinar Neues von der re:invent 2013 Teil 1: PostgreSQL RDS, CloudTrail, neue...
Webinar Neues von der re:invent 2013 Teil 1: PostgreSQL RDS, CloudTrail, neue...
AWS Germany1.1K views
Enterprise Cloud Native ist das neue Normal von QAware GmbH
Enterprise Cloud Native ist das neue NormalEnterprise Cloud Native ist das neue Normal
Enterprise Cloud Native ist das neue Normal
QAware GmbH275 views
Architecture Best Practices für Webanwendungen auf AWS von AWS Germany
Architecture Best Practices für Webanwendungen auf AWSArchitecture Best Practices für Webanwendungen auf AWS
Architecture Best Practices für Webanwendungen auf AWS
AWS Germany3.1K views
Kubernetes ist so viel mehr als ein Container Orchestrierer von QAware GmbH
Kubernetes ist so viel mehr als ein Container OrchestriererKubernetes ist so viel mehr als ein Container Orchestrierer
Kubernetes ist so viel mehr als ein Container Orchestrierer
QAware GmbH1.1K views

Destacado

Per Anhalter durch den Cloud Native Stack (extended edition) von
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)QAware GmbH
763 views53 Folien
Lightweight developer provisioning with gradle and seu as-code von
Lightweight developer provisioning with gradle and seu as-codeLightweight developer provisioning with gradle and seu as-code
Lightweight developer provisioning with gradle and seu as-codeQAware GmbH
491 views37 Folien
Microservices @ Work - A Practice Report of Developing Microservices von
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesQAware GmbH
581 views28 Folien
JEE on DC/OS - MesosCon Europe von
JEE on DC/OS - MesosCon EuropeJEE on DC/OS - MesosCon Europe
JEE on DC/OS - MesosCon EuropeQAware GmbH
690 views64 Folien
Leveraging the Power of Solr with Spark von
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkQAware GmbH
959 views43 Folien
Secure Architecture and Programming 101 von
Secure Architecture and Programming 101Secure Architecture and Programming 101
Secure Architecture and Programming 101QAware GmbH
581 views55 Folien

Destacado(20)

Per Anhalter durch den Cloud Native Stack (extended edition) von QAware GmbH
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)
QAware GmbH763 views
Lightweight developer provisioning with gradle and seu as-code von QAware GmbH
Lightweight developer provisioning with gradle and seu as-codeLightweight developer provisioning with gradle and seu as-code
Lightweight developer provisioning with gradle and seu as-code
QAware GmbH491 views
Microservices @ Work - A Practice Report of Developing Microservices von QAware GmbH
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
QAware GmbH581 views
JEE on DC/OS - MesosCon Europe von QAware GmbH
JEE on DC/OS - MesosCon EuropeJEE on DC/OS - MesosCon Europe
JEE on DC/OS - MesosCon Europe
QAware GmbH690 views
Leveraging the Power of Solr with Spark von QAware GmbH
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with Spark
QAware GmbH959 views
Secure Architecture and Programming 101 von QAware GmbH
Secure Architecture and Programming 101Secure Architecture and Programming 101
Secure Architecture and Programming 101
QAware GmbH581 views
Der Cloud Native Stack in a Nutshell von QAware GmbH
Der Cloud Native Stack in a NutshellDer Cloud Native Stack in a Nutshell
Der Cloud Native Stack in a Nutshell
QAware GmbH1.2K views
Automotive Information Research driven by Apache Solr von QAware GmbH
Automotive Information Research driven by Apache SolrAutomotive Information Research driven by Apache Solr
Automotive Information Research driven by Apache Solr
QAware GmbH294 views
Vamp - The anti-fragilitiy platform for digital services von QAware GmbH
Vamp - The anti-fragilitiy platform for digital servicesVamp - The anti-fragilitiy platform for digital services
Vamp - The anti-fragilitiy platform for digital services
QAware GmbH284 views
Azure Functions - Get rid of your servers, use functions! von QAware GmbH
Azure Functions - Get rid of your servers, use functions!Azure Functions - Get rid of your servers, use functions!
Azure Functions - Get rid of your servers, use functions!
QAware GmbH814 views
A Hitchhiker's Guide to the Cloud Native Stack von QAware GmbH
A Hitchhiker's Guide to the Cloud Native StackA Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native Stack
QAware GmbH1.1K views
Developing Skills for Amazon Echo von QAware GmbH
Developing Skills for Amazon EchoDeveloping Skills for Amazon Echo
Developing Skills for Amazon Echo
QAware GmbH1.5K views
Chronix as Long-Term Storage for Prometheus von QAware GmbH
Chronix as Long-Term Storage for PrometheusChronix as Long-Term Storage for Prometheus
Chronix as Long-Term Storage for Prometheus
QAware GmbH4.5K views
Everything-as-code. Polyglotte Software-Entwicklung in der Praxis. von QAware GmbH
Everything-as-code. Polyglotte Software-Entwicklung in der Praxis.Everything-as-code. Polyglotte Software-Entwicklung in der Praxis.
Everything-as-code. Polyglotte Software-Entwicklung in der Praxis.
QAware GmbH1.3K views
「知のコンピューティング」戦略目標への長い道のり von miraikenkyu
「知のコンピューティング」戦略目標への長い道のり「知のコンピューティング」戦略目標への長い道のり
「知のコンピューティング」戦略目標への長い道のり
miraikenkyu478 views
Hands-on K8s: Deployments, Pods and Fun von QAware GmbH
Hands-on K8s: Deployments, Pods and FunHands-on K8s: Deployments, Pods and Fun
Hands-on K8s: Deployments, Pods and Fun
QAware GmbH523 views
Kubernetes 101 and Fun von QAware GmbH
Kubernetes 101 and FunKubernetes 101 and Fun
Kubernetes 101 and Fun
QAware GmbH692 views
Cloud Native Unleashed von QAware GmbH
Cloud Native UnleashedCloud Native Unleashed
Cloud Native Unleashed
QAware GmbH398 views
Everything as-code. Polyglotte Entwicklung in der Praxis. #oop2017 von Mario-Leander Reimer
Everything as-code. Polyglotte Entwicklung in der Praxis. #oop2017Everything as-code. Polyglotte Entwicklung in der Praxis. #oop2017
Everything as-code. Polyglotte Entwicklung in der Praxis. #oop2017
Clickstream Analysis with Spark - Understanding Visitors in Real Time von QAware GmbH
Clickstream Analysis with Spark - Understanding Visitors in Real TimeClickstream Analysis with Spark - Understanding Visitors in Real Time
Clickstream Analysis with Spark - Understanding Visitors in Real Time
QAware GmbH685 views

Similar a Automotive Information Research driven by Apache Solr

Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am... von
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...inovex GmbH
1.3K views82 Folien
20181120_DOAG_OracleNoSQLDB_KPatenge von
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatengeKarin Patenge
80 views31 Folien
Data lake vs Data Warehouse: Hybrid Architectures von
Data lake vs Data Warehouse: Hybrid ArchitecturesData lake vs Data Warehouse: Hybrid Architectures
Data lake vs Data Warehouse: Hybrid ArchitecturesComsysto Reply GmbH
393 views21 Folien
Analytic powerhouse parallel data warehouse und r von
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rMarcel Franke
13.7K views35 Folien
Sonnenschein für ihre Website von
Sonnenschein für ihre WebsiteSonnenschein für ihre Website
Sonnenschein für ihre WebsiteOlivier Dobberkau
720 views38 Folien
On the Portability of Applications in Platform as a Service von
On the Portability of Applications in Platform as a ServiceOn the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a ServiceStefan Kolb
82 views41 Folien

Similar a Automotive Information Research driven by Apache Solr(20)

Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am... von inovex GmbH
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
inovex GmbH1.3K views
20181120_DOAG_OracleNoSQLDB_KPatenge von Karin Patenge
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge
Karin Patenge80 views
Analytic powerhouse parallel data warehouse und r von Marcel Franke
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und r
Marcel Franke13.7K views
On the Portability of Applications in Platform as a Service von Stefan Kolb
On the Portability of Applications in Platform as a ServiceOn the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a Service
Stefan Kolb82 views
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ... von Niels de Bruijn
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
Niels de Bruijn5.4K views
MT AG Präsentation Rapid Application Development mit APEX 5 von MT AG
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG1.8K views
MT AG: 7 gute Gründe warum Apex von MT AG
MT AG: 7 gute Gründe warum ApexMT AG: 7 gute Gründe warum Apex
MT AG: 7 gute Gründe warum Apex
MT AG1.8K views
Webcast: SAP on Azure für den Mittelstand - Erfolgsfaktor Integration von QUIBIQ Hamburg
Webcast: SAP on Azure für den Mittelstand - Erfolgsfaktor IntegrationWebcast: SAP on Azure für den Mittelstand - Erfolgsfaktor Integration
Webcast: SAP on Azure für den Mittelstand - Erfolgsfaktor Integration
QUIBIQ Hamburg43 views
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen von AWS Germany
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
8 Tipps für eine Cloud Strategie – wie Unternehmen heute die Cloud einsetzen
AWS Germany2.1K views
TechEvent Vorsprung durch Agilität. Scrum@Automotive von Trivadis
TechEvent Vorsprung durch Agilität. Scrum@AutomotiveTechEvent Vorsprung durch Agilität. Scrum@Automotive
TechEvent Vorsprung durch Agilität. Scrum@Automotive
Trivadis115 views
AWS Initiate Berlin - Maschinelles Lernen - Chancen, Werkzeuge und Beispiel-A... von Amazon Web Services
AWS Initiate Berlin - Maschinelles Lernen - Chancen, Werkzeuge und Beispiel-A...AWS Initiate Berlin - Maschinelles Lernen - Chancen, Werkzeuge und Beispiel-A...
AWS Initiate Berlin - Maschinelles Lernen - Chancen, Werkzeuge und Beispiel-A...
Webinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive Analytics von CONOGY GmbH
Webinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive AnalyticsWebinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive Analytics
Webinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive Analytics
CONOGY GmbH227 views
Big/Smart/Fast Data – a very compact overview von OMM Solutions GmbH
Big/Smart/Fast Data – a very compact overviewBig/Smart/Fast Data – a very compact overview
Big/Smart/Fast Data – a very compact overview
OMM Solutions GmbH260 views

Más de QAware GmbH

Der Tod der Testpyramide? – Frontend-Testing mit Playwright von
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightDer Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightQAware GmbH
7 views34 Folien
Was kommt nach den SPAs von
Was kommt nach den SPAsWas kommt nach den SPAs
Was kommt nach den SPAsQAware GmbH
5 views47 Folien
Cloud Migration mit KI: der Turbo von
Cloud Migration mit KI: der Turbo Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo QAware GmbH
18 views23 Folien
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... von
 Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...QAware GmbH
16 views13 Folien
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster von
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster QAware GmbH
16 views31 Folien
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before. von
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.QAware GmbH
20 views57 Folien

Más de QAware GmbH(20)

Der Tod der Testpyramide? – Frontend-Testing mit Playwright von QAware GmbH
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightDer Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit Playwright
QAware GmbH7 views
Cloud Migration mit KI: der Turbo von QAware GmbH
Cloud Migration mit KI: der Turbo Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo
QAware GmbH18 views
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... von QAware GmbH
 Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
QAware GmbH16 views
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster von QAware GmbH
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
QAware GmbH16 views
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before. von QAware GmbH
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
QAware GmbH20 views
Kubernetes with Cilium in AWS - Experience Report! von QAware GmbH
Kubernetes with Cilium in AWS - Experience Report!Kubernetes with Cilium in AWS - Experience Report!
Kubernetes with Cilium in AWS - Experience Report!
QAware GmbH45 views
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP von QAware GmbH
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAPKontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
QAware GmbH20 views
Blue turns green! Approaches and technologies for sustainable K8s clusters. von QAware GmbH
Blue turns green! Approaches and technologies for sustainable K8s clusters.Blue turns green! Approaches and technologies for sustainable K8s clusters.
Blue turns green! Approaches and technologies for sustainable K8s clusters.
QAware GmbH32 views
Per Anhalter zu Cloud Nativen API Gateways von QAware GmbH
Per Anhalter zu Cloud Nativen API GatewaysPer Anhalter zu Cloud Nativen API Gateways
Per Anhalter zu Cloud Nativen API Gateways
QAware GmbH30 views
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster von QAware GmbH
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
QAware GmbH22 views
How to speed up Spring Integration Tests von QAware GmbH
How to speed up Spring Integration TestsHow to speed up Spring Integration Tests
How to speed up Spring Integration Tests
QAware GmbH21 views
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster von QAware GmbH
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-ClusterAus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
QAware GmbH42 views
Cloud Migration – Eine Strategie die funktioniert von QAware GmbH
Cloud Migration – Eine Strategie die funktioniertCloud Migration – Eine Strategie die funktioniert
Cloud Migration – Eine Strategie die funktioniert
QAware GmbH27 views
Policy Driven Microservices mit Open Policy Agent von QAware GmbH
Policy Driven Microservices mit Open Policy AgentPolicy Driven Microservices mit Open Policy Agent
Policy Driven Microservices mit Open Policy Agent
QAware GmbH15 views
Make Developers Fly: Principles for Platform Engineering von QAware GmbH
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
QAware GmbH58 views
Security Lab: OIDC in der Praxis von QAware GmbH
Security Lab: OIDC in der PraxisSecurity Lab: OIDC in der Praxis
Security Lab: OIDC in der Praxis
QAware GmbH19 views
Die nächsten 100 Microservices von QAware GmbH
Die nächsten 100 MicroservicesDie nächsten 100 Microservices
Die nächsten 100 Microservices
QAware GmbH14 views
Enterprise-level Kubernetes Security mit Open Source Tools - geht das? von QAware GmbH
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
QAware GmbH33 views
Put the ‘Auto’ in Autoscaling – Make Kubernetes VPA and HPA work together for... von QAware GmbH
Put the ‘Auto’ in Autoscaling – Make Kubernetes VPA and HPA work together for...Put the ‘Auto’ in Autoscaling – Make Kubernetes VPA and HPA work together for...
Put the ‘Auto’ in Autoscaling – Make Kubernetes VPA and HPA work together for...
QAware GmbH19 views

Automotive Information Research driven by Apache Solr

  • 1. Automotive Information Research driven by Apache Solr Mario-Leander Reimer Cheftechnologe, QAware GmbH
 mario-leander.reimer@qaware.de @LeanderReimer
  • 2. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Agenda • Reverse Data Engineering und Daten-Exploration mit MIR • Informationsrecherche im Aftersales mit AIR • System-Architektur und Herausforderungen • Lösungen für das Problem der kombinatorischen Explosion • Datenaktualität und Konsistenz • Auflösung von Stücklisten und Bedarfsrechner mit ZEBRA 2
  • 4. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Reverse Data Engineering und Daten-Exploration mit MIR 4
  • 5. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer In welchem Daten-Silo sind die gesuchten Daten? 5 System A System B System C System D Fahrzeugdaten Weitere Daten Wo sind die gesuchten Fahrzeugdaten? 60 potentielle Systeme und 5000 Entitäten.
  • 6. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Welche versteckten Relationen gibt es zwischen den Silos und deren Daten? 6 Wie sind die Daten miteinander verbunden? 400.000 potentielle Relationen. Fahrzeugdaten Weitere Daten System A System B System C System D Teile Dokumente
  • 7. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Reverse Data Engineering und Exploration mit MIR • MIR indiziert und verwaltet die Beschreibung der Datenmodelle und Records aller relevanten Quell-Systeme (RDBMS, XML, WSDL, …) • MIR ermöglicht die Suche und Navigation in den Meta-Informationen, der Drill- Down funktioniert über Solr Facets • MIR verwaltet das Datenmodell und das Solr XML Schema des Zielsystems AIR 7
  • 8. Tree-View der Systeme, Tabellen und Attribute Wildcard-Suche Drill-Down über Facetten Such- Ergebnisse Mögliche Synonyme für Fahrgestell-Nr. gefunden
  • 9. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Informationsrecherche im Aftersales mit AIR 9
  • 10. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Die richtige Information in nur 3 Klicks. Die Ausgangssituation: • Benutzer müssen bis zu 7 verschiedene Applikationen gleichzeitig benutzen. • Die Bestandsapplikationen sind nicht wirklich gut integriert. • Die Suche nach den richtigen Informationen ist aufwändig und fehleranfällig. Die Projektvision: • Aggregation aller relevanten Daten in ein konsistentes Informationsnetz • Freie Suche nach Informationen und Navigation zu den verknüpften Informationen • Ablöse der Bestandsapplikationen durch eine einfache Suchanwendung 10
  • 11. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer11
  • 12. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer12
  • 13. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer –Unbekannt „Aber Apache Solr ist doch eine Volltext- Suchmaschine. Für die Anwendungsdaten müsst ihr Oracle verwenden.“ 13
  • 14. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Apache Solr schlägt Oracle deutlich im direkten Vergleich in Sachen Query-Performance und Index-Größe. 14 SELECT * FROM VEHICLE WHERE VIN='V%' INFO_TYPE:VEHICLE AND VIN:V* SELECT * FROM MEASURE WHERE TEXT='engine' INFO_TYPE:MEASURE AND TEXT:engine SELECT * FROM VEHICLE WHERE VIN='%X%' INFO_TYPE:VEHICLE AND VIN:*X* | 038 ms | 000 ms | 000 ms | 383 ms | 384 ms | 383 ms | 092 ms | 000 ms | 000 ms | 389 ms | 387 ms | 386 ms | 039 ms | 000 ms | 000 ms | 859 ms | 379 ms | 383 ms Disk space: 132 MB Solr vs. 385 MB OracleTest Datenset: 150.000 Records
  • 15. Der Dirt Race Use-Case: •Keine Internet-Verbindung •Low-End Devices
  • 16. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Solr und AIR auf einem Raspberry Pi Model B als Proof of Concept lief 1A. 16 Running Debian Linux + JDK8 Jetty Servlet Container mit den Solr und AIR Webapps Reduziertes offline Datenset mit ~1.5 Mio Solr Documents Model B Hardware Specs: • ARMv6 CPU 700Mhz • 512MB RAM • 32GB SD Card And now try this with Oracle!
  • 17. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Nur ein überlegtes Schema-Design führt zu einer optimalen Solr Query-Performance. 17
  • 18. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Naive Denormalisierung der Daten führt schnell zu kombinatorischer Explosion. 18 33.071.137 Fahrzeuge14.830.197 Arbeitswerte 1.678.667 Pakete 5.078.411 AW Gruppen 18.573 Reparatur- Anleitungen 648.129 Technische Dokumente 55.000 Teile 648.129 Maßnamen 41.385 Typen 6.180 Fehler Indikationen Relationship Navigation
  • 19. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Multi-valued Felder können 1..n Relationen effizient abbilden, ergeben aber manchmal False Positives. 19 { "INFO_TYPE":"AWPOS_GROUP", "NUMMER" :[ "1134190" , "1235590" ] "BAUSTAND" :["1969-12-31T23:00:00Z","1975-12-31T23:00:00Z"] "E_SERIES" :[ "F10" , "E30" ] } Dieser Ansatz erfordert ein Nachfiltern der Suchergebnisse. Bei wenigen Treffern kein Problem. Alternative: neuere Versionen von Solr unterstützen Nested Child Documents. Index 0 Index 1 fq=INFO_TYPE:AWPOS_GROUP AND NUMMER:1134190 AND E_SERIES:F10 fq=INFO_TYPE:AWPOS_GROUP AND NUMMER:1134190 AND E_SERIES:E30
  • 20. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Die Gültigkeiten von Technischen Dokumenten sind als Boolsche Ausdrücke in binärer Form abgelegt. • Gültigkeits-Ausdrücke haben bis zu 46 verschiedene Terme. • Gültigkeits-Ausdrücke nutzen bis zu fünf Operatoren (AND, NOT, …) • Gültigkeits-Ausdrücke sind geschachtelt und komplex. • Einige Terme sind dynamisch und somit unbekannt zum Zeitpunkt der Indizierung. 20 Die Lösung: Transformation der Ausdrücke in einen equivalenten, ternären Ausdruck. Auswertung der Ausdrücke zum Abfrage-Zeitpunkt über eine Custom Function Query.
  • 21. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Beispiel für einen binären Gültigkeits-Ausdruck 21 Type(53078923) = ‚Brand‘, Value(53086475) = ‚BMW PKW‘ Type(53088651) = ‚E-Series‘, Value(53161483) = ‚F10‘ Type(64555275) = ‚Transmission‘, Value(53161483) = ‚MECH‘
  • 22. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Transformation der binären Gültigkeits-Ausdrücke in ihr JavaScript Equivalent während der Indizierung. 22 ((BRAND=='BMW PKW')&&(E_SERIES=='F10')&&(TRANSMISSION=='MECH')) AND(Brand='BMW PKW', E-Series='F10'‚ Transmission='MECH') { "INFO_TYPE": "TECHNISCHES_DOKUMENT", "DOKUMENT_TITEL": "Getriebe aus- und einbauen", "DOKUMENT_ART": " reparaturanleitung", "VALIDITY": "((BRAND=='BMW PKW')&&((E_SERIES=='F10')&&(...))", „BRAND": [„BMW PKW"] }
  • 23. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Auswertung der JavaScript Gültigkeits-Ausdrücke zum Abfrage-Zeitpunkt über eine Custom Function Query. 23 &fq=INFO_TYPE:TECHNISCHES_DOKUMENT &fq=DOKUMENT_ART:reparaturanleitung &fq={!frange l=1 u=1 incl=true incu=true cache=false cost=500} jsTerm(VALIDITY,eyJNT1RPUl9LUkFGVFNUT0ZGQVJUX01PVE9SQVJCRUlUU 1ZFUkZBSFJFTiI6IkIiLCJFX01BU0NISU5FX0tSQUZUU1RPRkZBUlQiOm51bG wsIlNJQ0hFUkhFSVRTRkFIUlpFVUciOiIwIiwiQU5UUklFQiI6IkFXRCIsIkV kJBVVJFSUhFIjoiWCcifQ==) http://qaware.blogspot.de/2014/11/how-to-write-postfilter-for-solr-49.html Base64decode { "BRAND":"BMW PKW", "E_SERIES":"F10", "TRANSMISSION":"MECH" }
  • 24. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Ein flexibler ETL Prozess, Continuous Delivery und DevOps sorgen für Datenaktualität und Konsistenz. 24
  • 25. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Auflösung von Stücklisten und Bedarfsrechner mit ZEBRA 25
  • 26. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Bills of Materials (BOMs) explained 26
  • 27. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer BOMs werden gebraucht für … 27 Produktionsplanung Vorhersage von Bedarfen Scenario-basierte PlanungSimulationen
  • 28. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Die grobe Architektur von ZEBRA 28 Teile / abstrakte Bedarfe Bestellungen / tatsächliche Bedarfe Analytics BOMs / Abhängige Bedarfe Demand Resolver Produktions- Planung 7 Mio.2 Mio. 21 Mrd.
  • 29. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Die wesentlichen Solr Optimierungen für ZEBRA 29 Bulk RequestHandler Binary DocValue Support Boolean Interpreter als Post-Filter Massen-Data Response Format Search Komponenten für 
 Custom JOIN Algorithmus Auflösung von tausenden Orders mit einem Request. Effizienter Datenspeicher mit Custom JOIN Logik Drastische Verbesserung der Zugriffszeiten auf die gespeicherten Daten über Binary DocValues. 0111 0111 Nutzt den Default Solr Binary Codec mit einem optimierten Datenmodell. Reduziert die Datenmenge um Faktor 8. Computing BOMs Eigene Post-Filter Implementierung zur Auswertung der am Dokumente gespeicherten Boolean Ausdrücke.
  • 30. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Low-Level Optimierungen der Solr-Interna führten zu einer drastischen Steigerung der Performance. 30 October 14 January 15 May 15 October 15 4,9 ms 0,28 ms 24 ms TimetocalculatetheBoMforoneorder 0,08 ms Scoring (-8%) Default Query Parser (-25%) Stat-Cache (-8%) String DocValues (-28%) Development of the processing time Demand Calulation Service PoC Profiling result and the some improvements to reduce the query time. X X X X
  • 31. | data2day 2016 | Automotive Information Research driven by Apache Solr | @LeanderReimer Solr ist ein leistungsfähiges Werkzeug das für den Bau von Enterprise und Datenanalyse
 Anwendungen eingesetzt werden kann. Seien Sie kreativ! 31
  • 32. Mario-Leander Reimer Cheftechnologe, QAware GmbH mario-leander.reimer@qaware.de https://www.qaware.de https://slideshare.net/MarioLeanderReimer/ https://speakerdeck.com/lreimer/ https://twitter.com/leanderreimer/ &