SlideShare a Scribd company logo
1 of 16
Download to read offline
Ultra-scalable Architectures for
Telecommunications and Web 2.0
Services



Mauricio Arango
Bernd Kaponig

Sun Microsystems


October 27, 2009
Web 2.0 Impact on Communications
          Applications
• Information-sharing, social media services such
  as Facebook, Twitter – experiencing fast &
  enormous growth
• Growth handled via horizontal scaling vs.
  vertical scaling – no forklift upgrades – agile
  and lower-cost
• Involves handling parallelism challenge in
  telecommunications service software

                                                    2
Impact of New Communications
         Applications - cont.
• Telecom service providers launching Web 2.0-
  like services
  – Nokia Ovi
  – Vodafone 360
• Expansion of services based on telecom
  network advantages - event-driven
  – Location-based
  – M2M
  – Metered realtime billing
  – SLA management

                                                 3
Parallel Application Architecture
      Model (server side)
               ●   Parallelize – breakup
                   into pieces
                   –   Application
                   –   Data
               ●   Requires middleware
                   –   Coordination
                       (communication)
                   –   Data management


                                           4
Price of Horizontal Scaling
• Requires software that can be distributed and has high degree
  of parallelism -
   – Applications broken into components
   – Components run in parallel in a distributed processing infrastructure



  Monolithic application                Parallel application




                                                                             5
Good News – Event-driven apps
           have high parallelism
• Web and                    • Data stream-driven
  telecommunications         • Event-based coordination
  applications are event-      pattern
  driven
  – User-generated events
  – Monitoring and sensing
    events
  – Network events




                                                      6
Other Parallel Application Design
                Patterns
                                               Worker 1


• Master-worker             Master             Worker 2




                                               Worker N



• Pipeline                 Phase
                           Stage 1   Stage 2               Stage N
                           1




                           Phase
                           Stage 1
 • Hybrid                  1         Stage 2              Stage N


                  Master   Phase
                           St
                           1         Stage 2              Stage N




                           Phase
                           Stage 1
                           1         Stage 2              Stage N
                                                                     7
Communications Middleware
• Coordination – interaction required when an
  application is split into multiple components
    Direct communication                          Indirect communication




•   Request-response, Notification            •   A node only needs to know about the
•                                                 intermediate entity
    Tightly coupled – every node needs to
    know about other nodes' address and       •   Space decoupling
    functions – non-scalable complexity for   •   Time decoupling
    developer
                                              •   Three mechanisms
•   Poor at handling node failures
                                                    – Tuple Space
                                                    – Message Queue
                                                    – Publish/Subscribe                 8
Tuple Space
• Invented by David Gelernter in early 80s •        Space & time decoupling across
• Simple functionality – via four operations        components
   – out()- deposits tuple                   •      Shared associative object (tuple)
   – in()- removes matching tuple                   store
   – read() - reads matching tuple           •      Inherent load-balancing
   – notify() - registers for notification •        Event processing framework
     on matching tuple                       •      Natural fit with business
                                                    processes



                           Component 2                   Component 3
   Component 1
                                                                               Component 4

                           in(     )     out(   )
    out(         )                                     read(      )
                                                                       read(       )



                                 Tuple Space                                                 9
Message Queue
• Intermediate entity: set of queues
• Communicating components only need to know queue names
• Basic functions:
   – sendMsg(queueName, message)
   – getMsg(queueName)
• Can be mapped as a subset of Tuple Space using:
   – out(queueName, message) for sendMsg
   – in(queueName) for getMsg



             Component 1
                                                         Component 2
                    sendMsg(queue-1,   )
                                                             getMsg(queue-1)
      sendMsg(queue-2,   )
                                       Message queue 1
                                                                       Component 3


                                                                           getMsg(queue-2)
                             Message queue 2


                                                                                             10
Publish/Subscribe
• Intermediate entity: broker
• Basic functions:
  – subscribe(template)
  – publish(message)
• Can be mapped as a subset of Tuple Space
  using:
  – out(tuple) for publish()
  – notify(template) for subscribe()




                                             11
Surge of Indirect Messaging
                   Middleware
●   Blitz (JavaSpaces)
●   Gigaspaces
●   Rinda
●   Gruple
●   Semispace
●   Open source JMS
     –   Sun Open Message Queue
     –   Apache ActiveMQ
●   Amazon Simple Message Queue Service
●   Rabbit MQ – based AMQP standard
●   Gearman
●   XMPP Pub/Sub
●   Pubsubhubbub                          12
Data Management Middleware
• Scaling via parallelization and
  caching
• Parallelization
   – Replication – read-most data
   – Partitioning/sharding – write &
     read
• Distributed caching
   – Shares scaling techniques with
     communications middleware
   – Use of Distributed Hash Tables
     (DHT)




                                       13
Use Case – Twitter-like, many-to-
   many Messaging System
               • Process new message
                  – out(message_list_update, follower,
                    message_publisher, message_content)
               • Update message list
                  – in(message_list_update, ?r, ?t)
                  – Put(new message)
               • Retrieve message list
                  – get(messages)




                                                  14
Conclusions
• Horizontal scalability requires parallel application
  architectures from day one
• Parallelization involves simple communications
  middleware models & simple APIs
  – Tuple Space simplest & superset model
• Distributed caching – scalable foundation for both
  communications and data management middleware
• Parallel application architectures key in
  telecommunications evolution


                                                         15
Additional information
●   Paper (includes references):
    http://blogs.sun.com/arango/resource/ICIN-09-Ultra
●   Blog: http://blogs.sun.com/arango/




                                                 16

More Related Content

What's hot

Bft mr-clouds-of-clouds-discco2012 - navtalk
Bft mr-clouds-of-clouds-discco2012 - navtalkBft mr-clouds-of-clouds-discco2012 - navtalk
Bft mr-clouds-of-clouds-discco2012 - navtalkPedro (A. R. S.) Costa
 
Pregel reading circle
Pregel reading circlePregel reading circle
Pregel reading circlecharlingual
 
Physical organization of parallel platforms
Physical organization of parallel platformsPhysical organization of parallel platforms
Physical organization of parallel platformsSyed Zaid Irshad
 
KIISE:SIGDB Workshop presentation.
KIISE:SIGDB Workshop presentation.KIISE:SIGDB Workshop presentation.
KIISE:SIGDB Workshop presentation.Kyong-Ha Lee
 
3.5 SDN CloudStack Developer Day
3.5  SDN CloudStack Developer Day3.5  SDN CloudStack Developer Day
3.5 SDN CloudStack Developer DayKimihiko Kitase
 
Lecture 7 cuda execution model
Lecture 7   cuda execution modelLecture 7   cuda execution model
Lecture 7 cuda execution modelVajira Thambawita
 
Limitations of memory system performance
Limitations of memory system performanceLimitations of memory system performance
Limitations of memory system performanceSyed Zaid Irshad
 
Full introduction to_parallel_computing
Full introduction to_parallel_computingFull introduction to_parallel_computing
Full introduction to_parallel_computingSupasit Kajkamhaeng
 
Communication model of parallel platforms
Communication model of parallel platformsCommunication model of parallel platforms
Communication model of parallel platformsSyed Zaid Irshad
 
June 08 MS3
June 08 MS3June 08 MS3
June 08 MS3Samimvez
 
Pretzel: optimized Machine Learning framework for low-latency and high throug...
Pretzel: optimized Machine Learning framework for low-latency and high throug...Pretzel: optimized Machine Learning framework for low-latency and high throug...
Pretzel: optimized Machine Learning framework for low-latency and high throug...NECST Lab @ Politecnico di Milano
 
Parallel Computing 2007: Overview
Parallel Computing 2007: OverviewParallel Computing 2007: Overview
Parallel Computing 2007: OverviewGeoffrey Fox
 
Sreerag parallel programming
Sreerag   parallel programmingSreerag   parallel programming
Sreerag parallel programmingSreerag Gopinath
 
Architecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe SystemsArchitecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe SystemsDharmalingam Ganesan
 
Multithreading: Exploiting Thread-Level Parallelism to Improve Uniprocessor ...
Multithreading: Exploiting Thread-Level  Parallelism to Improve Uniprocessor ...Multithreading: Exploiting Thread-Level  Parallelism to Improve Uniprocessor ...
Multithreading: Exploiting Thread-Level Parallelism to Improve Uniprocessor ...Ahmed kasim
 
Chapter 1 - introduction - parallel computing
Chapter  1 - introduction - parallel computingChapter  1 - introduction - parallel computing
Chapter 1 - introduction - parallel computingHeman Pathak
 
Distributed process and scheduling
Distributed process and scheduling Distributed process and scheduling
Distributed process and scheduling SHATHAN
 
Sc13 comex poster
Sc13 comex posterSc13 comex poster
Sc13 comex posterhjjvandam
 

What's hot (20)

Bft mr-clouds-of-clouds-discco2012 - navtalk
Bft mr-clouds-of-clouds-discco2012 - navtalkBft mr-clouds-of-clouds-discco2012 - navtalk
Bft mr-clouds-of-clouds-discco2012 - navtalk
 
Pregel reading circle
Pregel reading circlePregel reading circle
Pregel reading circle
 
Physical organization of parallel platforms
Physical organization of parallel platformsPhysical organization of parallel platforms
Physical organization of parallel platforms
 
KIISE:SIGDB Workshop presentation.
KIISE:SIGDB Workshop presentation.KIISE:SIGDB Workshop presentation.
KIISE:SIGDB Workshop presentation.
 
3.5 SDN CloudStack Developer Day
3.5  SDN CloudStack Developer Day3.5  SDN CloudStack Developer Day
3.5 SDN CloudStack Developer Day
 
Lecture 7 cuda execution model
Lecture 7   cuda execution modelLecture 7   cuda execution model
Lecture 7 cuda execution model
 
Limitations of memory system performance
Limitations of memory system performanceLimitations of memory system performance
Limitations of memory system performance
 
Full introduction to_parallel_computing
Full introduction to_parallel_computingFull introduction to_parallel_computing
Full introduction to_parallel_computing
 
Parallel Processing Concepts
Parallel Processing Concepts Parallel Processing Concepts
Parallel Processing Concepts
 
Slide05 Message Passing Architecture
Slide05 Message Passing ArchitectureSlide05 Message Passing Architecture
Slide05 Message Passing Architecture
 
Communication model of parallel platforms
Communication model of parallel platformsCommunication model of parallel platforms
Communication model of parallel platforms
 
June 08 MS3
June 08 MS3June 08 MS3
June 08 MS3
 
Pretzel: optimized Machine Learning framework for low-latency and high throug...
Pretzel: optimized Machine Learning framework for low-latency and high throug...Pretzel: optimized Machine Learning framework for low-latency and high throug...
Pretzel: optimized Machine Learning framework for low-latency and high throug...
 
Parallel Computing 2007: Overview
Parallel Computing 2007: OverviewParallel Computing 2007: Overview
Parallel Computing 2007: Overview
 
Sreerag parallel programming
Sreerag   parallel programmingSreerag   parallel programming
Sreerag parallel programming
 
Architecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe SystemsArchitecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe Systems
 
Multithreading: Exploiting Thread-Level Parallelism to Improve Uniprocessor ...
Multithreading: Exploiting Thread-Level  Parallelism to Improve Uniprocessor ...Multithreading: Exploiting Thread-Level  Parallelism to Improve Uniprocessor ...
Multithreading: Exploiting Thread-Level Parallelism to Improve Uniprocessor ...
 
Chapter 1 - introduction - parallel computing
Chapter  1 - introduction - parallel computingChapter  1 - introduction - parallel computing
Chapter 1 - introduction - parallel computing
 
Distributed process and scheduling
Distributed process and scheduling Distributed process and scheduling
Distributed process and scheduling
 
Sc13 comex poster
Sc13 comex posterSc13 comex poster
Sc13 comex poster
 

Viewers also liked

ikd312-04-aljabar-relasional
ikd312-04-aljabar-relasionalikd312-04-aljabar-relasional
ikd312-04-aljabar-relasionalAnung Ariwibowo
 
Rupert.Reading.Jan 2015
Rupert.Reading.Jan 2015 Rupert.Reading.Jan 2015
Rupert.Reading.Jan 2015 Faye Brownlie
 
Redshift Company Credentials
Redshift Company CredentialsRedshift Company Credentials
Redshift Company CredentialsLisa_Bella
 
Innovation mentoring grant proposal 100113 rev 1
Innovation mentoring grant proposal 100113 rev 1Innovation mentoring grant proposal 100113 rev 1
Innovation mentoring grant proposal 100113 rev 1John Michitson
 
Global Conferencing Trends
Global Conferencing TrendsGlobal Conferencing Trends
Global Conferencing TrendsInterCall
 
Finlandia 2009 [Autoguardado]
Finlandia 2009 [Autoguardado]Finlandia 2009 [Autoguardado]
Finlandia 2009 [Autoguardado]guestd4e08
 
Planetario 2º ciclo 2013
Planetario 2º ciclo 2013Planetario 2º ciclo 2013
Planetario 2º ciclo 2013XXX XXX
 
Concurso emasagra 2013
Concurso emasagra 2013Concurso emasagra 2013
Concurso emasagra 2013XXX XXX
 
Portfolio Daniel Pedrosa
Portfolio Daniel PedrosaPortfolio Daniel Pedrosa
Portfolio Daniel Pedrosaguest90db5e
 
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008Solange_Gagnebin
 
Orange Language Travel Hero
Orange Language Travel   HeroOrange Language Travel   Hero
Orange Language Travel HeroOrange BG
 
CR4YR collaboration.Aug 2013, Oct Prince Rupert
CR4YR collaboration.Aug 2013, Oct Prince Rupert CR4YR collaboration.Aug 2013, Oct Prince Rupert
CR4YR collaboration.Aug 2013, Oct Prince Rupert Faye Brownlie
 
Rupert - AFL - Jan, 2014
Rupert - AFL - Jan, 2014Rupert - AFL - Jan, 2014
Rupert - AFL - Jan, 2014Faye Brownlie
 
Visita biblioteca municipal 2013
Visita biblioteca municipal 2013Visita biblioteca municipal 2013
Visita biblioteca municipal 2013XXX XXX
 
Euro Style Design Ltd The Designs
Euro Style Design Ltd The DesignsEuro Style Design Ltd The Designs
Euro Style Design Ltd The DesignsRoland Laufer
 

Viewers also liked (20)

ikd312-04-aljabar-relasional
ikd312-04-aljabar-relasionalikd312-04-aljabar-relasional
ikd312-04-aljabar-relasional
 
Rupert.Reading.Jan 2015
Rupert.Reading.Jan 2015 Rupert.Reading.Jan 2015
Rupert.Reading.Jan 2015
 
Redshift Company Credentials
Redshift Company CredentialsRedshift Company Credentials
Redshift Company Credentials
 
Innovation mentoring grant proposal 100113 rev 1
Innovation mentoring grant proposal 100113 rev 1Innovation mentoring grant proposal 100113 rev 1
Innovation mentoring grant proposal 100113 rev 1
 
Global Conferencing Trends
Global Conferencing TrendsGlobal Conferencing Trends
Global Conferencing Trends
 
Finlandia 2009 [Autoguardado]
Finlandia 2009 [Autoguardado]Finlandia 2009 [Autoguardado]
Finlandia 2009 [Autoguardado]
 
Planetario 2º ciclo 2013
Planetario 2º ciclo 2013Planetario 2º ciclo 2013
Planetario 2º ciclo 2013
 
Concurso emasagra 2013
Concurso emasagra 2013Concurso emasagra 2013
Concurso emasagra 2013
 
Tle4904 343973
Tle4904 343973Tle4904 343973
Tle4904 343973
 
Portfolio:Summer 09
Portfolio:Summer 09Portfolio:Summer 09
Portfolio:Summer 09
 
Portfolio Daniel Pedrosa
Portfolio Daniel PedrosaPortfolio Daniel Pedrosa
Portfolio Daniel Pedrosa
 
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008
Absolute Dosimetry for Proton Beams-Doktorandenseminar 11 Sept 2008
 
PROYECTO WorkCentre
PROYECTO WorkCentrePROYECTO WorkCentre
PROYECTO WorkCentre
 
Orange Language Travel Hero
Orange Language Travel   HeroOrange Language Travel   Hero
Orange Language Travel Hero
 
CR4YR collaboration.Aug 2013, Oct Prince Rupert
CR4YR collaboration.Aug 2013, Oct Prince Rupert CR4YR collaboration.Aug 2013, Oct Prince Rupert
CR4YR collaboration.Aug 2013, Oct Prince Rupert
 
Rupert - AFL - Jan, 2014
Rupert - AFL - Jan, 2014Rupert - AFL - Jan, 2014
Rupert - AFL - Jan, 2014
 
Visita biblioteca municipal 2013
Visita biblioteca municipal 2013Visita biblioteca municipal 2013
Visita biblioteca municipal 2013
 
Mintpad Pro
Mintpad ProMintpad Pro
Mintpad Pro
 
soal-pemrograman-b
soal-pemrograman-bsoal-pemrograman-b
soal-pemrograman-b
 
Euro Style Design Ltd The Designs
Euro Style Design Ltd The DesignsEuro Style Design Ltd The Designs
Euro Style Design Ltd The Designs
 

Similar to Ultra-scalable Architectures for Telecommunications and Web 2.0 Services

Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesJason TC HOU (侯宗成)
 
Performance Management in ‘Big Data’ Applications
Performance Management in ‘Big Data’ ApplicationsPerformance Management in ‘Big Data’ Applications
Performance Management in ‘Big Data’ ApplicationsMichael Kopp
 
Hadoop fault tolerance
Hadoop  fault toleranceHadoop  fault tolerance
Hadoop fault tolerancePallav Jha
 
IS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialIS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialRoger Rafanell Mas
 
Spark Overview and Performance Issues
Spark Overview and Performance IssuesSpark Overview and Performance Issues
Spark Overview and Performance IssuesAntonios Katsarakis
 
MapReduce on Zero VM
MapReduce on Zero VM MapReduce on Zero VM
MapReduce on Zero VM Joy Rahman
 
Cloud infrastructure. Google File System and MapReduce - Andrii Vozniuk
Cloud infrastructure. Google File System and MapReduce - Andrii VozniukCloud infrastructure. Google File System and MapReduce - Andrii Vozniuk
Cloud infrastructure. Google File System and MapReduce - Andrii VozniukAndrii Vozniuk
 
Network architecure (3).pptx
Network architecure (3).pptxNetwork architecure (3).pptx
Network architecure (3).pptxKaythry P
 
Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013Benjamin Cabé
 
Chapter 5.pptx
Chapter 5.pptxChapter 5.pptx
Chapter 5.pptxJoeBaker69
 
3450 - Writing and optimising applications for performance in a hybrid messag...
3450 - Writing and optimising applications for performance in a hybrid messag...3450 - Writing and optimising applications for performance in a hybrid messag...
3450 - Writing and optimising applications for performance in a hybrid messag...Timothy McCormick
 
Industry - Program analysis and verification - Type-preserving Heap Profiler ...
Industry - Program analysis and verification - Type-preserving Heap Profiler ...Industry - Program analysis and verification - Type-preserving Heap Profiler ...
Industry - Program analysis and verification - Type-preserving Heap Profiler ...ICSM 2011
 

Similar to Ultra-scalable Architectures for Telecommunications and Web 2.0 Services (20)

Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network Issues
 
More mpi4py
More mpi4pyMore mpi4py
More mpi4py
 
Performance Management in ‘Big Data’ Applications
Performance Management in ‘Big Data’ ApplicationsPerformance Management in ‘Big Data’ Applications
Performance Management in ‘Big Data’ Applications
 
Introduction to map reduce
Introduction to map reduceIntroduction to map reduce
Introduction to map reduce
 
Hadoop fault tolerance
Hadoop  fault toleranceHadoop  fault tolerance
Hadoop fault tolerance
 
Disco workshop
Disco workshopDisco workshop
Disco workshop
 
Hadoop
HadoopHadoop
Hadoop
 
IS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialIS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorial
 
EEDC Programming Models
EEDC Programming ModelsEEDC Programming Models
EEDC Programming Models
 
Spark Overview and Performance Issues
Spark Overview and Performance IssuesSpark Overview and Performance Issues
Spark Overview and Performance Issues
 
MapReduce on Zero VM
MapReduce on Zero VM MapReduce on Zero VM
MapReduce on Zero VM
 
Cloud infrastructure. Google File System and MapReduce - Andrii Vozniuk
Cloud infrastructure. Google File System and MapReduce - Andrii VozniukCloud infrastructure. Google File System and MapReduce - Andrii Vozniuk
Cloud infrastructure. Google File System and MapReduce - Andrii Vozniuk
 
ROS distributed architecture
ROS  distributed architectureROS  distributed architecture
ROS distributed architecture
 
Network architecure (3).pptx
Network architecure (3).pptxNetwork architecure (3).pptx
Network architecure (3).pptx
 
Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013
 
try
trytry
try
 
Project Matsu
Project MatsuProject Matsu
Project Matsu
 
Chapter 5.pptx
Chapter 5.pptxChapter 5.pptx
Chapter 5.pptx
 
3450 - Writing and optimising applications for performance in a hybrid messag...
3450 - Writing and optimising applications for performance in a hybrid messag...3450 - Writing and optimising applications for performance in a hybrid messag...
3450 - Writing and optimising applications for performance in a hybrid messag...
 
Industry - Program analysis and verification - Type-preserving Heap Profiler ...
Industry - Program analysis and verification - Type-preserving Heap Profiler ...Industry - Program analysis and verification - Type-preserving Heap Profiler ...
Industry - Program analysis and verification - Type-preserving Heap Profiler ...
 

Recently uploaded

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Ultra-scalable Architectures for Telecommunications and Web 2.0 Services

  • 1. Ultra-scalable Architectures for Telecommunications and Web 2.0 Services Mauricio Arango Bernd Kaponig Sun Microsystems October 27, 2009
  • 2. Web 2.0 Impact on Communications Applications • Information-sharing, social media services such as Facebook, Twitter – experiencing fast & enormous growth • Growth handled via horizontal scaling vs. vertical scaling – no forklift upgrades – agile and lower-cost • Involves handling parallelism challenge in telecommunications service software 2
  • 3. Impact of New Communications Applications - cont. • Telecom service providers launching Web 2.0- like services – Nokia Ovi – Vodafone 360 • Expansion of services based on telecom network advantages - event-driven – Location-based – M2M – Metered realtime billing – SLA management 3
  • 4. Parallel Application Architecture Model (server side) ● Parallelize – breakup into pieces – Application – Data ● Requires middleware – Coordination (communication) – Data management 4
  • 5. Price of Horizontal Scaling • Requires software that can be distributed and has high degree of parallelism - – Applications broken into components – Components run in parallel in a distributed processing infrastructure Monolithic application Parallel application 5
  • 6. Good News – Event-driven apps have high parallelism • Web and • Data stream-driven telecommunications • Event-based coordination applications are event- pattern driven – User-generated events – Monitoring and sensing events – Network events 6
  • 7. Other Parallel Application Design Patterns Worker 1 • Master-worker Master Worker 2 Worker N • Pipeline Phase Stage 1 Stage 2 Stage N 1 Phase Stage 1 • Hybrid 1 Stage 2 Stage N Master Phase St 1 Stage 2 Stage N Phase Stage 1 1 Stage 2 Stage N 7
  • 8. Communications Middleware • Coordination – interaction required when an application is split into multiple components Direct communication Indirect communication • Request-response, Notification • A node only needs to know about the • intermediate entity Tightly coupled – every node needs to know about other nodes' address and • Space decoupling functions – non-scalable complexity for • Time decoupling developer • Three mechanisms • Poor at handling node failures – Tuple Space – Message Queue – Publish/Subscribe 8
  • 9. Tuple Space • Invented by David Gelernter in early 80s • Space & time decoupling across • Simple functionality – via four operations components – out()- deposits tuple • Shared associative object (tuple) – in()- removes matching tuple store – read() - reads matching tuple • Inherent load-balancing – notify() - registers for notification • Event processing framework on matching tuple • Natural fit with business processes Component 2 Component 3 Component 1 Component 4 in( ) out( ) out( ) read( ) read( ) Tuple Space 9
  • 10. Message Queue • Intermediate entity: set of queues • Communicating components only need to know queue names • Basic functions: – sendMsg(queueName, message) – getMsg(queueName) • Can be mapped as a subset of Tuple Space using: – out(queueName, message) for sendMsg – in(queueName) for getMsg Component 1 Component 2 sendMsg(queue-1, ) getMsg(queue-1) sendMsg(queue-2, ) Message queue 1 Component 3 getMsg(queue-2) Message queue 2 10
  • 11. Publish/Subscribe • Intermediate entity: broker • Basic functions: – subscribe(template) – publish(message) • Can be mapped as a subset of Tuple Space using: – out(tuple) for publish() – notify(template) for subscribe() 11
  • 12. Surge of Indirect Messaging Middleware ● Blitz (JavaSpaces) ● Gigaspaces ● Rinda ● Gruple ● Semispace ● Open source JMS – Sun Open Message Queue – Apache ActiveMQ ● Amazon Simple Message Queue Service ● Rabbit MQ – based AMQP standard ● Gearman ● XMPP Pub/Sub ● Pubsubhubbub 12
  • 13. Data Management Middleware • Scaling via parallelization and caching • Parallelization – Replication – read-most data – Partitioning/sharding – write & read • Distributed caching – Shares scaling techniques with communications middleware – Use of Distributed Hash Tables (DHT) 13
  • 14. Use Case – Twitter-like, many-to- many Messaging System • Process new message – out(message_list_update, follower, message_publisher, message_content) • Update message list – in(message_list_update, ?r, ?t) – Put(new message) • Retrieve message list – get(messages) 14
  • 15. Conclusions • Horizontal scalability requires parallel application architectures from day one • Parallelization involves simple communications middleware models & simple APIs – Tuple Space simplest & superset model • Distributed caching – scalable foundation for both communications and data management middleware • Parallel application architectures key in telecommunications evolution 15
  • 16. Additional information ● Paper (includes references): http://blogs.sun.com/arango/resource/ICIN-09-Ultra ● Blog: http://blogs.sun.com/arango/ 16