SlideShare a Scribd company logo
© 2017 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Rule-based dispatching of events
to a serverless services armada
Daniel Buchholz
Dev Manager / Cloud Architect - Düsseldorf
@danbdo
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
GHX is all about supplier chain processes in healthcare
Hospitals
Groups
Suppliers
Mfr‘s
Distributors
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
What‘s was the problem, anyway?
Public Domain, https://commons.wikimedia.org/w/index.php?curid=868126
Individual catalog systems in all
(current) target markets
Each with different schema
All supposed to talk to each other
All doing a reasonably similar job
Operational efficiencies
Mappings / Conversions
Expandability
Catalog management
© 2017 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Legacy systems
this
that
More
stuff
Squeezed
in...
WHOA!
add
modify
delete
Legacy catalog processing
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
The Path Forward
consume
process
report
CSV Source type A
Source type BGS1
XML
JSON
Source type C
Suppliers
Groups
Hospitals
InboundConsumers/Processing
...
...
...
...
BI BI
...
...
...
...
...
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
The Path Forward
consume
process
report
CSV Source type A
Source type BGS1
XML
JSON
Source type C
Suppliers
Groups
Hospitals
InboundConsumers/Processing
...
...
...
...
BI BI
...
...
...
...
...
ETL
Queueing / Mapping / Routing
Single Source Of Truth
events
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Consumers/Processing
Deep dive
consume
process
report
CSV Source type A
Source type BGS1
XML
JSON
Source type C
Suppliers
Groups
Hospitals
Inbound
...
...
...
...
BI BI
...
...
...
...
...
ETL
Queueing / Mapping / Routing
Single Source Of Truth
events
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
„Each with different schema“
Catalog A
Att A: abc
Att B: def
Att C: ghi
Att D: jkl
Catalog B
Att P: 4711
Att B: blah
Att D: stuff
Catalog C
Att W: key1
Att X: key2
Att Y: foo
Att Z: bar
>> Schema-less data store
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
„Each with different schema“
Catalog A
Att A: abc
Att B: def
Att C: ghi
Att D: jkl
Pkey: hash(A)
Catalog B
Att P: 4711
Att B: blah
Att D: stuff
Pkey: hash(P)
Catalog C
Att W: key1
Att X: key2
Att Y: foo
Att Z: bar
Pkey:hash(W/X)
>> Infer internal Pkey values
>> DynamoDB
>> Schema-less data store
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
ETL
files de-dup delta
Item hash
Item
events
map
Item key
Schema
very specific very generic
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Consumers/Processing
Deep dive
consume
process
report
CSV Source type A
Source type BGS1
XML
JSON
Source type C
Suppliers
Groups
Hospitals
Inbound
...
...
...
...
BI BI
...
...
...
...
...
ETL
Queueing / Mapping / Routing
Single Source Of Truth
events
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Dispatching item events
catalog data
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Don‘t want to deploy full stack for each change
Dispatching item events
catalog data
Dispatcher
Function
„All doing a reasonably similar job“
>> Migrate tasks from legacy
>> Keep it open to changes
>> Static workflows wouldn‘t work
>> need rules engine
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Dispatcher Config
catalog data
Dispatcher
Function Dispatcher
Config Store
2 - Description
1 - Name
3 - Conditions
4 – Action(s)
success / failure
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Dispatcher Services
catalog data
Dispatcher
Function Dispatcher
Config Store
...Svc A Svc DSvc B Svc C
Search..
Engines
A Dispatcher – not a Broker >> fire & forgetHighly de-coupled
>> limit blast radius
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Dispatcher Endpoints
catalog data
Dispatcher
Function Dispatcher
Config Store
...Svc A Svc DSvc B Svc C
Search..
Engines
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Audits / Traces
v4 v3/v4 v2/v3 v1/v2 v0/v1
OPS teams need visibility >> full audit / full trace
DEV probably too
live audit
Causes & Effects
Svc A trace
Svc B trace
Consumer X
Consumer Y
Svc B trace
Svc C trace
Consumer Y
Svc A trace
BI A
BI B
Consumer X
Svc A trace
Svc B trace
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Core Services
catalog data
Dispatcher
Function
...Svc A Svc DSvc B Svc C
Search..
Engines
Audit log
Trace log
Core Services
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
Versioning/Deployment options
80/20
Svc A Svc D Svc E
Svc E2Svc A2
In your face
Svc D2
Traffic shifting Parallel / Audit
© 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute.
So...
This is our architecture
Happy to hear feedback

More Related Content

ODP
Doc store
PDF
Massively Scalable Computational Finance with SciDB
PPTX
Big Analytics Without Big Hassles
PDF
DataXDay - A data scientist journey to industrialization of machine learning
PPTX
DataTalks #4: Построение хранилища данных на основе платформы hadoop / Игорь ...
PDF
The Flow of Data - Managing Data from Ingestion Through Trial
PPTX
Alexander Pavlenko, Java Software Engineer, DataArt.
PPTX
Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix...
Doc store
Massively Scalable Computational Finance with SciDB
Big Analytics Without Big Hassles
DataXDay - A data scientist journey to industrialization of machine learning
DataTalks #4: Построение хранилища данных на основе платформы hadoop / Игорь ...
The Flow of Data - Managing Data from Ingestion Through Trial
Alexander Pavlenko, Java Software Engineer, DataArt.
Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix...

Similar to Rule-based dispatching of events to a serverless services armada (20)

PDF
Enterprise Data Lakes
PDF
Hortonworks Technical Workshop: What's New in HDP 2.3
PDF
Hive 3 a new horizon
PDF
MySQL Document Store (Oracle Code Warsaw 2018)
PPTX
Hive 3 - a new horizon
PDF
INV_Convergence_Webinar.pdf
PDF
Oracle Code Event - MySQL JSON Document Store
PDF
Industrial IoT bootcamp
PDF
One bridge to connect them all. Oracle GoldenGate for Big Data.UKOUG Tech 2018
PDF
Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...
PPTX
Analysis of historical movie data by BHADRA
PDF
From Mainframe to Microservices with Pivotal Platform and Kafka: Bridging the...
PDF
Apache Flink Adoption at Shopify
PDF
Pivotal Big Data Suite: A Technical Overview
PDF
The Role of Blockchain in Enterprise Commerce and Product Content Management
PDF
Integration Patterns for Big Data Applications
PDF
SAP HANA SPS10- Enterprise Information Management
PPTX
Pentaho big data camp - 5 min
PPTX
Apache kylin 2.0: from classic olap to real-time data warehouse
PDF
Pivotal Digital Transformation Forum: Journey to Become a Data-Driven Enterprise
Enterprise Data Lakes
Hortonworks Technical Workshop: What's New in HDP 2.3
Hive 3 a new horizon
MySQL Document Store (Oracle Code Warsaw 2018)
Hive 3 - a new horizon
INV_Convergence_Webinar.pdf
Oracle Code Event - MySQL JSON Document Store
Industrial IoT bootcamp
One bridge to connect them all. Oracle GoldenGate for Big Data.UKOUG Tech 2018
Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...
Analysis of historical movie data by BHADRA
From Mainframe to Microservices with Pivotal Platform and Kafka: Bridging the...
Apache Flink Adoption at Shopify
Pivotal Big Data Suite: A Technical Overview
The Role of Blockchain in Enterprise Commerce and Product Content Management
Integration Patterns for Big Data Applications
SAP HANA SPS10- Enterprise Information Management
Pentaho big data camp - 5 min
Apache kylin 2.0: from classic olap to real-time data warehouse
Pivotal Digital Transformation Forum: Journey to Become a Data-Driven Enterprise
Ad

Recently uploaded (20)

PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
System and Network Administration Chapter 2
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Designing Intelligence for the Shop Floor.pdf
PPTX
Introduction to Artificial Intelligence
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Transform Your Business with a Software ERP System
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Odoo Companies in India – Driving Business Transformation.pdf
Understanding Forklifts - TECH EHS Solution
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Nekopoi APK 2025 free lastest update
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
System and Network Administration Chapter 2
Operating system designcfffgfgggggggvggggggggg
Designing Intelligence for the Shop Floor.pdf
Introduction to Artificial Intelligence
VVF-Customer-Presentation2025-Ver1.9.pptx
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
2025 Textile ERP Trends: SAP, Odoo & Oracle
Transform Your Business with a Software ERP System
Adobe Illustrator 28.6 Crack My Vision of Vector Design
wealthsignaloriginal-com-DS-text-... (1).pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Ad

Rule-based dispatching of events to a serverless services armada

  • 1. © 2017 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Rule-based dispatching of events to a serverless services armada Daniel Buchholz Dev Manager / Cloud Architect - Düsseldorf @danbdo
  • 2. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. GHX is all about supplier chain processes in healthcare Hospitals Groups Suppliers Mfr‘s Distributors
  • 3. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. What‘s was the problem, anyway? Public Domain, https://commons.wikimedia.org/w/index.php?curid=868126 Individual catalog systems in all (current) target markets Each with different schema All supposed to talk to each other All doing a reasonably similar job Operational efficiencies Mappings / Conversions Expandability Catalog management
  • 4. © 2017 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Legacy systems this that More stuff Squeezed in... WHOA! add modify delete Legacy catalog processing
  • 5. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. The Path Forward consume process report CSV Source type A Source type BGS1 XML JSON Source type C Suppliers Groups Hospitals InboundConsumers/Processing ... ... ... ... BI BI ... ... ... ... ...
  • 6. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. The Path Forward consume process report CSV Source type A Source type BGS1 XML JSON Source type C Suppliers Groups Hospitals InboundConsumers/Processing ... ... ... ... BI BI ... ... ... ... ... ETL Queueing / Mapping / Routing Single Source Of Truth events
  • 7. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Consumers/Processing Deep dive consume process report CSV Source type A Source type BGS1 XML JSON Source type C Suppliers Groups Hospitals Inbound ... ... ... ... BI BI ... ... ... ... ... ETL Queueing / Mapping / Routing Single Source Of Truth events
  • 8. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. „Each with different schema“ Catalog A Att A: abc Att B: def Att C: ghi Att D: jkl Catalog B Att P: 4711 Att B: blah Att D: stuff Catalog C Att W: key1 Att X: key2 Att Y: foo Att Z: bar >> Schema-less data store
  • 9. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. „Each with different schema“ Catalog A Att A: abc Att B: def Att C: ghi Att D: jkl Pkey: hash(A) Catalog B Att P: 4711 Att B: blah Att D: stuff Pkey: hash(P) Catalog C Att W: key1 Att X: key2 Att Y: foo Att Z: bar Pkey:hash(W/X) >> Infer internal Pkey values >> DynamoDB >> Schema-less data store
  • 10. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. ETL files de-dup delta Item hash Item events map Item key Schema very specific very generic
  • 11. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Consumers/Processing Deep dive consume process report CSV Source type A Source type BGS1 XML JSON Source type C Suppliers Groups Hospitals Inbound ... ... ... ... BI BI ... ... ... ... ... ETL Queueing / Mapping / Routing Single Source Of Truth events
  • 12. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Dispatching item events catalog data
  • 13. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Don‘t want to deploy full stack for each change Dispatching item events catalog data Dispatcher Function „All doing a reasonably similar job“ >> Migrate tasks from legacy >> Keep it open to changes >> Static workflows wouldn‘t work >> need rules engine
  • 14. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Dispatcher Config catalog data Dispatcher Function Dispatcher Config Store 2 - Description 1 - Name 3 - Conditions 4 – Action(s) success / failure
  • 15. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Dispatcher Services catalog data Dispatcher Function Dispatcher Config Store ...Svc A Svc DSvc B Svc C Search.. Engines A Dispatcher – not a Broker >> fire & forgetHighly de-coupled >> limit blast radius
  • 16. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Dispatcher Endpoints catalog data Dispatcher Function Dispatcher Config Store ...Svc A Svc DSvc B Svc C Search.. Engines
  • 17. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Audits / Traces v4 v3/v4 v2/v3 v1/v2 v0/v1 OPS teams need visibility >> full audit / full trace DEV probably too live audit Causes & Effects Svc A trace Svc B trace Consumer X Consumer Y Svc B trace Svc C trace Consumer Y Svc A trace BI A BI B Consumer X Svc A trace Svc B trace
  • 18. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Core Services catalog data Dispatcher Function ...Svc A Svc DSvc B Svc C Search.. Engines Audit log Trace log Core Services
  • 19. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. Versioning/Deployment options 80/20 Svc A Svc D Svc E Svc E2Svc A2 In your face Svc D2 Traffic shifting Parallel / Audit
  • 20. © 2018 Global Healthcare Exchange, LLC. All rights reserved. GHX proprietary information. Do not copy or distribute. So... This is our architecture Happy to hear feedback

Editor's Notes

  • #2: „This is our architecture“
  • #3: Just Context
  • #4: + theoretically have to support new(ish) GLOBAL systems that use catalog data from multiple regional CMSs
  • #6: No ZigZag of files!
  • #11: Individual services
  • #13: Thought about calling him JEFF
  • #18: CorellationIDs