Discover concrete architectural patterns to use in-memory systems (like Infinispan, Redis etc) where it makes a difference. They are versatile tools that can be used in a myriad of ways but unlike duct tape and WD-40, it’s not intuitive when and how to use them.
4. Insightful application
Observe - collect
data
Orient - Put in
context
Decide - select
course of action
Act - Do it
Continuous improvement loop
Data services
Event stream
Data analysis
Iterative storage
Reasoning, decision
models and
optimization
Execution engine
19. Analytics and Spark
Computation out of Spark
Source of data
Source of events
Immutable RDD
Fast RDD caching
Spark cluster
Infinispan
Cassandra
Hive
RDBMS
App 1
20. Syncing grids
Active / Active
Data synced between sites
One grid per usage
OLTP
Analytics
App 1
App 2
Infinispan
Infinispan
Active / active
cross site replication
Datacenter 1
Datacenter 2
Load
balancer
21. Pay attention, be reactive
Reactive application
Reactive microservice
Also look at Debezium
App 1
“Reactive app” 2
Infinispan
Change event
“Reactive app” 1
Change event
22. Continuous query
Reactive to data changes
Index the query, not the data
from User u where u.age >18 and u.country = ‘France’
from User u where u.age >18 and u.hasSnapshat = true
from User u where u.email contains ‘yahoo.com’
{ “country”: “France”,
“age”: 17,
“email”: “e@gmail.com”,
“hasSnapshat”: true }
{ “country”: “France”,
“age”: 19,
“email”: “e@gmail.com”,
“hasSnapshat”: true }
=>
25. Debezium and CDC
Change Data Capture
Transforms datastores into data change events
No change to existing apps and datastores
Add features as separate apps
Decorrelate event consumers (each at its own pace)
26. Data are like Gremlins but good
Observe - collect
data
Orient - Put in
context
Decide - select
course of action
Act - Do it
Continuous improvement loop
28. Credits
engineer by Wilson Joseph from the Noun
Project
panel by gira Park from the Noun Project
Approve by Aha-Soft from the Noun Project
Database sharing byYuguDesign from the Noun
Project
ram by Andrea Rizzato from the Noun Project
Database Search by Nimal Raj from the Noun
Project
Cloud Analytics by Kevin Augustine LO from the
Noun Project
Broken Computer by Dan Hetteix from the
Noun Project
data search by Gregor Črešnar from the Noun
Project
Server by Creative Stall from the Noun Project
Network by Creative Stall from the Noun
Project
transformation by Felipe Perucho from the
Noun Project
analytics by Roman Kovbasyuk from the Noun
Project
Server by Designify.me from the Noun Project