Actors evolved- Rotem Hermon

distributed matters
distributed mattersdistributed matters conference
Rotem Hermon
@margolis20
Actors, Evolved
#dmconf15
Not THAT
kind of actors.
Multithreading
The problem with multi-threaded concurrency
• Shared memory and state
• Race conditions
• Locks and deadlocks
• Blocking calls
• Hard to understand and maintain
• Not easily distributed
Threads are EVIL!
There has to be a
better way…
The Actor Model
• Formalized in 1973 (Carl Hewitt)
• Concurrency by Message Passing
• Avoids problems of threading and locking
An Actor, Carl Hewitt definition
• The fundamental unit of computation that embodies:
• Processing
• Storage
• Communication
• An actor can:
• Create new Actors
• Send messages to Actors
• Designate how to handle the next message
An Actor
• Lightweight
• Never shares state
• Communicates through asynchronous messages
• Mailbox buffers incoming messages
• Processes one message at a time
An Actor
• Lightweight
• Never shares state
• Communicates through asynchronous messages
• Mailbox buffers incoming messages
• Processes one message at a time
• Single threaded
The Actor Model
• Higher abstraction level
• Simpler concurrent programming model
• Write single-threaded code (easier to understand)
• Concurrency and scale via actor instances
• Maximizes CPU utilization
• Easy to distribute
(Actors are actually
Nanoservices)
Leading Classic Actor Implementations
• Erlang
• Developed in the late 90s by Ericsson for HA telecom exchanges
• Actors are a core language feature
• Akka
• A JVM (Scala/Java) Actor framework library
• Started by Jonas Bonér in 2009
• Became part of Typesafe (company behind Scala)
• .NET port in progress since 2014 (Akka.NET)
Akka Fundamentals
Actors Contains:
• State
• Behavior
• An actor can “switch” its internal behavior
• Mailbox
• Several types of mailboxes
• Children
• An actor is “responsible” for other actors it creates - Supervisor
Akka Fundamentals
• Actors form an hierarchical structure
Akka Fundamentals
• Actor Lifecycle
• Actors needs to be created
and destroyed
• Fault handling is done via
supervision hierarchies
• Several available supervision
strategies
Akka Fundamentals
• Location Transparency
• Actors can be created remotely
• Actors are called via an actor reference, same for local and remote
• Akka Clustering for additional features
Akka Fundamentals
• Dispatchers
• Schedules the message delivery to actors (code execution)
• Can be shared across actors
• Several types of dispatchers and configurations
Akka Fundamentals
• Routers
• An actor that routes messages to other actors
• Several routing strategies
Actors evolved- Rotem Hermon
There has to be a
better way…
Virtual Actors
• A simplified Actors implementation with a higher abstraction
level
• Introduced by Microsoft Research – Project Orleans
• Goals:
• Make distributed application programming easier
• Prefer developer productivity and transparent scalability
• “A programming model and runtime for building cloud native
services”
Virtual Actors
• A Virtual Actor:
always exists
and
never fails
Virtual Actors
Actor types:
• Worker
• An auto-scaling processing unit – multiple instances created by
framework as needed
Virtual Actors
Actor types:
• Single Activation
• Guaranteed to have a single active instance in the cluster
Virtual Actors
Actor types:
• Single Activation
• Guaranteed to have a single active instance in the cluster
• A Stateful application middle-tier!
Virtual Actor Framework
• A runtime providing virtual “actor space”, analogues to
virtual memory
• Handles Actor placement, activation and GC when needed
• Balances resources across the cluster, provides elastic
scalability
Virtual Actor Framework
Node
Node
Node
Node
Node
Node
Virtual Actor Framework
Virtual Actor Framework
User
#21
User
#73
Game
#254 Game
#33
Virtual Actor Framework
Auto Scaling
Virtual Actor Framework
Auto Scaling
Virtual Actor Framework
Auto Scaling
Virtual Actor Framework
Auto Scaling
Virtual Actor Framework
Failure Recovery
Virtual Actor Framework
Failure Recovery
Virtual Actor Framework
Failure Recovery
Simplified Programming Model
• An Actor is a class, implementing an interface with
asynchronous methods
• The caller of an Actor uses the actor interface via a proxy
• Messaging is transparent and handled by the runtime.
Programmers deal with interfaces and methods
Simplified Programming Model
Simplified Programming Model
Use Cases
• Stateful Services
• Smart Cache
• Modeling objects at scale (games, IoT)
• Protecting resources / Aggregations
Virtual Actor Implementations
• Orleans (.NET)
• Started by Microsoft Research in 2011, in production since 2012
• Service high scale services on Azure (Halo 4 cloud services)
• Open sourced in January 2015, active community
• Orbit (Java)
• Developed by BioWare (division of Electronic Arts)
• Inspired by Orleans (“not a port but a re-write”)
• Powering online game services
• Azure Service Fabric (Reliable Actors)
Actors evolved- Rotem Hermon
Virtual Actors (Orleans)
• Focus on simplicity and
productivity
• Implicit lifecycle, handled by
runtime
• Automatic clustering and load
balancing
• No hierarchy, all actors are
directly accessible
• Actor interfaces are regular
interfaces (standard OOP)
Classic Actors (Akka)
• Provide full power (exposing
complexity)
• Explicit lifecycle, handled by
programmer
• Clustering and load balancing
available (but more complex)
• Actors are hierarchical and
accessible by path
• Actors communicates via explicit
message classes
Virtual Actors (Orleans)
Choose if:
• Need a simple model for
distributed applications
• Automatic and straightforward
scaling
• Development team with varied
levels of experience
Classic Actors (Akka)
Choose if:
• Need full power – complex
topologies, fine grain failure
handling, dynamic changing of
behavior, explicit message
handling
• Experienced development team
Thank You!
Rotem Hermon
@margolis20
VP Architecture @ Gigya
1 of 46

Recommended

Massively Scaleable .NET Web Services with Project Orleans by
Massively Scaleable .NET Web Services with Project OrleansMassively Scaleable .NET Web Services with Project Orleans
Massively Scaleable .NET Web Services with Project OrleansNewman Hunter
554 views32 slides
A Brief Intro to Microsoft Orleans by
A Brief Intro to Microsoft OrleansA Brief Intro to Microsoft Orleans
A Brief Intro to Microsoft OrleansUri Goldstein
1.4K views15 slides
Project Orleans - Actor Model framework by
Project Orleans - Actor Model frameworkProject Orleans - Actor Model framework
Project Orleans - Actor Model frameworkNeil Mackenzie
4.4K views25 slides
Actors Set the Stage for Project Orleans by
Actors Set the Stage for Project OrleansActors Set the Stage for Project Orleans
Actors Set the Stage for Project Orleanscjmyers
1.8K views30 slides
"Walk in a distributed systems park with Orleans" Евгений Бобров by
"Walk in a distributed systems park with Orleans" Евгений Бобров"Walk in a distributed systems park with Orleans" Евгений Бобров
"Walk in a distributed systems park with Orleans" Евгений БобровFwdays
2.3K views85 slides
Orleans – a “cloud native” runtime built for #azure by
Orleans – a “cloud native” runtime built for #azureOrleans – a “cloud native” runtime built for #azure
Orleans – a “cloud native” runtime built for #azureBrisebois
1.5K views59 slides

More Related Content

What's hot

RabbitMQ and EasyNetQ by
RabbitMQ and EasyNetQRabbitMQ and EasyNetQ
RabbitMQ and EasyNetQKen Taylor
2.6K views22 slides
Standard libraries with_xamarin by
Standard libraries with_xamarinStandard libraries with_xamarin
Standard libraries with_xamarinKen Tucker
33 views13 slides
Developing distributed applications with Akka and Akka Cluster by
Developing distributed applications with Akka and Akka ClusterDeveloping distributed applications with Akka and Akka Cluster
Developing distributed applications with Akka and Akka ClusterKonstantin Tsykulenko
570 views32 slides
Hashicorp Products Overview by
Hashicorp Products OverviewHashicorp Products Overview
Hashicorp Products OverviewUchit Vyas ☁
445 views21 slides
Akkurate Akka by
Akkurate AkkaAkkurate Akka
Akkurate AkkaYurii Ostapchuk
109 views43 slides
Indic threads pune12-typesafe stack software development on the jvm by
Indic threads pune12-typesafe stack software development on the jvmIndic threads pune12-typesafe stack software development on the jvm
Indic threads pune12-typesafe stack software development on the jvmIndicThreads
723 views33 slides

What's hot(20)

RabbitMQ and EasyNetQ by Ken Taylor
RabbitMQ and EasyNetQRabbitMQ and EasyNetQ
RabbitMQ and EasyNetQ
Ken Taylor2.6K views
Standard libraries with_xamarin by Ken Tucker
Standard libraries with_xamarinStandard libraries with_xamarin
Standard libraries with_xamarin
Ken Tucker33 views
Developing distributed applications with Akka and Akka Cluster by Konstantin Tsykulenko
Developing distributed applications with Akka and Akka ClusterDeveloping distributed applications with Akka and Akka Cluster
Developing distributed applications with Akka and Akka Cluster
Indic threads pune12-typesafe stack software development on the jvm by IndicThreads
Indic threads pune12-typesafe stack software development on the jvmIndic threads pune12-typesafe stack software development on the jvm
Indic threads pune12-typesafe stack software development on the jvm
IndicThreads723 views
Rebooting design in RavenDB by Oren Eini
Rebooting design in RavenDBRebooting design in RavenDB
Rebooting design in RavenDB
Oren Eini35.9K views
Staying friendly with the gc by Oren Eini
Staying friendly with the gcStaying friendly with the gc
Staying friendly with the gc
Oren Eini35.3K views
Containerize all the things! by Mike Melusky
Containerize all the things!Containerize all the things!
Containerize all the things!
Mike Melusky409 views
Solr security frameworks by Anshum Gupta
Solr security frameworksSolr security frameworks
Solr security frameworks
Anshum Gupta3K views
Highly Available, Elastic and Self-healing Moodle on OpenStack by Enovation
Highly Available, Elastic and Self-healing Moodle on OpenStackHighly Available, Elastic and Self-healing Moodle on OpenStack
Highly Available, Elastic and Self-healing Moodle on OpenStack
Enovation501 views
SaltStack - An open source software story by SaltStack
SaltStack - An open source software storySaltStack - An open source software story
SaltStack - An open source software story
SaltStack3.8K views
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams by Josh Carlisle
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless DreamsRainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Josh Carlisle115 views
AtlasCamp 2014: Preparing Your Plugin for JIRA Data Center by Atlassian
AtlasCamp 2014: Preparing Your Plugin for JIRA Data CenterAtlasCamp 2014: Preparing Your Plugin for JIRA Data Center
AtlasCamp 2014: Preparing Your Plugin for JIRA Data Center
Atlassian1.3K views
RavenDB 4.0 by Oren Eini
RavenDB 4.0RavenDB 4.0
RavenDB 4.0
Oren Eini1.4K views
Keynote Yonik Seeley & Steve Rowe lucene solr roadmap by lucenerevolution
Keynote   Yonik Seeley & Steve Rowe lucene solr roadmapKeynote   Yonik Seeley & Steve Rowe lucene solr roadmap
Keynote Yonik Seeley & Steve Rowe lucene solr roadmap
lucenerevolution1.2K views

Similar to Actors evolved- Rotem Hermon

Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya by
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaActors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaCodemotion Tel Aviv
275 views35 slides
Akka.Net Overview by
Akka.Net OverviewAkka.Net Overview
Akka.Net OverviewGeoffrey Vandiest
153 views25 slides
Typesafe stack - Scala, Akka and Play by
Typesafe stack - Scala, Akka and PlayTypesafe stack - Scala, Akka and Play
Typesafe stack - Scala, Akka and PlayLuka Zakrajšek
3.3K views41 slides
xaml overview by
xaml overviewxaml overview
xaml overviewSanat Maharjan
1.6K views33 slides
Rethinking the debugger by
Rethinking the debuggerRethinking the debugger
Rethinking the debuggerIulian Dragos
632 views34 slides
The Economies of Scaling Software by
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling SoftwareAbdelmonaim Remani
3.4K views84 slides

Similar to Actors evolved- Rotem Hermon(20)

Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya by Codemotion Tel Aviv
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaActors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Typesafe stack - Scala, Akka and Play by Luka Zakrajšek
Typesafe stack - Scala, Akka and PlayTypesafe stack - Scala, Akka and Play
Typesafe stack - Scala, Akka and Play
Luka Zakrajšek3.3K views
The economies of scaling software - Abdel Remani by jaxconf
The economies of scaling software - Abdel RemaniThe economies of scaling software - Abdel Remani
The economies of scaling software - Abdel Remani
jaxconf346 views
VoltDB and Erlang - Tech planet 2012 by Eonblast
VoltDB and Erlang - Tech planet 2012VoltDB and Erlang - Tech planet 2012
VoltDB and Erlang - Tech planet 2012
Eonblast4.4K views
Container Orchestration for .NET Developers by Mike Melusky
Container Orchestration for .NET DevelopersContainer Orchestration for .NET Developers
Container Orchestration for .NET Developers
Mike Melusky455 views
Intro to elixir and phoenix by Jared Smith
Intro to elixir and phoenixIntro to elixir and phoenix
Intro to elixir and phoenix
Jared Smith3.8K views
.Net programming with C# by NguynSang29
.Net programming with C#.Net programming with C#
.Net programming with C#
NguynSang29151 views
CSP: Huh? And Components by Daniel Fagnan
CSP: Huh? And ComponentsCSP: Huh? And Components
CSP: Huh? And Components
Daniel Fagnan245 views
8. Software Development Security by Sam Bowne
8. Software Development Security8. Software Development Security
8. Software Development Security
Sam Bowne22 views
8. Software Development Security by Sam Bowne
8. Software Development Security8. Software Development Security
8. Software Development Security
Sam Bowne2.1K views

More from distributed matters

Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimann by
Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik RüttimannCloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimann
Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimanndistributed matters
1.3K views20 slides
What and Why and How: Apache Drill ! - Tugdual Grall by
What and Why and How: Apache Drill ! - Tugdual GrallWhat and Why and How: Apache Drill ! - Tugdual Grall
What and Why and How: Apache Drill ! - Tugdual Gralldistributed matters
731 views40 slides
NoSQL in Financial Industry - Pierre Bittner by
NoSQL in Financial Industry - Pierre BittnerNoSQL in Financial Industry - Pierre Bittner
NoSQL in Financial Industry - Pierre Bittnerdistributed matters
781 views18 slides
Functional Operations - Susan Potter by
Functional Operations - Susan PotterFunctional Operations - Susan Potter
Functional Operations - Susan Potterdistributed matters
912 views76 slides
Joins in a distributed world - Lucian Precup by
Joins in a distributed world - Lucian Precup Joins in a distributed world - Lucian Precup
Joins in a distributed world - Lucian Precup distributed matters
745 views31 slides
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergen by
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike SteenbergenMeet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergen
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergendistributed matters
2.1K views54 slides

More from distributed matters(17)

Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimann by distributed matters
Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik RüttimannCloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimann
Cloud Apps - Running Fully Distributed on Mobile Devices - Dominik Rüttimann
distributed matters1.3K views
What and Why and How: Apache Drill ! - Tugdual Grall by distributed matters
What and Why and How: Apache Drill ! - Tugdual GrallWhat and Why and How: Apache Drill ! - Tugdual Grall
What and Why and How: Apache Drill ! - Tugdual Grall
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergen by distributed matters
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike SteenbergenMeet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergen
Meet Spilo, Zalando’s HIGH-AVAILABLE POSTGRESQL CLUSTER - Feike Steenbergen
distributed matters2.1K views
Jepsen V - Kyle Kingsbury - Key Note distributed matters Berlin 2015 by distributed matters
Jepsen V - Kyle Kingsbury - Key Note distributed matters Berlin 2015Jepsen V - Kyle Kingsbury - Key Note distributed matters Berlin 2015
Jepsen V - Kyle Kingsbury - Key Note distributed matters Berlin 2015
Replication and Synchronization Algorithms for Distributed Databases - Lena W... by distributed matters
Replication and Synchronization Algorithms for Distributed Databases - Lena W...Replication and Synchronization Algorithms for Distributed Databases - Lena W...
Replication and Synchronization Algorithms for Distributed Databases - Lena W...
distributed matters3.6K views
A tale of queues — from ActiveMQ over Hazelcast to Disque - Philipp Krenn by distributed matters
A tale of queues — from ActiveMQ over Hazelcast to Disque - Philipp KrennA tale of queues — from ActiveMQ over Hazelcast to Disque - Philipp Krenn
A tale of queues — from ActiveMQ over Hazelcast to Disque - Philipp Krenn
distributed matters1.9K views
NoSQL's biggest lie: SQL never went away - Martin Esmann by distributed matters
NoSQL's biggest lie: SQL never went away - Martin EsmannNoSQL's biggest lie: SQL never went away - Martin Esmann
NoSQL's biggest lie: SQL never went away - Martin Esmann
NoSQL meets Microservices - Michael Hackstein by distributed matters
NoSQL meets Microservices - Michael HacksteinNoSQL meets Microservices - Michael Hackstein
NoSQL meets Microservices - Michael Hackstein
distributed matters1.5K views
No Free Lunch, Indeed: Three Years of Microservices at SoundCloud - Phil Calcado by distributed matters
No Free Lunch, Indeed: Three Years of Microservices at SoundCloud - Phil CalcadoNo Free Lunch, Indeed: Three Years of Microservices at SoundCloud - Phil Calcado
No Free Lunch, Indeed: Three Years of Microservices at SoundCloud - Phil Calcado
Disque: a detailed overview of the distributed implementation - Salvatore San... by distributed matters
Disque: a detailed overview of the distributed implementation - Salvatore San...Disque: a detailed overview of the distributed implementation - Salvatore San...
Disque: a detailed overview of the distributed implementation - Salvatore San...
Microservices - stress-free and without increased heart-attack risk - Uwe Fri... by distributed matters
Microservices - stress-free and without increased heart-attack risk - Uwe Fri...Microservices - stress-free and without increased heart-attack risk - Uwe Fri...
Microservices - stress-free and without increased heart-attack risk - Uwe Fri...
Microservices with Netflix OSS & Spring Cloud - Arnaud Cogoluègnes by distributed matters
 Microservices with Netflix OSS & Spring Cloud - Arnaud Cogoluègnes Microservices with Netflix OSS & Spring Cloud - Arnaud Cogoluègnes
Microservices with Netflix OSS & Spring Cloud - Arnaud Cogoluègnes

Recently uploaded

3196 The Case of The East River by
3196 The Case of The East River3196 The Case of The East River
3196 The Case of The East RiverErickANDRADE90
16 views4 slides
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx by
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptxDataScienceConferenc1
5 views12 slides
Ukraine Infographic_22NOV2023_v2.pdf by
Ukraine Infographic_22NOV2023_v2.pdfUkraine Infographic_22NOV2023_v2.pdf
Ukraine Infographic_22NOV2023_v2.pdfAnastosiyaGurin
1.4K views3 slides
CRM stick or twist.pptx by
CRM stick or twist.pptxCRM stick or twist.pptx
CRM stick or twist.pptxinfo828217
10 views16 slides
CRM stick or twist workshop by
CRM stick or twist workshopCRM stick or twist workshop
CRM stick or twist workshopinfo828217
9 views16 slides
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docx by
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docxRIO GRANDE SUPPLY COMPANY INC, JAYSON.docx
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docxJaysonGarabilesEspej
6 views3 slides

Recently uploaded(20)

3196 The Case of The East River by ErickANDRADE90
3196 The Case of The East River3196 The Case of The East River
3196 The Case of The East River
ErickANDRADE9016 views
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx by DataScienceConferenc1
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx
[DSC Europe 23] Zsolt Feleki - Machine Translation should we trust it.pptx
Ukraine Infographic_22NOV2023_v2.pdf by AnastosiyaGurin
Ukraine Infographic_22NOV2023_v2.pdfUkraine Infographic_22NOV2023_v2.pdf
Ukraine Infographic_22NOV2023_v2.pdf
AnastosiyaGurin1.4K views
CRM stick or twist.pptx by info828217
CRM stick or twist.pptxCRM stick or twist.pptx
CRM stick or twist.pptx
info82821710 views
CRM stick or twist workshop by info828217
CRM stick or twist workshopCRM stick or twist workshop
CRM stick or twist workshop
info8282179 views
Organic Shopping in Google Analytics 4.pdf by GA4 Tutorials
Organic Shopping in Google Analytics 4.pdfOrganic Shopping in Google Analytics 4.pdf
Organic Shopping in Google Analytics 4.pdf
GA4 Tutorials14 views
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx by DataScienceConferenc1
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx
SUPER STORE SQL PROJECT.pptx by khan888620
SUPER STORE SQL PROJECT.pptxSUPER STORE SQL PROJECT.pptx
SUPER STORE SQL PROJECT.pptx
khan88862012 views
Cross-network in Google Analytics 4.pdf by GA4 Tutorials
Cross-network in Google Analytics 4.pdfCross-network in Google Analytics 4.pdf
Cross-network in Google Analytics 4.pdf
GA4 Tutorials6 views
Survey on Factuality in LLM's.pptx by NeethaSherra1
Survey on Factuality in LLM's.pptxSurvey on Factuality in LLM's.pptx
Survey on Factuality in LLM's.pptx
NeethaSherra16 views
CRIJ4385_Death Penalty_F23.pptx by yvettemm100
CRIJ4385_Death Penalty_F23.pptxCRIJ4385_Death Penalty_F23.pptx
CRIJ4385_Death Penalty_F23.pptx
yvettemm1006 views
Data Journeys Hard Talk workshop final.pptx by info828217
Data Journeys Hard Talk workshop final.pptxData Journeys Hard Talk workshop final.pptx
Data Journeys Hard Talk workshop final.pptx
info82821710 views
Data about the sector workshop by info828217
Data about the sector workshopData about the sector workshop
Data about the sector workshop
info82821712 views

Actors evolved- Rotem Hermon