5. Clash of Cultures:
Wie bringe ich Microservices und Business Intelligence zusammen?
Microservices
• Microservices sind klein, bleiben übersichtlich und
weiterentwickelbar
• Microservices können unabhängig entwickelt und betrieben werden
• Teams sind unabhängig und agil, Kommunikationsaufwand geringer
DWH & Business Intelligence
• Klassische DWH-Ansätze können die Daten der unabhängigen
Microservices nicht verarbeiten
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
MicroserviceMicroservice
• Aktuelle Herausforderungen in BI & DWH:
• Anforderungen müssen schnell und kostengünstig umgesetzt
werden
• Daten-Infrastrukturen sind aufwendig im Betrieb
• Höhere Anforderungen durch Compliance und Regulatoren
• Rasante technologische Entwicklung in AI, Cloud und Big Data
• Mangel an qualifizierten Entwicklern
Lösungsansatz: Standardisierte und automatisierte Data Integration
Prozesse
Und was passiert mit den Daten:
• Datenhaltung ist dezentral in den einzelnen Microservices und
Verantwortlichkeiten für Daten oft unklar
• Datenaustausch erfolgt über APIs (oder Kafka) – Komplexität steigt
im Zeitablauf, je mehr Microservices, desto mehr Schnittstellen
(exponentiell)
6. Microservice Streaming Platform
Streaming Data Platform:
Die ersten Schritte der Microservices mit Kafka ...
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
Data
Ingest
Service
7. Microservice Streaming Platform
Streaming Data Platform:
REST-Proxy und Schema Registry bringen etwas Ordnung ...
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
R
E
S
T
Data
Metadata
Metadata
confluent
Schema Registry
R
E
S
T
Ingest
Service
9. Data Governance Framework
Woher stammen
die Daten: Data
Lineage
Wer ist für die
Daten
verantwortlich?
Wie werden die
Daten
verarbeitet bzw.
berechnet?
In welchen
Geschäfts-
prozessen werden
Daten verarbeitet
und genutzt.
In welchen
Systemen
werden die
Daten
gespeichert?
Wer nutzt die
Daten und wo?
Prozesse,
Reports etc.
Data Governance Framework
10. Metadaten & Data Governance – die Brücke zwischen den Welten
Microservice
(Data Producer)
Metadaten Business Intelligence
(Data Consumer)
Metadaten
(Schema Registry)
Data Producer
Analytics &
Reporting
Data Quality
Monitoring (DQM)
Data Lineage
Data Usage
Validierung
12. Microservice Streaming Platform
Streaming Data Platform:
Architektur mit Schema Registry & REST Proxy als Ausgangspunkt...
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
R
E
S
T
Data
Metadata
Metadata
confluent
Schema Registry
R
E
S
T
Ingest
Service
13. DWH & Business IntelligenceMicroservice Streaming Platform
Streaming Data Platform:
Der Weg vom Streaming zu Data Lake und BI Platform ...
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
(Near-)Real-Time Applications
Apps & Use Cases Dashboards
R
E
S
T
Data Lake
Data
Metadata
Stream
Processing
Metadata
confluent
Schema Registry
R
E
S
T
Ingest
Service
14. DWH & Business IntelligenceMicroservice Streaming Platform
Streaming Data Platform:
Der Weg vom Streaming zu Data Lake und BI Platform ...
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
(Near-)Real-Time Applications
Apps & Use Cases Dashboards
Raw
Vault
R
E
S
T
Data Lake
Storage
Data
Metadata
Business
Vault
Information
Mart
GDPR
StreamingApp
Stream
Processing
Metadata
confluent
Schema Registry
R
E
S
T
Ingest
Service
Reporting
Operative
Systeme
Ergänzung der Schema
Registry um Metadaten
15. Ausgangspunkt:
JSON für Schema Registry – Ausgangskonfiguration
{
"type": "record",
"namespace": "com.example.department1",
"name": "userInfo",
"doc": "User information for newly registered or updated
users",
"service_metadata": {
"sourceSystem": "exampleService",
"docs":
"https://exampleservice.department1.example.com/swagger/"
},
"storage_configuration": {
"min_rows": 100000,
"min_mb": 128,
"min_time_s": 900
},
"fields": [
{
"name": "firstname",
"type": "string",
"doc": "First and optional middlename,
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "lastname",
"type": "string",
"doc": "Last name of user",
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "city",
"type": "string",
"doc": "Current city of residence",
"gdpr": {
"action": "none"
}
},
{
"name": "mail_address",
"type": "string",
"doc": "Currently city of residence",
"gdpr": {
"action": "pseudonymizer",
"pseudonymize_key": "email"
}
}
]
}
16. Konfiguration via JSON:
Erweiterung um GDPR & Prozessinformationen
{
"type": "record",
"namespace": "com.example.department1",
"name": "userInfo",
"doc": "User information for newly registered or updated
users",
"service_metadata": {
"sourceSystem": "exampleService",
"docs":
"https://exampleservice.department1.example.com/swagger/"
},
"storage_configuration": {
"min_rows": 100000,
"min_mb": 128,
"min_time_s": 900
},
"fields": [
{
"name": "firstname",
"type": "string",
"doc": "First and optional middlename,
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "lastname",
"type": "string",
"doc": "Last name of user",
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "city",
"type": "string",
"doc": "Current city of residence",
"gdpr": {
"action": "none"
}
},
{
"name": "mail_address",
"type": "string",
"doc": "Currently city of residence",
"gdpr": {
"action": "pseudonymizer",
"pseudonymize_key": "email"
}
}
]
}
17. DWH & Business IntelligenceMicroservice Streaming Platform
Streaming Data Platform: Job Generation & Orchestration
kann (fast) alle Arbeitsschritte automatisieren
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
(Near-)Real-Time Applications
Apps & Use Cases Dashboards
Raw
Vault
R
E
S
T
Data Lake
Storage
Data
Metadata
Business
Vault
Information
Mart
GDPR
StreamingApp
Stream
Processing
Job Generation & OrchestrationMetadata
confluent
Schema Registry
(& Metadaten)
Dynamic
Job Manager
Data Lake & Data Vault
Code & Job Generation
R
E
S
T
Ingest
Service
Reporting
Operative
Systeme
Job & Code
Builder
19. Aufgabe:
Darstellung Microservice Repository & Data Dictionary
Schema Registry
Microservice Metadata
Enterprise Architecture
Metadata
Microservice Repository
• Index der Microservices und ihrer Funktion
• Verständnis von Schnittstellen und
Zusammenhängen
• Ansprechpartner und Verantwortlichkeiten
• Daten – welche Daten halt der Microservice
führend bzw. exklusiv
Data Dictionary (via Schema Registry)
• Verständnis auf Feldebene
• GDPR Informationen
• Informationsklassifizierung
• Index der Felder
• Unterschiedliche Versionen von
Events im Zeitablauf
20. Dokumentation via JSON:
Erweiterung um Doku, Links & weitere Informationen
{
"type": "record",
"namespace": "com.example.department1",
"name": "userInfo",
"doc": "User information for newly registered or updated
users",
"service_metadata": {
"sourceSystem": "exampleService",
"docs":
"https://exampleservice.department1.example.com/swagger/"
},
"storage_configuration": {
"min_rows": 100000,
"min_mb": 128,
"min_time_s": 900
},
"fields": [
{
"name": "firstname",
"type": "string",
"doc": "First and optional middlename,
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "lastname",
"type": "string",
"doc": "Last name of user",
"gdpr": {
"action": "mask_1st_diget"
}
},
{
"name": "city",
"type": "string",
"doc": "Current city of residence",
"gdpr": {
"action": "none"
}
},
{
"name": "mail_address",
"type": "string",
"doc": "Currently city of residence",
"gdpr": {
"action": "pseudonymizer",
"pseudonymize_key": "email"
}
}
]
}
21. DWH & Business IntelligenceMicroservice Streaming Platform
Streaming Data Platform:
Ergänzung um Microservice Repository & Microservice Wiki
Data Sources
Microservices
Microservice I
Microservice II
Microservice III
Microservice …
Microservice …
Microservice …
Microservice …
Kafka
(Near-)Real-Time Applications
Apps & Use Cases Dashboards
Raw
Vault
R
E
S
T
Data Lake
Storage
Data
Metadata
Business
Vault
Information
Mart
GDPR
StreamingApp
Stream
Processing
Job Generation & OrchestrationMetadata
confluent
Schema Registry
(& Metadaten)
Dynamic
Job Manager
Data Lake & Data Vault
Code & Job Generation
R
E
S
T
Ingest
Service
Reporting
Operative
Systeme
Job & Code
Builder
Wiki & Documentation
Microservice Wiki
Micro-
service
Repository
Laufzeitdaten
22. Microservice Wiki: Alle Kernfunktionen eines Data Catalog sowie
weitere Funktionalitäten sind im Microservice Wiki enthalten
Microservice
Wiki
Data Lineage
Versionierung &
Historisierung
Suche & Collaboration
Automatisierter
Data Catalog
24. Zusammenfassung
Clash of Cultures – wir müssen eine agile & unabhängige Microservice-Welt und eine
standardisierte & automatisierte BI Welt zusammenbringen
Schema Registry und die Anreicherung mit weiteren Metadaten ist die Brücke zwischen
unabhängigen Events (der Microservices) und standardisierten Prozessen (in der BI Platform)
Job Generation & Orchestration – eine konsequente Verwendung der prozessualen Metadaten
stellt eine durchgehende Prozessautomatisierung für Streaming Platform, Data Lake & BI sicher
Microservice Wiki – alle Metadaten und das Micoservice Repository ermöglichen einen auto-
matisierten Data Catalog, Suche & Collaboration, Versionierung & Historising und Data Lineage
25. b.telligent
GmbH & Co. KG
Walter-Gropius-Straße 17
80807 München
+49 89 122 281 110
www.btelligent.com
MUC • DUS • FRA • HH • STR • ZHR
Frank Schmidt
Leiter Competence Center
Big Data & CloudOps
frank.schmidt@btelligent.com