Renato Cordeiro Ferreira
https://renatocf.ml
The basic process to learn from data
How data handling can be a challenge
Hard!
Big Data
From batch processing to fast data architectures
From big monoliths to small communicating services
The system responds in a timely manner if at all possible (establish reliable upper bounds to deliver a consistent quality of service)
Responsive
The system stays responsive in the face of failure (resilience is achieved by replication, containment, isolation and delegation)
Resilient
The system stays responsive under varying workload. (react to changes in the input rate by increasing or decreasing resources)
Elastic
The system relies on async message-passing (that ensures loose coupling, isolation and location transparency)
Observability
From on-premise to service meshes in the cloud
Embrace failures instead of trying to prevent them (take advantage of the dynamic nature of running on a cloud platform)
Resiliency
Allow for fast deployments and quick iterations (the same idea behind the agile software development movement)
Agility
Add control of application life cycles from inside of it (instead of relying on external processes and monitors)
Operability
Provide information to know about the application state (add ways of querying the current state of a given application)
Joining the best architectural practices
Cloud-Native Infrastructure
+
Kappa Architecture +
Reactive Microservices
Reactive Machine Learning
By Renato Cordeiro Ferreira
Intelligent Systems: Machine Learning at Scale
Scientific Programmer @ JADS | PhD Candidate @ USP | Co-founder & Coordinator @CodeLab