SlideShare a Scribd company logo
1 of 20
Download to read offline
DDS in a Nutshell
                                     Data-Centric Architecture and the
                                     Data Distribution Service


    The Global Leader                Rick Warren                       rick.warren@rti.com
    in DDS                           Director of Technical Solutions
© 2011 Real-Time Innovations, Inc.
Stuff You Will Learn


      DDS is data-centric messaging.

      1.  What is “data-centricity” anyway?


      2.  Why is it a good way to build and
                integrate systems?

      3.  What’s special about DDS?


© 2011 Real-Time Innovations, Inc.            2
Data-Centricity by Example: Calendaring


      Alternative Process #1:
      1.  Email: “Meeting Monday at 10:00.”
      2.  Email: “Meeting moved to Tuesday.”
      3.  Email: “Here’s dial-in info for meeting…”


      4.  You: “Where do I have to be? When?”
      5.  You: (sifting through email…)




© 2011 Real-Time Innovations, Inc.                    3
Data-Centricity by Example: Calendaring


      Alternative Process #2:
      1.  Calendar: (add meeting Monday at 10:00)
      2.  Calendar: (move meeting to Tuesday)
      3.  Calendar: (add dial-in info)


      4.  You: “Where do I have to be? When?”
      5.  You: (check calendar)




© 2011 Real-Time Innovations, Inc.                  4
Data-Centricity by Example: FaceBook


      Alternative Process #1:
        Use the FaceBook web site.


      Alternative Process #2:
        The web site doesn’t exist.
        Deduce your friends’ information based on the
                 notifications FaceBook sends you.




© 2011 Real-Time Innovations, Inc.                       5
What’s the Difference? State.

       Things have attributes and
              characteristics                         “State” (“data”) is a
                –  The meeting will run 1:00–2:00     snapshot of those
                   in the conference room.
                –  My friend’s phone number is        attributes and
                   555-1234 and he’s currently        characteristics.
                   grooming his cat.
                –  The car is blue and is traveling
                   north from Sunnyvale at 65
                   mph.
       …whether they exist in the                    Best Practice:
              real world, in the computer,
              or both                                 operate on state
       …whether or not we observe                    directly, not dialogs
              or acknowledge them                     about state.


© 2011 Real-Time Innovations, Inc.                                            6
Data-Centric =



                                           the part of            you care about

                         Describing the world
                                                as it is
                                     at a certain point in time

      Implication: State of the world can be maintained by
      infrastructure, not each app


© 2011 Real-Time Innovations, Inc.                                                 7
Not Data-Centric =




                       Saying anything else
       “Hey you: go do this.”
       “The thing changed in this way.”

     Implication: State must be inferred, reconstructed,
     managed by each app

     (Sometimes called “message-centricity”:
     focus on what’s said vs. what is)


© 2011 Real-Time Innovations, Inc.                         8
Why is it better
      to just describe the world?


        Reconstructing the state of the world is hard.
                 –  Must infer based on all previous messages
                 –  Maintaining all these messages is expensive
                 –  Each app makes these inferences => duplicate effort


        People make mistakes.
                 –  Many copies of state => may be different => bugs
                    vs.
                 –  Uniform operations on state => fewer bugs




© 2011 Real-Time Innovations, Inc.                                        9
Why is it better (over time)
      to just describe the world?



                           Consider integrating based on

                                      Function
                                          vs.
                                     Stateful Data
                                         …

© 2011 Real-Time Innovations, Inc.                         10
Why is it better (over time)
      to just describe the world?


       Computers are                          Integration effort
              stupid.                          doesn’t scale.
                –  Integrate based on what      –  Integrate at level of
                   to do                           function
                   => must know                    => everything integrates
                   everything you might do         with everything else
                   => future extension             => effort scales with
                   hard                            square of number of
                –  Integrate based on what         apps
                   exists                       –  Integrate at level of
                   => do whatever you              stateful data
                   like; no one else cares         => everything integrates
                   => future extension             with common model
                   easy                            => effort scales with
                                                   number of apps



© 2011 Real-Time Innovations, Inc.                                            11
So it’s “better.” Who cares?


        Faster to implement
               => Save time and money


        Easier to integrate and update
               => Protect your investment


        More reliable systems
               => Protect your business


© 2011 Real-Time Innovations, Inc.          12
Before We Forget: the Definition
                                                                For example, data
                                                                structures in XSD
      A data-centric architecture:                              or IDL file.

      1.  …is based on a data model that is:                    Calendar Event =
                                                                •  Start Time
                 –  Appropriately documented—                   •  Duration
                    i.e. understandable by humans               •  Location
                 –  Formally defined—                           •  Organizer
                    i.e. understandable by machines
                 –  Discoverable—i.e. can be found during execution

      2.  The data model is independent of any domain-specific
                functionality / application.
                 –  i.e. made of nouns, not verbs

      3.  The (instantiated) data model is the only authoritative
                source of state in the system.
© 2011 Real-Time Innovations, Inc.                                                  13
DDS: Observe & Respond to a Changing World

   Other technologies that support data-centricity:
         –  Databases: SQL
         –  Web: HTTP (mostly)
     …assume the world changes slowly
                                                         Not scalable
     …use network resources inefficiently       100 apps => 100x load
     …are highly centralized                  Slow
                                          A few updates/sec

   App                                                        App
                                 Server
   App                                                        App
                                 State
   App                                                        App
               Unreliable
Failure here kills many apps                                        14
DDS: Observe & Respond to a Changing World

     DDS:
       …allows you to observe frequent changes
       …uses network resources efficiently
       …is decentralized

          Fast                             Scalable             Managed                Reliable
          100,000’s updates/sec            Load indep. # apps    with QoS     No single pt. failure

               App                   App        App             App         App          App



                                            State: Data Bus

© 2011 Real-Time Innovations, Inc.                                                                    15
DDS: Observe & Respond to a Changing World

     Army JBC-P replaced home-grown messaging w/ DDS:
       Tracks 20x more objects with fewer failures
       …with 90+% less code
       …with 90+% lower CPU resources

          Fast                             Scalable             Managed                Reliable
          100,000’s updates/sec            Load indep. # apps    with QoS     No single pt. failure

               App                   App        App             App         App          App



                                            State: Data Bus

© 2011 Real-Time Innovations, Inc.                                                                    16
How DDS Works


      DDS is data-centric messaging.
      That is,
        Messaging as a technique
        for distributing, accessing, and modifying stateful data

            App                      App   App                 App    App      App


                                                                      Data
                     Data in Motion                                  at Rest

                             e.g. DDS            complements     e.g. database

© 2011 Real-Time Innovations, Inc.                                                   17
How DDS Works: Concepts & Terminology

       Domain: world you’re talking about
       Topic: group of similar things
                                                       Domain
         –  Similar structure (“type”) what
                                                (e.g. medical devices)
         –  Similar way they change    how
            over time (“QoS”)          when
       Instance: individual (changing) thing          Topic
                                                (e.g. EKG readings)
       Sample: snapshot of an instance at
              a point in time
                                                     Instance
                                                       (e.g.
       DataWriter: source of information          readings from
              about part of the world (topic)        EKG #42)

       DataReader: observer of part of the
              world (topic)
© 2011 Real-Time Innovations, Inc.                                       18
Conclusion


        Data-centric architecture brings significant
               business benefits
                 –  Save time and money during initial development
                 –  Leverage existing investments as solutions evolve
                 –  Protect mission-critical functions with resilient, highly
                    available implementations

        DDS supports data-centricity for dynamic systems
                 –  Develop event-driven systems based on open standards
                 –  Communicate more efficiently:
                           •  Deliver existing capability with fewer hardware resources
                           •  Deliver greater capability with the same hardware resources
                 –  Avoid single points of failure with distributed P2P topology
                 –  Monitor and govern data delivery quality of service

© 2011 Real-Time Innovations, Inc.                                                          19
Download a free evaluation of
                                     RTI Data Distribution Service,
       Thank You                     Professional Edition
                                     from www.rti.com/downloads




© 2011 Real-Time Innovations, Inc.                                20

More Related Content

What's hot

Top10 technology trends
Top10 technology trendsTop10 technology trends
Top10 technology trendsBala Kris
 
Creating a cost conscious document capture strategy
Creating a cost conscious document capture strategyCreating a cost conscious document capture strategy
Creating a cost conscious document capture strategyCAPSYS Technologies
 
The Workplace @ Sun
The Workplace @ SunThe Workplace @ Sun
The Workplace @ Sunguestea539c3
 
GreenTrac
GreenTracGreenTrac
GreenTracalfer0
 
Zero Email Inspiration Session Atos
Zero Email Inspiration Session AtosZero Email Inspiration Session Atos
Zero Email Inspiration Session Atosdennisvvugt
 
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...1E: Software Lifecycle Automation
 
Zero Email In 15 Min
Zero Email In 15 MinZero Email In 15 Min
Zero Email In 15 Mindennisvvugt
 
Sentri's Microsoft Cloud Webinar
Sentri's Microsoft Cloud WebinarSentri's Microsoft Cloud Webinar
Sentri's Microsoft Cloud WebinarSentri
 
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...Cognizant
 

What's hot (11)

Top10 technology trends
Top10 technology trendsTop10 technology trends
Top10 technology trends
 
Creating a cost conscious document capture strategy
Creating a cost conscious document capture strategyCreating a cost conscious document capture strategy
Creating a cost conscious document capture strategy
 
How healthy is your computer estate?
How healthy is your computer estate?How healthy is your computer estate?
How healthy is your computer estate?
 
ambient-computing
ambient-computingambient-computing
ambient-computing
 
The Workplace @ Sun
The Workplace @ SunThe Workplace @ Sun
The Workplace @ Sun
 
GreenTrac
GreenTracGreenTrac
GreenTrac
 
Zero Email Inspiration Session Atos
Zero Email Inspiration Session AtosZero Email Inspiration Session Atos
Zero Email Inspiration Session Atos
 
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...
A WASTE OF TIME AND MONEY? HOW IMPROVING THE HEALTH OF YOUR DESKTOPS AND LAPT...
 
Zero Email In 15 Min
Zero Email In 15 MinZero Email In 15 Min
Zero Email In 15 Min
 
Sentri's Microsoft Cloud Webinar
Sentri's Microsoft Cloud WebinarSentri's Microsoft Cloud Webinar
Sentri's Microsoft Cloud Webinar
 
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...
Seizing Opportunities, Overcoming Productivity Challenges in the Virtually Co...
 

Similar to DDS in a Nutshell

RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011Gerardo Pardo-Castellote
 
Data Center Infrastructure Trends
Data Center Infrastructure TrendsData Center Infrastructure Trends
Data Center Infrastructure TrendsViridity Software
 
Rethinking Disaster Prepardness THEITS12
Rethinking Disaster Prepardness THEITS12Rethinking Disaster Prepardness THEITS12
Rethinking Disaster Prepardness THEITS12Thomas Danford
 
A Resource Oriented Framework for Context-Aware Enterprise Applications
A Resource Oriented Framework for Context-Aware Enterprise ApplicationsA Resource Oriented Framework for Context-Aware Enterprise Applications
A Resource Oriented Framework for Context-Aware Enterprise Applicationsruyalarcon
 
Jazoon'12 Enterprise-wide Cloud Governance
Jazoon'12 Enterprise-wide Cloud GovernanceJazoon'12 Enterprise-wide Cloud Governance
Jazoon'12 Enterprise-wide Cloud GovernanceNetcetera
 
RIP I.T. - Moving from Information Technology to Technology Integration
RIP  I.T.  - Moving from Information Technology to Technology IntegrationRIP  I.T.  - Moving from Information Technology to Technology Integration
RIP I.T. - Moving from Information Technology to Technology IntegrationJay Kuri
 
Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Shafaq Abdullah
 
Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Shafaq Abdullah
 
ML-Based Data-Driven Software Development with InfluxDB 2.0
ML-Based Data-Driven Software Development with InfluxDB 2.0ML-Based Data-Driven Software Development with InfluxDB 2.0
ML-Based Data-Driven Software Development with InfluxDB 2.0InfluxData
 
Making Observability Actionable At Scale - DBS DevConnect 2019
Making Observability Actionable At Scale - DBS DevConnect 2019Making Observability Actionable At Scale - DBS DevConnect 2019
Making Observability Actionable At Scale - DBS DevConnect 2019Squadcast Inc
 
From 🤦 to 🐿️
From 🤦 to 🐿️From 🤦 to 🐿️
From 🤦 to 🐿️Ori Pekelman
 
WarpCare Enterprise Mobility Strategy Introduction 2012
WarpCare Enterprise Mobility Strategy Introduction 2012WarpCare Enterprise Mobility Strategy Introduction 2012
WarpCare Enterprise Mobility Strategy Introduction 2012Warpcare
 
Agile analytics applications on hadoop
Agile analytics applications on hadoopAgile analytics applications on hadoop
Agile analytics applications on hadoopHortonworks
 
Hortonworks: Agile Analytics Applications
Hortonworks: Agile Analytics ApplicationsHortonworks: Agile Analytics Applications
Hortonworks: Agile Analytics Applicationsrussell_jurney
 
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsCloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsVMware Tanzu
 
Infrastructure as code chez Scaleway
 Infrastructure as code chez Scaleway Infrastructure as code chez Scaleway
Infrastructure as code chez ScalewayScaleway
 
The Modern Columbian Exchange: Biovision 2012 Presentation
The Modern Columbian Exchange: Biovision 2012 PresentationThe Modern Columbian Exchange: Biovision 2012 Presentation
The Modern Columbian Exchange: Biovision 2012 PresentationMerck
 
Evolution of applications - from Enterprise to Cloud
Evolution of applications - from Enterprise to CloudEvolution of applications - from Enterprise to Cloud
Evolution of applications - from Enterprise to CloudMani Doraisamy
 

Similar to DDS in a Nutshell (20)

RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011RTI Data-Distribution Service (DDS) Master Class 2011
RTI Data-Distribution Service (DDS) Master Class 2011
 
Data Center Infrastructure Trends
Data Center Infrastructure TrendsData Center Infrastructure Trends
Data Center Infrastructure Trends
 
Cloudsourcing2013
Cloudsourcing2013Cloudsourcing2013
Cloudsourcing2013
 
Rethinking Disaster Prepardness THEITS12
Rethinking Disaster Prepardness THEITS12Rethinking Disaster Prepardness THEITS12
Rethinking Disaster Prepardness THEITS12
 
The Rise of Open Data
The Rise of Open DataThe Rise of Open Data
The Rise of Open Data
 
A Resource Oriented Framework for Context-Aware Enterprise Applications
A Resource Oriented Framework for Context-Aware Enterprise ApplicationsA Resource Oriented Framework for Context-Aware Enterprise Applications
A Resource Oriented Framework for Context-Aware Enterprise Applications
 
Jazoon'12 Enterprise-wide Cloud Governance
Jazoon'12 Enterprise-wide Cloud GovernanceJazoon'12 Enterprise-wide Cloud Governance
Jazoon'12 Enterprise-wide Cloud Governance
 
RIP I.T. - Moving from Information Technology to Technology Integration
RIP  I.T.  - Moving from Information Technology to Technology IntegrationRIP  I.T.  - Moving from Information Technology to Technology Integration
RIP I.T. - Moving from Information Technology to Technology Integration
 
Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02
 
Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02Zenprise ctia 10-11-2011_v02
Zenprise ctia 10-11-2011_v02
 
ML-Based Data-Driven Software Development with InfluxDB 2.0
ML-Based Data-Driven Software Development with InfluxDB 2.0ML-Based Data-Driven Software Development with InfluxDB 2.0
ML-Based Data-Driven Software Development with InfluxDB 2.0
 
Making Observability Actionable At Scale - DBS DevConnect 2019
Making Observability Actionable At Scale - DBS DevConnect 2019Making Observability Actionable At Scale - DBS DevConnect 2019
Making Observability Actionable At Scale - DBS DevConnect 2019
 
From 🤦 to 🐿️
From 🤦 to 🐿️From 🤦 to 🐿️
From 🤦 to 🐿️
 
WarpCare Enterprise Mobility Strategy Introduction 2012
WarpCare Enterprise Mobility Strategy Introduction 2012WarpCare Enterprise Mobility Strategy Introduction 2012
WarpCare Enterprise Mobility Strategy Introduction 2012
 
Agile analytics applications on hadoop
Agile analytics applications on hadoopAgile analytics applications on hadoop
Agile analytics applications on hadoop
 
Hortonworks: Agile Analytics Applications
Hortonworks: Agile Analytics ApplicationsHortonworks: Agile Analytics Applications
Hortonworks: Agile Analytics Applications
 
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsCloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
 
Infrastructure as code chez Scaleway
 Infrastructure as code chez Scaleway Infrastructure as code chez Scaleway
Infrastructure as code chez Scaleway
 
The Modern Columbian Exchange: Biovision 2012 Presentation
The Modern Columbian Exchange: Biovision 2012 PresentationThe Modern Columbian Exchange: Biovision 2012 Presentation
The Modern Columbian Exchange: Biovision 2012 Presentation
 
Evolution of applications - from Enterprise to Cloud
Evolution of applications - from Enterprise to CloudEvolution of applications - from Enterprise to Cloud
Evolution of applications - from Enterprise to Cloud
 

More from Rick Warren

Building Scalable Stateless Applications with RxJava
Building Scalable Stateless Applications with RxJavaBuilding Scalable Stateless Applications with RxJava
Building Scalable Stateless Applications with RxJavaRick Warren
 
Letters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to ProductionLetters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to ProductionRick Warren
 
Patterns of Data Distribution
Patterns of Data DistributionPatterns of Data Distribution
Patterns of Data DistributionRick Warren
 
Data-centric Invocable Services
Data-centric Invocable ServicesData-centric Invocable Services
Data-centric Invocable ServicesRick Warren
 
Engineering Interoperable and Reliable Systems
Engineering Interoperable and Reliable SystemsEngineering Interoperable and Reliable Systems
Engineering Interoperable and Reliable SystemsRick Warren
 
Scaling DDS to Millions of Computers and Devices
Scaling DDS to Millions of Computers and DevicesScaling DDS to Millions of Computers and Devices
Scaling DDS to Millions of Computers and DevicesRick Warren
 
Java 5 Language PSM for DDS: Final Submission
Java 5 Language PSM for DDS: Final SubmissionJava 5 Language PSM for DDS: Final Submission
Java 5 Language PSM for DDS: Final SubmissionRick Warren
 
Java 5 PSM for DDS: Revised Submission (out of date)
Java 5 PSM for DDS: Revised Submission (out of date)Java 5 PSM for DDS: Revised Submission (out of date)
Java 5 PSM for DDS: Revised Submission (out of date)Rick Warren
 
C++ PSM for DDS: Revised Submission
C++ PSM for DDS: Revised SubmissionC++ PSM for DDS: Revised Submission
C++ PSM for DDS: Revised SubmissionRick Warren
 
Web-Enabled DDS: Revised Submission
Web-Enabled DDS: Revised SubmissionWeb-Enabled DDS: Revised Submission
Web-Enabled DDS: Revised SubmissionRick Warren
 
Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Rick Warren
 
Extensible and Dynamic Topic Types for DDS, Beta 1
Extensible and Dynamic Topic Types for DDS, Beta 1Extensible and Dynamic Topic Types for DDS, Beta 1
Extensible and Dynamic Topic Types for DDS, Beta 1Rick Warren
 
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric ModelMapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric ModelRick Warren
 
Large-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceLarge-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceRick Warren
 
Data-Centric and Message-Centric System Architecture
Data-Centric and Message-Centric System ArchitectureData-Centric and Message-Centric System Architecture
Data-Centric and Message-Centric System ArchitectureRick Warren
 
Extensible and Dynamic Topic Types for DDS
Extensible and Dynamic Topic Types for DDSExtensible and Dynamic Topic Types for DDS
Extensible and Dynamic Topic Types for DDSRick Warren
 
Easing Integration of Large-Scale Real-Time Systems with DDS
Easing Integration of Large-Scale Real-Time Systems with DDSEasing Integration of Large-Scale Real-Time Systems with DDS
Easing Integration of Large-Scale Real-Time Systems with DDSRick Warren
 
Java 5 API for DDS RFP (out of date)
Java 5 API for DDS RFP (out of date)Java 5 API for DDS RFP (out of date)
Java 5 API for DDS RFP (out of date)Rick Warren
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDSRick Warren
 

More from Rick Warren (20)

Real-World Git
Real-World GitReal-World Git
Real-World Git
 
Building Scalable Stateless Applications with RxJava
Building Scalable Stateless Applications with RxJavaBuilding Scalable Stateless Applications with RxJava
Building Scalable Stateless Applications with RxJava
 
Letters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to ProductionLetters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to Production
 
Patterns of Data Distribution
Patterns of Data DistributionPatterns of Data Distribution
Patterns of Data Distribution
 
Data-centric Invocable Services
Data-centric Invocable ServicesData-centric Invocable Services
Data-centric Invocable Services
 
Engineering Interoperable and Reliable Systems
Engineering Interoperable and Reliable SystemsEngineering Interoperable and Reliable Systems
Engineering Interoperable and Reliable Systems
 
Scaling DDS to Millions of Computers and Devices
Scaling DDS to Millions of Computers and DevicesScaling DDS to Millions of Computers and Devices
Scaling DDS to Millions of Computers and Devices
 
Java 5 Language PSM for DDS: Final Submission
Java 5 Language PSM for DDS: Final SubmissionJava 5 Language PSM for DDS: Final Submission
Java 5 Language PSM for DDS: Final Submission
 
Java 5 PSM for DDS: Revised Submission (out of date)
Java 5 PSM for DDS: Revised Submission (out of date)Java 5 PSM for DDS: Revised Submission (out of date)
Java 5 PSM for DDS: Revised Submission (out of date)
 
C++ PSM for DDS: Revised Submission
C++ PSM for DDS: Revised SubmissionC++ PSM for DDS: Revised Submission
C++ PSM for DDS: Revised Submission
 
Web-Enabled DDS: Revised Submission
Web-Enabled DDS: Revised SubmissionWeb-Enabled DDS: Revised Submission
Web-Enabled DDS: Revised Submission
 
Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)Java 5 PSM for DDS: Initial Submission (out of date)
Java 5 PSM for DDS: Initial Submission (out of date)
 
Extensible and Dynamic Topic Types for DDS, Beta 1
Extensible and Dynamic Topic Types for DDS, Beta 1Extensible and Dynamic Topic Types for DDS, Beta 1
Extensible and Dynamic Topic Types for DDS, Beta 1
 
Mapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric ModelMapping the RESTful Programming Model to the DDS Data-Centric Model
Mapping the RESTful Programming Model to the DDS Data-Centric Model
 
Large-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceLarge-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and Finance
 
Data-Centric and Message-Centric System Architecture
Data-Centric and Message-Centric System ArchitectureData-Centric and Message-Centric System Architecture
Data-Centric and Message-Centric System Architecture
 
Extensible and Dynamic Topic Types for DDS
Extensible and Dynamic Topic Types for DDSExtensible and Dynamic Topic Types for DDS
Extensible and Dynamic Topic Types for DDS
 
Easing Integration of Large-Scale Real-Time Systems with DDS
Easing Integration of Large-Scale Real-Time Systems with DDSEasing Integration of Large-Scale Real-Time Systems with DDS
Easing Integration of Large-Scale Real-Time Systems with DDS
 
Java 5 API for DDS RFP (out of date)
Java 5 API for DDS RFP (out of date)Java 5 API for DDS RFP (out of date)
Java 5 API for DDS RFP (out of date)
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDS
 

Recently uploaded

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 

Recently uploaded (20)

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 

DDS in a Nutshell

  • 1. DDS in a Nutshell Data-Centric Architecture and the Data Distribution Service The Global Leader Rick Warren rick.warren@rti.com in DDS Director of Technical Solutions © 2011 Real-Time Innovations, Inc.
  • 2. Stuff You Will Learn DDS is data-centric messaging. 1.  What is “data-centricity” anyway? 2.  Why is it a good way to build and integrate systems? 3.  What’s special about DDS? © 2011 Real-Time Innovations, Inc. 2
  • 3. Data-Centricity by Example: Calendaring Alternative Process #1: 1.  Email: “Meeting Monday at 10:00.” 2.  Email: “Meeting moved to Tuesday.” 3.  Email: “Here’s dial-in info for meeting…” 4.  You: “Where do I have to be? When?” 5.  You: (sifting through email…) © 2011 Real-Time Innovations, Inc. 3
  • 4. Data-Centricity by Example: Calendaring Alternative Process #2: 1.  Calendar: (add meeting Monday at 10:00) 2.  Calendar: (move meeting to Tuesday) 3.  Calendar: (add dial-in info) 4.  You: “Where do I have to be? When?” 5.  You: (check calendar) © 2011 Real-Time Innovations, Inc. 4
  • 5. Data-Centricity by Example: FaceBook Alternative Process #1:   Use the FaceBook web site. Alternative Process #2:   The web site doesn’t exist.   Deduce your friends’ information based on the notifications FaceBook sends you. © 2011 Real-Time Innovations, Inc. 5
  • 6. What’s the Difference? State.   Things have attributes and characteristics “State” (“data”) is a –  The meeting will run 1:00–2:00 snapshot of those in the conference room. –  My friend’s phone number is attributes and 555-1234 and he’s currently characteristics. grooming his cat. –  The car is blue and is traveling north from Sunnyvale at 65 mph.   …whether they exist in the Best Practice: real world, in the computer, or both operate on state   …whether or not we observe directly, not dialogs or acknowledge them about state. © 2011 Real-Time Innovations, Inc. 6
  • 7. Data-Centric = the part of you care about Describing the world as it is at a certain point in time Implication: State of the world can be maintained by infrastructure, not each app © 2011 Real-Time Innovations, Inc. 7
  • 8. Not Data-Centric = Saying anything else   “Hey you: go do this.”   “The thing changed in this way.” Implication: State must be inferred, reconstructed, managed by each app (Sometimes called “message-centricity”: focus on what’s said vs. what is) © 2011 Real-Time Innovations, Inc. 8
  • 9. Why is it better to just describe the world?   Reconstructing the state of the world is hard. –  Must infer based on all previous messages –  Maintaining all these messages is expensive –  Each app makes these inferences => duplicate effort   People make mistakes. –  Many copies of state => may be different => bugs vs. –  Uniform operations on state => fewer bugs © 2011 Real-Time Innovations, Inc. 9
  • 10. Why is it better (over time) to just describe the world? Consider integrating based on Function vs. Stateful Data … © 2011 Real-Time Innovations, Inc. 10
  • 11. Why is it better (over time) to just describe the world?   Computers are   Integration effort stupid. doesn’t scale. –  Integrate based on what –  Integrate at level of to do function => must know => everything integrates everything you might do with everything else => future extension => effort scales with hard square of number of –  Integrate based on what apps exists –  Integrate at level of => do whatever you stateful data like; no one else cares => everything integrates => future extension with common model easy => effort scales with number of apps © 2011 Real-Time Innovations, Inc. 11
  • 12. So it’s “better.” Who cares?   Faster to implement => Save time and money   Easier to integrate and update => Protect your investment   More reliable systems => Protect your business © 2011 Real-Time Innovations, Inc. 12
  • 13. Before We Forget: the Definition For example, data structures in XSD A data-centric architecture: or IDL file. 1.  …is based on a data model that is: Calendar Event = •  Start Time –  Appropriately documented— •  Duration i.e. understandable by humans •  Location –  Formally defined— •  Organizer i.e. understandable by machines –  Discoverable—i.e. can be found during execution 2.  The data model is independent of any domain-specific functionality / application. –  i.e. made of nouns, not verbs 3.  The (instantiated) data model is the only authoritative source of state in the system. © 2011 Real-Time Innovations, Inc. 13
  • 14. DDS: Observe & Respond to a Changing World Other technologies that support data-centricity: –  Databases: SQL –  Web: HTTP (mostly)   …assume the world changes slowly Not scalable   …use network resources inefficiently 100 apps => 100x load   …are highly centralized Slow A few updates/sec App App Server App App State App App Unreliable Failure here kills many apps 14
  • 15. DDS: Observe & Respond to a Changing World DDS:   …allows you to observe frequent changes   …uses network resources efficiently   …is decentralized Fast Scalable Managed Reliable 100,000’s updates/sec Load indep. # apps with QoS No single pt. failure App App App App App App State: Data Bus © 2011 Real-Time Innovations, Inc. 15
  • 16. DDS: Observe & Respond to a Changing World Army JBC-P replaced home-grown messaging w/ DDS:   Tracks 20x more objects with fewer failures   …with 90+% less code   …with 90+% lower CPU resources Fast Scalable Managed Reliable 100,000’s updates/sec Load indep. # apps with QoS No single pt. failure App App App App App App State: Data Bus © 2011 Real-Time Innovations, Inc. 16
  • 17. How DDS Works DDS is data-centric messaging. That is,   Messaging as a technique   for distributing, accessing, and modifying stateful data App App App App App App Data Data in Motion at Rest e.g. DDS complements e.g. database © 2011 Real-Time Innovations, Inc. 17
  • 18. How DDS Works: Concepts & Terminology   Domain: world you’re talking about   Topic: group of similar things Domain –  Similar structure (“type”) what (e.g. medical devices) –  Similar way they change how over time (“QoS”) when   Instance: individual (changing) thing Topic (e.g. EKG readings)   Sample: snapshot of an instance at a point in time Instance (e.g.   DataWriter: source of information readings from about part of the world (topic) EKG #42)   DataReader: observer of part of the world (topic) © 2011 Real-Time Innovations, Inc. 18
  • 19. Conclusion   Data-centric architecture brings significant business benefits –  Save time and money during initial development –  Leverage existing investments as solutions evolve –  Protect mission-critical functions with resilient, highly available implementations   DDS supports data-centricity for dynamic systems –  Develop event-driven systems based on open standards –  Communicate more efficiently: •  Deliver existing capability with fewer hardware resources •  Deliver greater capability with the same hardware resources –  Avoid single points of failure with distributed P2P topology –  Monitor and govern data delivery quality of service © 2011 Real-Time Innovations, Inc. 19
  • 20. Download a free evaluation of RTI Data Distribution Service, Thank You Professional Edition from www.rti.com/downloads © 2011 Real-Time Innovations, Inc. 20