SlideShare uma empresa Scribd logo
1 de 102
Baixar para ler offline
OpenSplice DDS
                                        Delivering Performance, Openness, and Freedom


Angelo Corsaro, Ph.D.
      Chief Technology Officer


                                 A Gentle Introduction
        OMG DDS SIG Co-Chair
angelo.corsaro@prismtech.com
OpenSplice DDS
Delivering Performance, Openness, and Freedom




               “Historical” Perspective
Addressing Data Distribution Challenges
                                                          DDS is standard designed to address the data-distribution challenges across
The OMG DDS Standard                                                             a wide class of Defense and Aerospace Applications
‣ Introduced in 2004 to address the Data
  Distribution challenges faced by a wide
  class of Defense and Aerospace
  Applications
‣ Key requirement for the standard were its
  ability to deliver very high performance while
  seamlessly scaling from embedded to ultra-
  large-scale deployments
‣ Today recommended by key administration
  worldwide and widely adopted across
  several different application domains, such
  as, Automated Trading, Simulations, SCADA,
  Telemetry, etc.

                                                © 2009, PrismTech. All Rights Reserved
The OMG Data Distribution Service (DDS)

DDS v1.2 API Standard
‣ Language Independent, OS and HW architecture                                                        Application

    independent                                                                                           Object/Relational Mapping

‣   DCPS. Standard API for Data-Centric, Topic-                                                    Data Local Reconstruction Layer (DLRL)

    Based, Real-Time Publish/Subscribe
                                                                                                                              Content
‣
                                                                                     Ownership           Durability
    DLRL. Standard API for creating Object Views out                                                                        Subscription

    of collection of Topics                                                                          Minimum Profile

                                                                                          Data Centric Publish/Subscribe (DCPS)
DDSI/RTPS v2.1 Wire Protocol Standard
‣ Standard wire protocol allowing interoperability
                                                                                           Real-Time Publish/Subscribe Protocol

                                                                                             DDS Interoperability Wire Protocol
    between different implementations of the DDS
    standard                                                                                              UDP/IP

‣   Interoperability demonstrated among key DDS
    vendors in March 2009
                                            © 2009, PrismTech. All Rights Reserved
DDS!Recommendations is churning…
     The infrastructure evolution cycle
                – New -> Emerging -> Standard -> Commodity
Increasingly Mandated/Recommended by Administrations
                – Middleware is emerging as OS declines
          ! …DDS is maturing…
‣ US Navy: Open Architecture
                – OMG focus
                – Wire spec




                                                                    Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ DISR/DISA: Net-centric Systems
                – Tools
                – Enterprise integration
                – Multiple products fielded
‣ EuroControl:– Deployed applications!
                 Air Traffic Control Center Operational
  Interoperability
          ! …and adoption is on the rise
                – Navy
                – DISR
‣ QinetiQ: Recommending DDS for VSI
                – FCS/SoSCOE
                           © 2009, PrismTech. All Rights Reserved
OpenSplice DDS
Delivering Performance, Openness, and Freedom




                   As Simple as it Gets
As Simple as it Gets
‣ DDS is based around the concept
 of a fully distributed Global Data
 Space (GDS)



                                                                               Global Data Space




                                                                                     DDS



                                      © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
 of a fully distributed Global Data
 Space (GDS)
‣ Publishers and Subscribers can
 join and leave the GDS at any time
                                                                               Global Data Space




                                                                                     DDS



                                      © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
 of a fully distributed Global Data
                                         Publisher                                                 Subscriber
 Space (GDS)
‣ Publishers and Subscribers can
 join and leave the GDS at any time
                                                                                                    Subscriber
                                       Publisher
                                                                               Global Data Space




                                          Publisher                                                Subscriber

                                                                                     DDS



                                      © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
 of a fully distributed Global Data
                                         Publisher                                                 Subscriber
 Space (GDS)
‣ Publishers and Subscribers can
 join and leave the GDS at any time
                                                                                                    Subscriber
‣ Publishers and Subscribers           Publisher
                                                                               Global Data Space
 express their intent to produce/
 consume specific type of data,
 e.g., Topics
                                          Publisher                                                Subscriber

                                                                                     DDS



                                      © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
 of a fully distributed Global Data
                                         Publisher                                                 Subscriber
 Space (GDS)
‣ Publishers and Subscribers can
 join and leave the GDS at any time
                                                                                                    Subscriber
‣ Publishers and Subscribers           Publisher
                                                                               Global Data Space
 express their intent to produce/
 consume specific type of data,
 e.g., Topics
                                          Publisher                                                Subscriber

                                                                                     DDS



                                      © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
  of a fully distributed Global Data
                                          Publisher                                                 Subscriber
  Space (GDS)
‣ Publishers and Subscribers can
  join and leave the GDS at any time
                                                                                                     Subscriber
‣ Publishers and Subscribers            Publisher                               Global Data Space
  express their intent to produce/
  consume specific type of data,
  e.g., Topics
                                                                                                    Subscriber
‣ Data flows from Publisher to             Publisher

  Subscribers                                                                         DDS



                                       © 2009, PrismTech. All Rights Reserved
As Simple as it Gets
‣ DDS is based around the concept
  of a fully distributed Global Data
                                          Publisher                                                 Subscriber
  Space (GDS)
‣ Publishers and Subscribers can
  join and leave the GDS at any time
                                                                                                     Subscriber
‣ Publishers and Subscribers            Publisher                               Global Data Space
  express their intent to produce/
  consume specific type of data,
  e.g., Topics
                                                                                                    Subscriber
‣ Data flows from Publisher to             Publisher

  Subscribers                                                                         DDS



                                       © 2009, PrismTech. All Rights Reserved
OpenSplice DDS
Delivering Performance, Openness, and Freedom




                           Defining Data
DDS Topics
                                                                                   {Circle, Square, Triangle}
Topic
‣ Unit of information exchanged between
  Publisher and Subscribers.
‣ An association between a unique name, a
  type and a QoS setting                                                     {ShapeType}                        {...}


Topic Type.
                                                                             struct ShapeType {
‣ Type describing the data associated with one                                  long   x;
  or more Topics                                                                long   y;
‣ A Topic type can have a key represented by an                                 long   shapesize;
                                                                                string color;
  arbitrary number of attributes                                             };
‣ Expressed in IDL                                                           #pragma keylist ShapeType color

                                    © 2009, PrismTech. All Rights Reserved
DDS Topics


                                                    Circle


struct ShapeType {
   long   x;
   long   y;
   long   shapesize;                                 Topic                 QoS
   string color;
};
#pragma keylist ShapeType color




                                  © 2009, PrismTech. All Rights Reserved
DDS Topics


                                                 Triangle



struct ShapeType {
   long   x;
   long   y;
   long   shapesize;                                 Topic                 QoS
   string color;
};
#pragma keylist ShapeType color




                                  © 2009, PrismTech. All Rights Reserved
DDS Topic Instances and Samples
Topic Instances
‣ Each key value identifies a unique Topic Instance,
‣ Topic’s instance lifetime can be explicitly
 managed in DDS

Topic Samples
‣ The values assumed by a Topic Instance
 over time are referred as Instance Sample
                   struct ShapeType {
                      long   x;
                      long   y;
                      long   shapesize;
                      string color;
                   };
                   #pragma keylist ShapeType color
                                       © 2009, PrismTech. All Rights Reserved
Topic/Instances/Samples Recap.
   Topics                                                         Instances




                 Samples



            ti     tj                                      tnow       time
                  © 2009, PrismTech. All Rights Reserved
Content Filtering
                                                                               X0                   X1
                                                                                    X0 <= X <= X1
‣ DDS allows to specify content-
 filtered Topics for which a subset
 of SQL92 is used to express the
 filter condition
                                                                      Y0
‣ Content filters can be applied on
 the entire content of the Topic Type                 Y0 <= Y <= Y1

‣ Content filters are applied by DDS
                                                                      Y1
 each time a new sample is
 produced/delivered

                                      © 2009, PrismTech. All Rights Reserved
Filtering Market Data
                               AAPL < $157 | | AAPL > $162                                         MSFT > $35
                       Apple
        164.0                                                                          Microsoft
                                                                                  40


        161.5
                                                                                  30


        159.0

                                                                                  20

        156.5

                                                                                  10

        154.0

                                                                                   0
                       AAPL                                                                 MSFT



‣ DDS continuous queries can be used for filtering the stream of data produced for a
  specific stock symbol.

                                         © 2009, PrismTech. All Rights Reserved
Local Queries
‣ Subscribed Topics can be seen locally as “Tables”
‣ A subset of SQL92 can be used for performing queries on                            X0
 multiple topics as well as natural joins
‣ Queries are              Circle Topic
 performed under                                                                                      Y0
                            color    x               y             shapesize                 Y0
 user control and            red    57              62                50
 provide a result that      blue    90              85                50
                                                                                      Y0 <= Y <= Y1
 depends on the            yellow   30              25                50

 current snapshot of            SELECT * FROM ShapeType s
                                WHERE s.x > 25 AND s.y < 55                                  Y1
 the system, e.g.,
 samples currently          color    x               y             shapesize
 available                 yellow   30              25                50


                                            © 2009, PrismTech. All Rights Reserved
OpenSplice DDS
Delivering Performance, Openness, and Freedom




                        Organizing Data
DDS Partitions

‣ All DDS communication is                                           Domain
                                                                                          Partition

  happens within a Domain
‣ Domain can divided into    Publisher
                                                                                                        Subscriber

  Partitions                                                                  B

‣ Topics are published and                                                        m

  subscribed across on or                                                     A           F

                                                                                                          Subscriber
  more Partitions            Publisher                                        J
                                                                                      D          C


                                                                              K
                                                                                      E




                             Publisher
                                                                                                      Subscriber



                                     © 2009, PrismTech. All Rights Reserved
OpenSplice Network Partitions
‣ OpenSplice DDS allows to            Publisher
                                                                                                                          Subscriber
    define network partitions along                                                     "Red"
                                                                                    B
    with DDS partitions
                                                                                             m

‣   Network partitions are bound to                                                 A                F

    a list of unicast/multicast       Publisher                                     J
                                                                                                          "Green"           Subscriber
    network addresses                                                                            D          C



‣   Partition.Topic combination can                                                 K
                                                                                                 E
                                                                                  "Yellow"
    be mapped into OpenSplice
    DDS Network Partitions            Publisher
                                                                                                                        Subscriber
‣   Wildcards can be used when
    defining the mapping, and in
                                                 Yellow.* => 224.1.1.1                           Green.* => 224.1.1.2
    case of multiple matches                                                                     Green.E => 224.1.1.3
    OpenSplice DDS will always
    consider the best match

                                         © 2009, PrismTech. All Rights Reserved
OpenSplice DDS
Delivering Performance, Openness, and Freedom




                      Quality of Service
Anatomy of a DDS Application

                                                             Topic
                                                              Topic
                                                               Topic
                                                                    Samples
                                                                     Samples
               Instances                                              Samples
                Instances
                 Instances
                                         121 62
                                             1
                                           21 62
                                                   1 22 62
                                                     1 22 62
                                                               1 23 63
                                                                1 23 63
  DataReader
  DataReader
                                          1 21 62
                                        2 20 61
                                                       1 22 62
                                                  2 19 60
                                                                 1 23 63
   DataReader
    DataReader                           2 20 61
                                          2 20 61
                                                    2 19 60
                                                      2 19 60                             DataWriter
                                                                                          DataWriter
     DataReader
      DataReader                        3 25 70   3 25 71
                                                      25       3 25 74   3 26 77
                                                                          3 26 77
                                                                                           DataWriter
                                                                                            DataWriter
                                         3 25 70    3 25 71
                                                        25      3 25 74
                   struct TempSensor {    3 25 70     3 25 71
                                                         25      3 25 74   3 26 77
                      int tID;
                      float temp;
                      float humidity;
                   };
                   #pragma keylist TempSensor tID




                                                 © 2009, PrismTech. All Rights Reserved
Anatomy of a DDS Application

                                                                            Topic
                                                                             Topic
                                                                              Topic
                                                                                   Samples
                                                                                    Samples
                              Instances                                              Samples
                               Instances
                                Instances
                                                        121 62
                                                            1
                                                          21 62
                                                                  1 22 62
                                                                    1 22 62
                                                                              1 23 63
                                                                               1 23 63
               DataReader
               DataReader
                                                         1 21 62
                                                       2 20 61
                                                                      1 22 62
                                                                 2 19 60
                                                                                1 23 63
                DataReader
                 DataReader                             2 20 61
                                                         2 20 61
                                                                   2 19 60
                                                                     2 19 60                              DataWriter
                                                                                                          DataWriter
                  DataReader
                   DataReader                          3 25 70   3 25 71
                                                                     25       3 25 74   3 26 77
                                                                                         3 26 77
                                                                                                           DataWriter
                                                                                                            DataWriter
                                                        3 25 70    3 25 71
                                                                       25      3 25 74
                                  struct TempSensor {    3 25 70     3 25 71
                                                                        25      3 25 74   3 26 77
                                     int tID;
                                     float temp;
Arrows                            };
                                     float humidity;

show                              #pragma keylist TempSensor tID

structural
relationship
s, not data-         Subscriber                                                                          Publisher
flows                                                                    Partition




                                                                © 2009, PrismTech. All Rights Reserved
Anatomy of a DDS Application

                                                                            Topic
                                                                             Topic
                                                                              Topic
                                                                                   Samples
                                                                                    Samples
                              Instances                                              Samples
                               Instances
                                Instances
                                                        121 62
                                                            1
                                                          21 62
                                                                  1 22 62
                                                                    1 22 62
                                                                              1 23 63
                                                                               1 23 63
               DataReader
               DataReader
                                                         1 21 62
                                                       2 20 61
                                                                      1 22 62
                                                                 2 19 60
                                                                                1 23 63
                DataReader
                 DataReader                             2 20 61
                                                         2 20 61
                                                                   2 19 60
                                                                     2 19 60                              DataWriter
                                                                                                          DataWriter
                  DataReader
                   DataReader                          3 25 70   3 25 71
                                                                     25       3 25 74   3 26 77
                                                                                         3 26 77
                                                                                                           DataWriter
                                                                                                            DataWriter
                                                        3 25 70    3 25 71
                                                                       25      3 25 74
                                  struct TempSensor {    3 25 70     3 25 71
                                                                        25      3 25 74   3 26 77
                                     int tID;
                                     float temp;
Arrows                            };
                                     float humidity;

show                              #pragma keylist TempSensor tID

structural
relationship
s, not data-         Subscriber                                                                          Publisher
flows                                                                    Partition

                                                                Domain Participant

                                                                         Domain
                                                                © 2009, PrismTech. All Rights Reserved
QoS Model
‣ QoS-Policies are used to control relevant
  properties of OpenSplice DDS entities,                                                                Type Matching
                                                                                                                                           QoS matching
  such as:                                   QoS              QoS                      QoS                          QoS                   QoS                QoS              QoS

  ‣ Temporal Properties
  ‣ Priority
                                                                                                                    Topic
                                                                                                                              Name
                                                            Publisher                                                                                     Subscriber


  ‣ Durability                                                               ...    DataWriter             writes   Type       reads   DataReader
                                                                                                                                                    ...
                                                                                                                        ...
  ‣ Availability                               DomainParticipant                                         writes     Type      reads    DataReader                  DomainParticipant
                                                                                    DataWriter
  ‣ ...                                                                                                                       Name


‣ Some QoS-Policies are matched based on
                                                                                                                    Topic


                                                                                       QoS                          QoS                    QoS
  a Request vs. Offered Model thus QoS-
  enforcement

‣ Publications and Subscriptions match only if the declared vs. requested QoS are compatible
 ‣ e.g., it is not possible to match a publisher which delivers data unreliably with a subscriber which requires reliability
                                                               © 2009, PrismTech. All Rights Reserved
QoS Policies
QoS Policy           Applicability   RxO   Modifiable                                                                                         Type Matching
                                                                                                                                                                                QoS matching
DURABILITY            T, DR, DW       Y       N                   Data Availability             QoS             QoS                QoS                   QoS                   QoS                QoS              QoS

DURABILITY SERVICE      T, DW        N        N
                                                                                                                                                         Topic
                                                                                                                                                                   Name
                                                                                                              Publisher                                                                        Subscriber

LIFESPAN                T, DW         -       Y                                                                           ...   DataWriter      writes   Type       reads   DataReader
                                                                                                                                                                                         ...

                      T, DR, DW      N        N                                                                                                              ...
HISTORY
                                                                                                 DomainParticipant              DataWriter    writes     Type      reads    DataReader                  DomainParticipant
PRESENTATION             P, S         Y       N                     Data Delivery                                                                                  Name
                                                                                                                                                         Topic
RELIABILITY           T, DR, DW       Y       N
PARTITION                P, S        N        Y                                                                                   QoS                    QoS                    QoS



DESTINATION ORDER     T, DR, DW       Y       N


OWNERSHIP             T, DR, DW       Y       N                                                          ‣ Rich set of QoS allow to configure
OWNERSHIP                DW           -       Y
STRENGTH                                                                                                         several different aspects of data
DEADLINE              T, DR, DW       Y       Y                   Data Timeliness                                availability, delivery and timeliness
LATENCY BUDGET        T, DR, DW       Y       Y


TRANSPORT PRIORITY      T, DW         -       Y
                                                                                                         ‣       QoS can be used to control and
                                                                                                                 optimize network as well as
TIME BASED FILTER        DR           -       Y                       Resources
                                                                                                                 computing resource
RESOURCE LIMITS       T, DR, DW      N        N


USER_DATA            DP, DR, DW      N        Y                     Configuration
TOPIC_DATA                T          N        Y
GROUP_DATA               P, S        N        Y

                                                       © 2009, PrismTech. All Rights Reserved
Mapping QoS                                                                           Which properties does QoS controls?



     TimeBasedFilter         Deadline



                              Data
       Throughput
                             Latency



      LatencyBudget      TransportPriority




                                                                                                                        Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
    Control over Latency/Throughput tradeoff
    Control over data latency
    Control over data priority




                                             © 2009, PrismTech. All Rights Reserved
Mapping QoS                                                                                                  Which properties does QoS controls?



     TimeBasedFilter         Deadline                                                        History



                              Data                                                           Data
       Throughput                                                           Lifespan                        Durability
                             Latency                                                       Availability


                                                                            Ownership
      LatencyBudget      TransportPriority                                                 Ownership
                                                                             Strength




                                                                                                                                               Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
    Control over Latency/Throughput tradeoff
                                                                            Control over data queueing
    Control over data latency
                                                                            Control over data persistency
    Control over data priority
                                                                            Control over data sources hot-swap




                                             © 2009, PrismTech. All Rights Reserved
Mapping QoS                                                                                                               Which properties does QoS controls?



       TimeBasedFilter                  Deadline                                                          History



                                         Data                                                             Data
         Throughput                                                                      Lifespan                        Durability
                                        Latency                                                         Availability


                                                                                         Ownership
        LatencyBudget            TransportPriority                                                      Ownership
                                                                                          Strength




                                                                                                                                                            Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
     Control over Latency/Throughput tradeoff
                                                                                         Control over data queueing
     Control over data latency
                                                                                         Control over data persistency
     Control over data priority
                                                                                         Control over data sources hot-swap


                          Reliability
                                                                                     OpenSplice DDS provides programmatic
                                                   Destination
                                                                                     QoS-driven support for configuring the most
   Presentation          Data Delivery
                                                     Order                           important properties of data distribution!
       Control over data distribution reliability
       Control over data ordering
       Control over presentation


                                                          © 2009, PrismTech. All Rights Reserved
Reliability
The reliability with which data is delivered to applications is impacted in DDS by the
following qualities of service
‣ RELIABILITY
 ‣ BEST_EFORT
 ‣ RELIABLE
‣ HISTORY
 ‣ KEEP_LAST (K)
 ‣ KEEP_ALL
‣ Theoretically, the only way to assure that an application will see all the samples
  produced by a writer is to use RELIABLE+KEEP_ALL. Any other combination could
  induce to samples being discarded on the receiving side because of the HISTORY depth


                                       © 2009, PrismTech. All Rights Reserved
Real-Time
The real-time properties with which data is delivered to applications is impacted in DDS by the following
qualities of service:
‣ TRANSPORT_PRIORITY                  Publisher
                                                            Deadline             Deadline   Deadline   Deadline   Deadline
                                                                                                                             Subscriber


‣ LATENCY_BUDGET
                                                                       Deadline Violation

‣ In addition, DDS provides means for detecting performance failure, e.g., Deadline miss, by means of
  the DEADLINE QoS
‣ Given a periodic task-set {T} with periods Di (with Di < Di+1) and deadline equal to the period, than
  QoS should be set as follows:
 ‣ Assign to each task Ti a TRANSPORT_PRIORITY Pi such that Pi > Pi+1
 ‣ Set for each task Ti a DEADLINE QoS of Di
 ‣ For maximizing throughput and minimizing resource usage set for each Ti a LATENCY_BUDGET
   QoS between Di /2 and Di/3 (this is a rule of thumb, the upper bound is Di-(RTT/2))

                                              © 2009, PrismTech. All Rights Reserved
High Availability
‣ A Topic can have Shared or Exclusive Ownership
‣ Exclusively owned Topics can be modified by a single writer
‣ Writer strength is used to coordinate replicated writers




                                                                                                                                             Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                              StockQuote
                                                        symbol: "MSFT"
                                                                     StockQuote
                                                                     StockQuote
                                                        name: "Microsoft Corp."
                                                                     StockQuote
                                                                 symbol: "GOOG"
                                                                 symbol: "GOOG"
                                                        exchange: "NASD""GOOG"
                                                                 symbol:
                                                                 name: "Google Inc."
                                                        quote: 33.73
                                                                 name: "Google Inc."
                                                               name: "Google Inc."
                                                               exchange: "NASD"
                                                               exchange: "NASD"
                                                               exchange: "NASD"
                                                                        StockQuote
                                                                        StockQuote
                                                                        StockQuote
                                                               quote: 663.97


                         W1
                                                               quote: 663.97"AAPL"
                                                                    symbol: "AAPL"
                                                               quote: 663.97
                                                                    symbol: "AAPL"
                                                                    symbol:
                                                                     name: "Apple Inc."
                                                                     name: "Apple Inc."
                                                                     name: "Apple Inc."
                                                                     exchange: "NASD"
                                                                     exchange: "NASD"
                                                                     exchange: "NASD"



                                                                                                                                   R1
                                                                     quote: 165.37
                                                                     quote: 165.37
                                                                     quote: 165.37




                   STRENGTH=3

                                            StockQuote
                                         symbol: "AAPL"
                                      StockQuote Inc."
                                         name: "Apple
                                  symbol: "GOOG""NASD"
                                         exchange:
                                  name: quote: 165.37
                                         "Google Inc."
                              StockQuote "NASD"
                                  exchange:
                         symbol: "MSFT"
                                  quote: 663.97
                         name: "Microsoft Corp."
                         exchange: "NASD"
                         quote: 33.73




                W1’                                                                                                                     R2
            STRENGTH=2                                  StockQuote
                                                     symbol: "AAPL"
                                                  StockQuote Inc."
                                                     name: "Apple
                                              symbol: "GOOG""NASD"
                                                     exchange:
                                              name: quote: 165.37
                                                     "Google Inc."
                                          StockQuote "NASD"
                                              exchange:
                                     symbol: "MSFT"
                                              quote: 663.97
                                     name: "Microsoft Corp."
                                     exchange: "NASD"
                                     quote: 33.73




                   W2’’                                                                                                            R3

               STRENGTH=1



                                                                                          © 2009, PrismTech. All Rights Reserved
High Availability
‣ A Topic can have Shared or Exclusive Ownership
‣ Exclusively owned Topics can be modified by a single writer
‣ Writer strength is used to coordinate replicated writers




                                                                                                                                                                           Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                           StockQuote
                                                     symbol: "MSFT"
                                                                  StockQuote
                                                                  StockQuote
                                                     name: "Microsoft Corp."
                                                                  StockQuote
                                                              symbol: "GOOG"
                                                              symbol: "GOOG"
                                                     exchange: "NASD""GOOG"
                                                              symbol:
                                                              name: "Google Inc."
                                                     quote: 33.73
                                                              name: "Google Inc."
                                                            name: "Google Inc."
                                                            exchange: "NASD"
                                                            exchange: "NASD"
                                                            exchange: "NASD"
                                                            quote: 663.97


                         W1
                                                            quote: 663.97
                                                            quote: 663.97




                                                                                                                                 StockQuote
                                                                                                                             symbol: "AAPL"
                                                                                                                                                                 R1
                   STRENGTH=3                                                                                                name: "Apple Inc."
                                                                                                                             exchange: "NASD"
                                                                                                                             quote: 165.37




                                  StockQuote
                               symbol: "GOOG"
                               name: "Google Inc."
                               StockQuote "NASD"
                                  exchange:
                         symbol: "MSFT"
                                  quote: 663.97
                         name: "Microsoft Corp."
                         exchange: "NASD"
                         quote: 33.73




                W1’                                                                                                                                                   R2
                                                                                                                                                StockQuote
                                                                                                                                            symbol: "AAPL"
                                                                                                                                            name: "Apple Inc."
                                                                                                                                            exchange: "NASD"

            STRENGTH=2
                                                                                                                                            quote: 165.37


                                            StockQuote
                                         symbol: "GOOG"
                                         name: "Google Inc."
                                        StockQuote "NASD"
                                           exchange:
                                  symbol: "MSFT"
                                           quote: 663.97
                                  name: "Microsoft Corp."
                                  exchange: "NASD"
                                  quote: 33.73




                   W2’’
                                                                                                                                     StockQuote
                                                                                                                                 symbol: "AAPL"
                                                                                                                                 name: "Apple Inc."
                                                                                                                                 exchange: "NASD"
                                                                                                                                 quote: 165.37
                                                                                                                                                                 R3

               STRENGTH=1



                                                                                    © 2009, PrismTech. All Rights Reserved
High Availability
‣ A Topic can have Shared or Exclusive Ownership
‣ Exclusively owned Topics can be modified by a single writer
‣ Writer strength is used to coordinate replicated writers




                                                                                                                                                                                 Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                              StockQuote
                                                        symbol: "MSFT"
                                                        name: "Microsoft Corp."
                                                        exchange: "NASD"
                                                        quote: 33.73




                         W1
                                                                                                                                       StockQuote
                                                                                                                                   symbol: "AAPL"
                                                                                                                                                                       R1
                   STRENGTH=3                                                                                                      name: "Apple Inc."
                                                                                                                                   exchange: "NASD"
                                                                                                                                   quote: 165.37
                                                                                                                                StockQuote
                                                                                                                            symbol: "GOOG"
                                                                                                                            name: "Google Inc."
                                                                                                                            exchange: "NASD"
                                                                                                                            quote: 663.97



                               StockQuote
                         symbol: "MSFT"
                         name: "Microsoft Corp."
                         exchange: "NASD"
                         quote: 33.73
                                                                                                                                                  StockQuote


                W1’                                                                                                                                                         R2
                                                                                                                                              symbol: "GOOG"
                                                                                                                                              name: "Google Inc."
                                                                                                                                              exchange: "NASD"
                                                                                                                                              quote: 663.97
                                                                                                                                                      StockQuote
                                                                                                                                                  symbol: "AAPL"
                                                                                                                                                  name: "Apple Inc."
                                                                                                                                                  exchange: "NASD"

            STRENGTH=2
                                                                                                                                                  quote: 165.37




                                           StockQuote
                                     symbol: "MSFT"
                                     name: "Microsoft Corp."
                                     exchange: "NASD"                                                                          StockQuote
                                     quote: 33.73                                                                          symbol: "GOOG"



                                                                                                                                                                       R3
                                                                                                                           name: "Google Inc."



                   W2’’
                                                                                                                           exchange: "NASD"StockQuote
                                                                                                                           quote: 663.97symbol: "AAPL"
                                                                                                                                       name: "Apple Inc."
                                                                                                                                       exchange: "NASD"
                                                                                                                                       quote: 165.37




               STRENGTH=1



                                                                                  © 2009, PrismTech. All Rights Reserved
High Availability
‣ A Topic can have Shared or Exclusive Ownership
‣ Exclusively owned Topics can be modified by a single writer
‣ Writer strength is used to coordinate replicated writers




                                                                                                                                            Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                         StockQuote



                                                                                                                                  R1
                                                                                                     symbol: "AAPL"
                                                                                                     name: "Apple Inc."
                                                                                                     exchange: "NASD"
                                                                                                     quote: 165.37




                                                                                                  StockQuote
                                                                                              symbol: "GOOG"
                                                                                              name: "Google Inc."
                                                                                              exchange: "NASD"
                                                                                              quote: 663.97




                                                                                                   StockQuote
                                                                                               symbol: "GOOG"
                                                                                               name: "Google Inc."
                                                                                               exchange: "NASD"
                                                                                               quote: 663.97


                                                                                                                 StockQuote
                                                                                                             symbol: "AAPL"
                                                                                                             name: "Apple Inc."
                                                                                                             exchange: "NASD"
                                                                                                                                       R2
                                                                                                             quote: 165.37




                                 StockQuote
                                 StockQuote
                                 StockQuote                                                       StockQuote
                           symbol: "MSFT"
                           symbol: "MSFT"
                           symbol: "MSFT"                                                     symbol: "GOOG"
                           name: "Microsoft Corp."
                           name: "Microsoft Corp."
                           name: "Microsoft Corp."
                           exchange: "NASD"
                           exchange: "NASD"                                                   name: "Google Inc."
                           exchange: "NASD"
                           quote: 33.73
                           quote: 33.73
                           quote: 33.73                                                       exchange: "NASD"
                                                                                              quote: 663.97


                                                                                                      StockQuote



                                                                                                                                  R3
                                                                                                  symbol: "AAPL"



                  W2’’
                                                                                                  name: "Apple Inc."
                                                                                                  exchange: "NASD"
                                                                                                  quote: 165.37




              STRENGTH=1



                                                     © 2009, PrismTech. All Rights Reserved
High Availability
‣ A Topic can have Shared or Exclusive Ownership
‣ Exclusively owned Topics can be modified by a single writer
‣ Writer strength is used to coordinate replicated writers




                                                                                                                                                          Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                                       StockQuote



                                                                                                                                                R1
                                                                                                                   symbol: "AAPL"
                                                                                                                   name: "Apple Inc."
                                                                                                                   exchange: "NASD"
                                                                                       StockQuote                  quote: 165.37
                                                                                 symbol: "MSFT"
                                                                                 name: "Microsoft Corp."
                                                                                 exchange: "NASD"
                                                                                 quote: 33.73
                                                                                                               StockQuote
                                                                                                           symbol: "GOOG"
                                                                                                           name: "Google Inc."
                                                                                                           exchange: "NASD"
                                                                                                           quote: 663.97




                                                                                                                StockQuote
                                                                                                            symbol: "GOOG"
                                                                                                            name: "Google Inc."
                                                                                                            exchange: "NASD"
                                                                                                            quote: 663.97
                                                                                                   StockQuote



                                                                                                                                                     R2
                                                                                             symbol: "MSFT"
                                                                                             name: "Microsoft Corp."
                                                                                                                               StockQuote
                                                                                             exchange: "NASD"
                                                                                             quote: 33.73
                                                                                                                           symbol: "AAPL"
                                                                                                                           name: "Apple Inc."
                                                                                                                           exchange: "NASD"
                                                                                                                           quote: 165.37




                                                                                                               StockQuote
                                                                                                           symbol: "GOOG"
                                                                                                           name: "Google Inc."
                                                                                       StockQuote          exchange: "NASD"
                                                                                 symbol: "MSFT"            quote: 663.97
                                                                                 name: "Microsoft Corp."
                                                                                 exchange: "NASD"
                                                                                 quote: 33.73
                                                                                                                    StockQuote



                                                                                                                                                R3
                                                                                                                symbol: "AAPL"



                  W2’’
                                                                                                                name: "Apple Inc."
                                                                                                                exchange: "NASD"
                                                                                                                quote: 165.37




              STRENGTH=1



                                        © 2009, PrismTech. All Rights Reserved
Eventual Consistency & R/W Caches
                   DataReader

   DataReader           1   1

                        2   1                                                      DataWriter
      1   1
                        3   1




                                                                                                     Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
      2   1                                                                            1   2
                     Topic
                DataReader                             1     2                         2   3
      3   1
                DataReader Cache                       2     2       2     3           3   1
      Topic
                    1   1
DataReader Cache 2                                                                     Topic
                        1
                                                                 DDS              DataWriter Cache
                    3   1

                    Topic
              DataReader Cache

                 Under an Eventual Consistency Model, DDS guarantees that all matched
                 Reader Caches will eventually be identical of the respective Writer Cache
                                         © 2009, PrismTech. All Rights Reserved
QoS Impacting the Consistency Model
The DDS Consistency Model is a property that can be associated to Topics or further refined by
Reader/Writers. The property is controlled by the following QoS Policies:
‣ DURABILITY
 ‣ VOLATILE | TRANSIENT_LOCAL | TRANSIENT | PERSISTENT
‣ LIFESPAN




                                                                                                                         Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
‣ RELIABILITY
 ‣ RELIABLE | BEST_EFFORT
‣ DESTINATION ORDER
 ‣ SOURCE_TIMESTAMP | DESTINATION_TIMESTAMP
                                                        QoS Policy                     Applicability   RxO   Modifiable
                                                        DURABILITY                      T, DR, DW       Y       N
                                                        LIFESPAN                          T, DW         -       Y
                                                        RELIABILITY                     T, DR, DW       Y       N
                                                        DESTINATION ORDER               T, DR, DW       Y       N


                                              © 2009, PrismTech. All Rights Reserved
QoS Impacting the Consistency Model

                           DURABILITY           RELIABILITY                           DESTINATION_ORDER      LIFESPAN
Eventual Consistency         VOLATILE               RELIABLE                          SOURCE_TIMESTAMP         INF.
(No Crash / Recovery)
Eventual Consistency      TRANSIENT_LOCAL           RELIABLE                          SOURCE_TIMESTAMP         INF.




                                                                                                                        Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
(Reader Crash / Recovery)
Eventual Consistency        TRANSIENT               RELIABLE                          SOURCE_TIMESTAMP         INF.
(Crash/Recovery)
Eventual Consistency       PERSISTENT               RELIABLE                          SOURCE_TIMESTAMP         INF.
(Crash/Recovery)
Weak Consistency               ANY                        ANY                        DESTINATION_TIMESTAMP     ANY
Weak Consistency               ANY             BEST_EFFORT                                   ANY               ANY
Weak Consistency               ANY                        ANY                                ANY                N



                                            © 2009, PrismTech. All Rights Reserved
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                             {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                             {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                 N     {J}




                                                                                                                                   Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B


                     P1                                   m

                                               A                           F


                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                             {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                             {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                 N     {J}




                                                                                                                                   Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B


                     P1                                   m

                          A                    A                           F


                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                             {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                             {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                  N    {J}




                                                                                                                                   Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B
                                                                                                                    A
                     P1                                   m

                                               A
                                               A                           F


                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved        A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                             {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                             {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                  N    {J}




                                                                                                                                   Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B
                                                                                                                    A
                     P1                                   m

                        B                      A
                                               A                           F


                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved        A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                             {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                             {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                  N    {J}




                                                                                                                                   Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B
                                               B
                                                                                                                    A
                     P1                                   m

                                               A
                                               A                           F


                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved        A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                               {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                               {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                  N      {J}




                                                                                                                                     Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B
                                               B
                                                                                                                    A
                     P1                                   m
                                                                                                                S= {A, B, J}
                                               A
                                               A                           F

                                                                                                                    S2
                                               J
                                                                   D                           C
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved        A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                    INF.
Crash / Recovery)
                                                                                                                               {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                    INF.
                                                                                                                               {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                  N      {J}




                                                                                                                                     Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                 S1
                  P = {A, B}                   B
                                               B
                                                                                                                    A
                     P1                                   m
                                                                                                                S= {A, B, J}
                                               A
                                               A                           F

                                                                                                                    S2
                                               J
                                                                   D                           C                    BA
                    P = {D, C, J}

                       P2                      K
                                                                   E



                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved        A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                              LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                      INF.
Crash / Recovery)
                                                                                                                                 {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                      INF.
                                                                                                                                 {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                     N     {J}




                                                                                                                                       Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                              S = {A, D}

                                                                                                                  S1
                                               B
                                               B
                                                                                                                       A
                                                          m
                                                                                                                  S= {A, B, J}
                                               A                           F

                                                                                                                       S2
                                               J
                                                                   D                           C                       BA
                    P = {D, C, J}

                       P2                      K
                                                                    E


                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved         A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                                  LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                          INF.
Crash / Recovery)
                                                                                                                                     {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                          INF.
                                                                                                                                     {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                         N     {J}




                                                                                                                                           Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                                 S = {A, D}

                                                                                                                      S1
                                               B
                                               B
                                                                                                                           A
                                                          m
                                                                                                                      S= {A, B, J}
                                               A                           F

                                                                                                                           S2
                                               J
                                                                   D                           C                           BA
                    P = {D, C, J}                                                                             S= {A, B, D, J}

                       P2                      K
                                                                    E                                               S3

                                                                                                    S = {A}

                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved         A
Eventual Consistency @ Work
                                      DURABILITY       RELIABILITY DESTINATION_ORDER                                  LIFESPAN
Eventual Consistency (Reader        TRANSIENT_LOCAL       RELIABLE                SOURCE_TIMESTAMP                          INF.
Crash / Recovery)
                                                                                                                                     {A}
Eventual Consistency                   TRANSIENT          RELIABLE                SOURCE_TIMESTAMP                          INF.
                                                                                                                                     {B}
(Crash/Recovery)
Weak Consistency                         ANY                  ANY                                  ANY                          N    {J}




                                                                                                                                           Proprietary Information - Distribution without Expressed Written Permission is Prohibited.
                                                                                                                 S = {A, D}

                                                                                                                      S1
                                               B
                                               B
                                                                                                                            A
                                                          m
                                                                                                                      S= {A, B, J}
                                               A                           F

                                                                                                                           S2
                                               J
                                               J
                                                                   D
                                                                   D                           C                            BA
                    P = {D, C, J}                                                                             S= {A, B, D, J}

                       P2                      K
                                                                    E                                               S3

                                                                                                    S = {A}            JB


                                                                                                      S4
                                                      © 2009, PrismTech. All Rights Reserved         A
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS
A Gentle Introduction to OpenSplice DDS

Mais conteúdo relacionado

Mais procurados

20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報Amazon Web Services Japan
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...Amazon Web Services Korea
 
8 Things You Need to Know About DRaaS
8 Things You Need to Know About DRaaS8 Things You Need to Know About DRaaS
8 Things You Need to Know About DRaaSmarketingunitrends
 
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messagesMulti-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messagesLINE Corporation
 
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)Johann Lombardi
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDSRick Warren
 
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門Yuki Morishita
 
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
 
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現YosukeIshii6
 
Performance and Scalability with the Application Load Balancer Cloudlet
Performance and Scalability with the Application Load Balancer CloudletPerformance and Scalability with the Application Load Balancer Cloudlet
Performance and Scalability with the Application Load Balancer CloudletAkamai Developers & Admins
 
NF103: Choosing The Right Nutanix Platform
NF103: Choosing The Right Nutanix PlatformNF103: Choosing The Right Nutanix Platform
NF103: Choosing The Right Nutanix PlatformNEXTtour
 
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証Wataru Unno
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud ComputingLiming Liu
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAngelo Corsaro
 
Running Mission Critical Workloads on AWS
Running Mission Critical Workloads on AWSRunning Mission Critical Workloads on AWS
Running Mission Critical Workloads on AWSAmazon Web Services
 
DatadogでAWS監視やってみた
DatadogでAWS監視やってみたDatadogでAWS監視やってみた
DatadogでAWS監視やってみたtyamane
 
Cassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWSCassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWSAdrian Cockcroft
 

Mais procurados (20)

20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
 
VMware cloud on AWS
VMware cloud on AWSVMware cloud on AWS
VMware cloud on AWS
 
8 Things You Need to Know About DRaaS
8 Things You Need to Know About DRaaS8 Things You Need to Know About DRaaS
8 Things You Need to Know About DRaaS
 
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messagesMulti-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
 
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
 
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)
Introduction to the DAOS Scale-out object store (HLRS Workshop, April 2017)
 
Introduction to DDS
Introduction to DDSIntroduction to DDS
Introduction to DDS
 
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
 
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
 
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTTデータが考えるデータ基盤の次の一手 ~AI活用のために知っておくべき新潮流とは?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現
TidalScaleで複数の物理サーバを集約しインメモリーコンピューティングを実現
 
Performance and Scalability with the Application Load Balancer Cloudlet
Performance and Scalability with the Application Load Balancer CloudletPerformance and Scalability with the Application Load Balancer Cloudlet
Performance and Scalability with the Application Load Balancer Cloudlet
 
NF103: Choosing The Right Nutanix Platform
NF103: Choosing The Right Nutanix PlatformNF103: Choosing The Right Nutanix Platform
NF103: Choosing The Right Nutanix Platform
 
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証
[Citrix on Nutanix] LoginVSI による MCSとPVS の比較検証
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part I
 
Running Mission Critical Workloads on AWS
Running Mission Critical Workloads on AWSRunning Mission Critical Workloads on AWS
Running Mission Critical Workloads on AWS
 
DatadogでAWS監視やってみた
DatadogでAWS監視やってみたDatadogでAWS監視やってみた
DatadogでAWS監視やってみた
 
Cassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWSCassandra Performance and Scalability on AWS
Cassandra Performance and Scalability on AWS
 

Destaque

10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDSAngelo Corsaro
 
RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010Gerardo Pardo-Castellote
 
Corporate Disclosure From An Investors Perspective 2006
Corporate Disclosure From An Investors Perspective  2006Corporate Disclosure From An Investors Perspective  2006
Corporate Disclosure From An Investors Perspective 2006Reed Kathrein
 
Archydro
ArchydroArchydro
Archydroabkhiz
 
Ralph credsdeck 12
Ralph credsdeck 12Ralph credsdeck 12
Ralph credsdeck 12Jay Armitage
 
Osservatorio sul turismo Scolastico 2012
Osservatorio sul turismo Scolastico 2012 Osservatorio sul turismo Scolastico 2012
Osservatorio sul turismo Scolastico 2012 Jacopo Zurlo
 
Worshop
WorshopWorshop
Worshopoiwan
 
Michael V Katsaitis
Michael V KatsaitisMichael V Katsaitis
Michael V Katsaitismkatsaitis
 
In Memoriam Octavian Paler
In Memoriam Octavian PalerIn Memoriam Octavian Paler
In Memoriam Octavian Palerpuicarmariana
 
O Lam
O LamO Lam
O Lamoiwan
 
BioStrategy - Feb 09 - Role of CFO at a new venture
BioStrategy - Feb 09 - Role of CFO at a new ventureBioStrategy - Feb 09 - Role of CFO at a new venture
BioStrategy - Feb 09 - Role of CFO at a new venturethess1121
 

Destaque (20)

10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS10 Reasons for Choosing OpenSplice DDS
10 Reasons for Choosing OpenSplice DDS
 
RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010RTI Data-Distribution Service (DDS) Master Class - 2010
RTI Data-Distribution Service (DDS) Master Class - 2010
 
SPH 106 Ch 1
SPH 106 Ch 1SPH 106 Ch 1
SPH 106 Ch 1
 
Corporate Disclosure From An Investors Perspective 2006
Corporate Disclosure From An Investors Perspective  2006Corporate Disclosure From An Investors Perspective  2006
Corporate Disclosure From An Investors Perspective 2006
 
ikp213-07-stl
ikp213-07-stlikp213-07-stl
ikp213-07-stl
 
ikp321-02
ikp321-02ikp321-02
ikp321-02
 
Archydro
ArchydroArchydro
Archydro
 
Ralph credsdeck 12
Ralph credsdeck 12Ralph credsdeck 12
Ralph credsdeck 12
 
Riz's IRAP Slides
Riz's IRAP SlidesRiz's IRAP Slides
Riz's IRAP Slides
 
Arquitectura 2 B
Arquitectura 2 BArquitectura 2 B
Arquitectura 2 B
 
ikh331-05-transaction
ikh331-05-transactionikh331-05-transaction
ikh331-05-transaction
 
Osservatorio sul turismo Scolastico 2012
Osservatorio sul turismo Scolastico 2012 Osservatorio sul turismo Scolastico 2012
Osservatorio sul turismo Scolastico 2012
 
Destiny Overview
Destiny OverviewDestiny Overview
Destiny Overview
 
Good thoughts
Good thoughtsGood thoughts
Good thoughts
 
ikd312-09-normalisasi
ikd312-09-normalisasiikd312-09-normalisasi
ikd312-09-normalisasi
 
Worshop
WorshopWorshop
Worshop
 
Michael V Katsaitis
Michael V KatsaitisMichael V Katsaitis
Michael V Katsaitis
 
In Memoriam Octavian Paler
In Memoriam Octavian PalerIn Memoriam Octavian Paler
In Memoriam Octavian Paler
 
O Lam
O LamO Lam
O Lam
 
BioStrategy - Feb 09 - Role of CFO at a new venture
BioStrategy - Feb 09 - Role of CFO at a new ventureBioStrategy - Feb 09 - Role of CFO at a new venture
BioStrategy - Feb 09 - Role of CFO at a new venture
 

Semelhante a A Gentle Introduction to OpenSplice DDS

OMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsOMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsAngelo Corsaro
 
Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Angelo Corsaro
 
OMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IOMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IAngelo Corsaro
 
Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Sumant Tambe
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsAngelo Corsaro
 
Building and Deploying OpenSplice DDS Based Cloud Messaging
Building and Deploying OpenSplice DDS Based Cloud Messaging Building and Deploying OpenSplice DDS Based Cloud Messaging
Building and Deploying OpenSplice DDS Based Cloud Messaging Angelo Corsaro
 
The DDS Tutorial - Part I
The DDS Tutorial - Part IThe DDS Tutorial - Part I
The DDS Tutorial - Part IAngelo Corsaro
 
Roadmap and Technology Incubators
Roadmap and Technology IncubatorsRoadmap and Technology Incubators
Roadmap and Technology IncubatorsAngelo Corsaro
 
Tweeting with OpenSplice DDS
Tweeting with OpenSplice DDSTweeting with OpenSplice DDS
Tweeting with OpenSplice DDSAngelo Corsaro
 
LINBIT_HA_Business_Apr2016
LINBIT_HA_Business_Apr2016LINBIT_HA_Business_Apr2016
LINBIT_HA_Business_Apr2016Alexandre Huynh
 
DDS Interoperability Demo
DDS Interoperability DemoDDS Interoperability Demo
DDS Interoperability DemoAngelo Corsaro
 
Cyclone DDS Unleashed: The Origins
Cyclone DDS Unleashed: The OriginsCyclone DDS Unleashed: The Origins
Cyclone DDS Unleashed: The OriginsZettaScaleTechnology
 
High Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaHigh Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaAngelo Corsaro
 
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013RightScale
 
SNIA Cloud Storage Presentation
SNIA Cloud Storage PresentationSNIA Cloud Storage Presentation
SNIA Cloud Storage PresentationMark Carlson
 
Cloud as a Flexible &amp; Collaborative Tool for Creators
Cloud as a Flexible &amp; Collaborative Tool for CreatorsCloud as a Flexible &amp; Collaborative Tool for Creators
Cloud as a Flexible &amp; Collaborative Tool for Creatorsjlchatelain
 

Semelhante a A Gentle Introduction to OpenSplice DDS (20)

OMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time SystemsOMG DDS: The Data Distribution Service for Real-Time Systems
OMG DDS: The Data Distribution Service for Real-Time Systems
 
Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.Getting Started with OpenSplice DDS Community Ed.
Getting Started with OpenSplice DDS Community Ed.
 
OMG DDS Tutorial - Part I
OMG DDS Tutorial - Part IOMG DDS Tutorial - Part I
OMG DDS Tutorial - Part I
 
DDS QoS Unleashed
DDS QoS UnleashedDDS QoS Unleashed
DDS QoS Unleashed
 
Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++Standardizing the Data Distribution Service (DDS) API for Modern C++
Standardizing the Data Distribution Service (DDS) API for Modern C++
 
Tuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS ApplicationsTuning and Troubleshooting OpenSplice DDS Applications
Tuning and Troubleshooting OpenSplice DDS Applications
 
Building and Deploying OpenSplice DDS Based Cloud Messaging
Building and Deploying OpenSplice DDS Based Cloud Messaging Building and Deploying OpenSplice DDS Based Cloud Messaging
Building and Deploying OpenSplice DDS Based Cloud Messaging
 
The DDS Tutorial - Part I
The DDS Tutorial - Part IThe DDS Tutorial - Part I
The DDS Tutorial - Part I
 
Roadmap and Technology Incubators
Roadmap and Technology IncubatorsRoadmap and Technology Incubators
Roadmap and Technology Incubators
 
Tweeting with OpenSplice DDS
Tweeting with OpenSplice DDSTweeting with OpenSplice DDS
Tweeting with OpenSplice DDS
 
Cloudand Xchange
Cloudand XchangeCloudand Xchange
Cloudand Xchange
 
LINBIT_HA_Business_Apr2016
LINBIT_HA_Business_Apr2016LINBIT_HA_Business_Apr2016
LINBIT_HA_Business_Apr2016
 
DDN Product Update from SC13
DDN Product Update from SC13DDN Product Update from SC13
DDN Product Update from SC13
 
DDS Interoperability Demo
DDS Interoperability DemoDDS Interoperability Demo
DDS Interoperability Demo
 
Cyclone DDS Unleashed: The Origins
Cyclone DDS Unleashed: The OriginsCyclone DDS Unleashed: The Origins
Cyclone DDS Unleashed: The Origins
 
DDS Made Simple
DDS Made SimpleDDS Made Simple
DDS Made Simple
 
High Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and ScalaHigh Performance Distributed Computing with DDS and Scala
High Performance Distributed Computing with DDS and Scala
 
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013
Using Hybrid Cloud for Scalable, Global Applications - RightScale Compute 2013
 
SNIA Cloud Storage Presentation
SNIA Cloud Storage PresentationSNIA Cloud Storage Presentation
SNIA Cloud Storage Presentation
 
Cloud as a Flexible &amp; Collaborative Tool for Creators
Cloud as a Flexible &amp; Collaborative Tool for CreatorsCloud as a Flexible &amp; Collaborative Tool for Creators
Cloud as a Flexible &amp; Collaborative Tool for Creators
 

Mais de Angelo Corsaro

zenoh: The Edge Data Fabric
zenoh: The Edge Data Fabriczenoh: The Edge Data Fabric
zenoh: The Edge Data FabricAngelo Corsaro
 
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationData Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationAngelo Corsaro
 
zenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computezenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computeAngelo Corsaro
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolAngelo Corsaro
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolAngelo Corsaro
 
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingBreaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingAngelo Corsaro
 
fog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructurefog05: The Fog Computing Infrastructure
fog05: The Fog Computing InfrastructureAngelo Corsaro
 
Cyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeCyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeAngelo Corsaro
 
fog05: The Fog Computing Platform
fog05: The Fog Computing Platformfog05: The Fog Computing Platform
fog05: The Fog Computing PlatformAngelo Corsaro
 
Programming in Scala - Lecture Four
Programming in Scala - Lecture FourProgramming in Scala - Lecture Four
Programming in Scala - Lecture FourAngelo Corsaro
 
Programming in Scala - Lecture Three
Programming in Scala - Lecture ThreeProgramming in Scala - Lecture Three
Programming in Scala - Lecture ThreeAngelo Corsaro
 
Programming in Scala - Lecture Two
Programming in Scala - Lecture TwoProgramming in Scala - Lecture Two
Programming in Scala - Lecture TwoAngelo Corsaro
 
Programming in Scala - Lecture One
Programming in Scala - Lecture OneProgramming in Scala - Lecture One
Programming in Scala - Lecture OneAngelo Corsaro
 
Data Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsData Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsAngelo Corsaro
 
The DDS Security Standard
The DDS Security StandardThe DDS Security Standard
The DDS Security StandardAngelo Corsaro
 
The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution ServiceAngelo Corsaro
 
RUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsRUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsAngelo Corsaro
 

Mais de Angelo Corsaro (20)

Zenoh: The Genesis
Zenoh: The GenesisZenoh: The Genesis
Zenoh: The Genesis
 
zenoh: The Edge Data Fabric
zenoh: The Edge Data Fabriczenoh: The Edge Data Fabric
zenoh: The Edge Data Fabric
 
Zenoh Tutorial
Zenoh TutorialZenoh Tutorial
Zenoh Tutorial
 
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair MonetisationData Decentralisation: Efficiency, Privacy and Fair Monetisation
Data Decentralisation: Efficiency, Privacy and Fair Monetisation
 
zenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query computezenoh: zero overhead pub/sub store/query compute
zenoh: zero overhead pub/sub store/query compute
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocol
 
zenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocolzenoh -- the ZEro Network OverHead protocol
zenoh -- the ZEro Network OverHead protocol
 
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog ComputingBreaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
 
Eastern Sicily
Eastern SicilyEastern Sicily
Eastern Sicily
 
fog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructurefog05: The Fog Computing Infrastructure
fog05: The Fog Computing Infrastructure
 
Cyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT AgeCyclone DDS: Sharing Data in the IoT Age
Cyclone DDS: Sharing Data in the IoT Age
 
fog05: The Fog Computing Platform
fog05: The Fog Computing Platformfog05: The Fog Computing Platform
fog05: The Fog Computing Platform
 
Programming in Scala - Lecture Four
Programming in Scala - Lecture FourProgramming in Scala - Lecture Four
Programming in Scala - Lecture Four
 
Programming in Scala - Lecture Three
Programming in Scala - Lecture ThreeProgramming in Scala - Lecture Three
Programming in Scala - Lecture Three
 
Programming in Scala - Lecture Two
Programming in Scala - Lecture TwoProgramming in Scala - Lecture Two
Programming in Scala - Lecture Two
 
Programming in Scala - Lecture One
Programming in Scala - Lecture OneProgramming in Scala - Lecture One
Programming in Scala - Lecture One
 
Data Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained EnvionrmentsData Sharing in Extremely Resource Constrained Envionrments
Data Sharing in Extremely Resource Constrained Envionrments
 
The DDS Security Standard
The DDS Security StandardThe DDS Security Standard
The DDS Security Standard
 
The Data Distribution Service
The Data Distribution ServiceThe Data Distribution Service
The Data Distribution Service
 
RUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming RuminationsRUSTing -- Partially Ordered Rust Programming Ruminations
RUSTing -- Partially Ordered Rust Programming Ruminations
 

Último

AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
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
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 

Último (20)

AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

A Gentle Introduction to OpenSplice DDS

  • 1. OpenSplice DDS Delivering Performance, Openness, and Freedom Angelo Corsaro, Ph.D. Chief Technology Officer A Gentle Introduction OMG DDS SIG Co-Chair angelo.corsaro@prismtech.com
  • 2. OpenSplice DDS Delivering Performance, Openness, and Freedom “Historical” Perspective
  • 3. Addressing Data Distribution Challenges DDS is standard designed to address the data-distribution challenges across The OMG DDS Standard a wide class of Defense and Aerospace Applications ‣ Introduced in 2004 to address the Data Distribution challenges faced by a wide class of Defense and Aerospace Applications ‣ Key requirement for the standard were its ability to deliver very high performance while seamlessly scaling from embedded to ultra- large-scale deployments ‣ Today recommended by key administration worldwide and widely adopted across several different application domains, such as, Automated Trading, Simulations, SCADA, Telemetry, etc. © 2009, PrismTech. All Rights Reserved
  • 4. The OMG Data Distribution Service (DDS) DDS v1.2 API Standard ‣ Language Independent, OS and HW architecture Application independent Object/Relational Mapping ‣ DCPS. Standard API for Data-Centric, Topic- Data Local Reconstruction Layer (DLRL) Based, Real-Time Publish/Subscribe Content ‣ Ownership Durability DLRL. Standard API for creating Object Views out Subscription of collection of Topics Minimum Profile Data Centric Publish/Subscribe (DCPS) DDSI/RTPS v2.1 Wire Protocol Standard ‣ Standard wire protocol allowing interoperability Real-Time Publish/Subscribe Protocol DDS Interoperability Wire Protocol between different implementations of the DDS standard UDP/IP ‣ Interoperability demonstrated among key DDS vendors in March 2009 © 2009, PrismTech. All Rights Reserved
  • 5. DDS!Recommendations is churning… The infrastructure evolution cycle – New -> Emerging -> Standard -> Commodity Increasingly Mandated/Recommended by Administrations – Middleware is emerging as OS declines ! …DDS is maturing… ‣ US Navy: Open Architecture – OMG focus – Wire spec Proprietary Information - Distribution without Expressed Written Permission is Prohibited. ‣ DISR/DISA: Net-centric Systems – Tools – Enterprise integration – Multiple products fielded ‣ EuroControl:– Deployed applications! Air Traffic Control Center Operational Interoperability ! …and adoption is on the rise – Navy – DISR ‣ QinetiQ: Recommending DDS for VSI – FCS/SoSCOE © 2009, PrismTech. All Rights Reserved
  • 6. OpenSplice DDS Delivering Performance, Openness, and Freedom As Simple as it Gets
  • 7. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Space (GDS) Global Data Space DDS © 2009, PrismTech. All Rights Reserved
  • 8. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Global Data Space DDS © 2009, PrismTech. All Rights Reserved
  • 9. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Publisher Subscriber Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Subscriber Publisher Global Data Space Publisher Subscriber DDS © 2009, PrismTech. All Rights Reserved
  • 10. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Publisher Subscriber Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Subscriber ‣ Publishers and Subscribers Publisher Global Data Space express their intent to produce/ consume specific type of data, e.g., Topics Publisher Subscriber DDS © 2009, PrismTech. All Rights Reserved
  • 11. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Publisher Subscriber Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Subscriber ‣ Publishers and Subscribers Publisher Global Data Space express their intent to produce/ consume specific type of data, e.g., Topics Publisher Subscriber DDS © 2009, PrismTech. All Rights Reserved
  • 12. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Publisher Subscriber Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Subscriber ‣ Publishers and Subscribers Publisher Global Data Space express their intent to produce/ consume specific type of data, e.g., Topics Subscriber ‣ Data flows from Publisher to Publisher Subscribers DDS © 2009, PrismTech. All Rights Reserved
  • 13. As Simple as it Gets ‣ DDS is based around the concept of a fully distributed Global Data Publisher Subscriber Space (GDS) ‣ Publishers and Subscribers can join and leave the GDS at any time Subscriber ‣ Publishers and Subscribers Publisher Global Data Space express their intent to produce/ consume specific type of data, e.g., Topics Subscriber ‣ Data flows from Publisher to Publisher Subscribers DDS © 2009, PrismTech. All Rights Reserved
  • 14. OpenSplice DDS Delivering Performance, Openness, and Freedom Defining Data
  • 15. DDS Topics {Circle, Square, Triangle} Topic ‣ Unit of information exchanged between Publisher and Subscribers. ‣ An association between a unique name, a type and a QoS setting {ShapeType} {...} Topic Type. struct ShapeType { ‣ Type describing the data associated with one long x; or more Topics long y; ‣ A Topic type can have a key represented by an long shapesize; string color; arbitrary number of attributes }; ‣ Expressed in IDL #pragma keylist ShapeType color © 2009, PrismTech. All Rights Reserved
  • 16. DDS Topics Circle struct ShapeType { long x; long y; long shapesize; Topic QoS string color; }; #pragma keylist ShapeType color © 2009, PrismTech. All Rights Reserved
  • 17. DDS Topics Triangle struct ShapeType { long x; long y; long shapesize; Topic QoS string color; }; #pragma keylist ShapeType color © 2009, PrismTech. All Rights Reserved
  • 18. DDS Topic Instances and Samples Topic Instances ‣ Each key value identifies a unique Topic Instance, ‣ Topic’s instance lifetime can be explicitly managed in DDS Topic Samples ‣ The values assumed by a Topic Instance over time are referred as Instance Sample struct ShapeType { long x; long y; long shapesize; string color; }; #pragma keylist ShapeType color © 2009, PrismTech. All Rights Reserved
  • 19. Topic/Instances/Samples Recap. Topics Instances Samples ti tj tnow time © 2009, PrismTech. All Rights Reserved
  • 20. Content Filtering X0 X1 X0 <= X <= X1 ‣ DDS allows to specify content- filtered Topics for which a subset of SQL92 is used to express the filter condition Y0 ‣ Content filters can be applied on the entire content of the Topic Type Y0 <= Y <= Y1 ‣ Content filters are applied by DDS Y1 each time a new sample is produced/delivered © 2009, PrismTech. All Rights Reserved
  • 21. Filtering Market Data AAPL < $157 | | AAPL > $162 MSFT > $35 Apple 164.0 Microsoft 40 161.5 30 159.0 20 156.5 10 154.0 0 AAPL MSFT ‣ DDS continuous queries can be used for filtering the stream of data produced for a specific stock symbol. © 2009, PrismTech. All Rights Reserved
  • 22. Local Queries ‣ Subscribed Topics can be seen locally as “Tables” ‣ A subset of SQL92 can be used for performing queries on X0 multiple topics as well as natural joins ‣ Queries are Circle Topic performed under Y0 color x y shapesize Y0 user control and red 57 62 50 provide a result that blue 90 85 50 Y0 <= Y <= Y1 depends on the yellow 30 25 50 current snapshot of SELECT * FROM ShapeType s WHERE s.x > 25 AND s.y < 55 Y1 the system, e.g., samples currently color x y shapesize available yellow 30 25 50 © 2009, PrismTech. All Rights Reserved
  • 23. OpenSplice DDS Delivering Performance, Openness, and Freedom Organizing Data
  • 24. DDS Partitions ‣ All DDS communication is Domain Partition happens within a Domain ‣ Domain can divided into Publisher Subscriber Partitions B ‣ Topics are published and m subscribed across on or A F Subscriber more Partitions Publisher J D C K E Publisher Subscriber © 2009, PrismTech. All Rights Reserved
  • 25. OpenSplice Network Partitions ‣ OpenSplice DDS allows to Publisher Subscriber define network partitions along "Red" B with DDS partitions m ‣ Network partitions are bound to A F a list of unicast/multicast Publisher J "Green" Subscriber network addresses D C ‣ Partition.Topic combination can K E "Yellow" be mapped into OpenSplice DDS Network Partitions Publisher Subscriber ‣ Wildcards can be used when defining the mapping, and in Yellow.* => 224.1.1.1 Green.* => 224.1.1.2 case of multiple matches Green.E => 224.1.1.3 OpenSplice DDS will always consider the best match © 2009, PrismTech. All Rights Reserved
  • 26. OpenSplice DDS Delivering Performance, Openness, and Freedom Quality of Service
  • 27. Anatomy of a DDS Application Topic Topic Topic Samples Samples Instances Samples Instances Instances 121 62 1 21 62 1 22 62 1 22 62 1 23 63 1 23 63 DataReader DataReader 1 21 62 2 20 61 1 22 62 2 19 60 1 23 63 DataReader DataReader 2 20 61 2 20 61 2 19 60 2 19 60 DataWriter DataWriter DataReader DataReader 3 25 70 3 25 71 25 3 25 74 3 26 77 3 26 77 DataWriter DataWriter 3 25 70 3 25 71 25 3 25 74 struct TempSensor { 3 25 70 3 25 71 25 3 25 74 3 26 77 int tID; float temp; float humidity; }; #pragma keylist TempSensor tID © 2009, PrismTech. All Rights Reserved
  • 28. Anatomy of a DDS Application Topic Topic Topic Samples Samples Instances Samples Instances Instances 121 62 1 21 62 1 22 62 1 22 62 1 23 63 1 23 63 DataReader DataReader 1 21 62 2 20 61 1 22 62 2 19 60 1 23 63 DataReader DataReader 2 20 61 2 20 61 2 19 60 2 19 60 DataWriter DataWriter DataReader DataReader 3 25 70 3 25 71 25 3 25 74 3 26 77 3 26 77 DataWriter DataWriter 3 25 70 3 25 71 25 3 25 74 struct TempSensor { 3 25 70 3 25 71 25 3 25 74 3 26 77 int tID; float temp; Arrows }; float humidity; show #pragma keylist TempSensor tID structural relationship s, not data- Subscriber Publisher flows Partition © 2009, PrismTech. All Rights Reserved
  • 29. Anatomy of a DDS Application Topic Topic Topic Samples Samples Instances Samples Instances Instances 121 62 1 21 62 1 22 62 1 22 62 1 23 63 1 23 63 DataReader DataReader 1 21 62 2 20 61 1 22 62 2 19 60 1 23 63 DataReader DataReader 2 20 61 2 20 61 2 19 60 2 19 60 DataWriter DataWriter DataReader DataReader 3 25 70 3 25 71 25 3 25 74 3 26 77 3 26 77 DataWriter DataWriter 3 25 70 3 25 71 25 3 25 74 struct TempSensor { 3 25 70 3 25 71 25 3 25 74 3 26 77 int tID; float temp; Arrows }; float humidity; show #pragma keylist TempSensor tID structural relationship s, not data- Subscriber Publisher flows Partition Domain Participant Domain © 2009, PrismTech. All Rights Reserved
  • 30. QoS Model ‣ QoS-Policies are used to control relevant properties of OpenSplice DDS entities, Type Matching QoS matching such as: QoS QoS QoS QoS QoS QoS QoS ‣ Temporal Properties ‣ Priority Topic Name Publisher Subscriber ‣ Durability ... DataWriter writes Type reads DataReader ... ... ‣ Availability DomainParticipant writes Type reads DataReader DomainParticipant DataWriter ‣ ... Name ‣ Some QoS-Policies are matched based on Topic QoS QoS QoS a Request vs. Offered Model thus QoS- enforcement ‣ Publications and Subscriptions match only if the declared vs. requested QoS are compatible ‣ e.g., it is not possible to match a publisher which delivers data unreliably with a subscriber which requires reliability © 2009, PrismTech. All Rights Reserved
  • 31. QoS Policies QoS Policy Applicability RxO Modifiable Type Matching QoS matching DURABILITY T, DR, DW Y N Data Availability QoS QoS QoS QoS QoS QoS QoS DURABILITY SERVICE T, DW N N Topic Name Publisher Subscriber LIFESPAN T, DW - Y ... DataWriter writes Type reads DataReader ... T, DR, DW N N ... HISTORY DomainParticipant DataWriter writes Type reads DataReader DomainParticipant PRESENTATION P, S Y N Data Delivery Name Topic RELIABILITY T, DR, DW Y N PARTITION P, S N Y QoS QoS QoS DESTINATION ORDER T, DR, DW Y N OWNERSHIP T, DR, DW Y N ‣ Rich set of QoS allow to configure OWNERSHIP DW - Y STRENGTH several different aspects of data DEADLINE T, DR, DW Y Y Data Timeliness availability, delivery and timeliness LATENCY BUDGET T, DR, DW Y Y TRANSPORT PRIORITY T, DW - Y ‣ QoS can be used to control and optimize network as well as TIME BASED FILTER DR - Y Resources computing resource RESOURCE LIMITS T, DR, DW N N USER_DATA DP, DR, DW N Y Configuration TOPIC_DATA T N Y GROUP_DATA P, S N Y © 2009, PrismTech. All Rights Reserved
  • 32. Mapping QoS Which properties does QoS controls? TimeBasedFilter Deadline Data Throughput Latency LatencyBudget TransportPriority Proprietary Information - Distribution without Expressed Written Permission is Prohibited. Control over Latency/Throughput tradeoff Control over data latency Control over data priority © 2009, PrismTech. All Rights Reserved
  • 33. Mapping QoS Which properties does QoS controls? TimeBasedFilter Deadline History Data Data Throughput Lifespan Durability Latency Availability Ownership LatencyBudget TransportPriority Ownership Strength Proprietary Information - Distribution without Expressed Written Permission is Prohibited. Control over Latency/Throughput tradeoff Control over data queueing Control over data latency Control over data persistency Control over data priority Control over data sources hot-swap © 2009, PrismTech. All Rights Reserved
  • 34. Mapping QoS Which properties does QoS controls? TimeBasedFilter Deadline History Data Data Throughput Lifespan Durability Latency Availability Ownership LatencyBudget TransportPriority Ownership Strength Proprietary Information - Distribution without Expressed Written Permission is Prohibited. Control over Latency/Throughput tradeoff Control over data queueing Control over data latency Control over data persistency Control over data priority Control over data sources hot-swap Reliability OpenSplice DDS provides programmatic Destination QoS-driven support for configuring the most Presentation Data Delivery Order important properties of data distribution! Control over data distribution reliability Control over data ordering Control over presentation © 2009, PrismTech. All Rights Reserved
  • 35. Reliability The reliability with which data is delivered to applications is impacted in DDS by the following qualities of service ‣ RELIABILITY ‣ BEST_EFORT ‣ RELIABLE ‣ HISTORY ‣ KEEP_LAST (K) ‣ KEEP_ALL ‣ Theoretically, the only way to assure that an application will see all the samples produced by a writer is to use RELIABLE+KEEP_ALL. Any other combination could induce to samples being discarded on the receiving side because of the HISTORY depth © 2009, PrismTech. All Rights Reserved
  • 36. Real-Time The real-time properties with which data is delivered to applications is impacted in DDS by the following qualities of service: ‣ TRANSPORT_PRIORITY Publisher Deadline Deadline Deadline Deadline Deadline Subscriber ‣ LATENCY_BUDGET Deadline Violation ‣ In addition, DDS provides means for detecting performance failure, e.g., Deadline miss, by means of the DEADLINE QoS ‣ Given a periodic task-set {T} with periods Di (with Di < Di+1) and deadline equal to the period, than QoS should be set as follows: ‣ Assign to each task Ti a TRANSPORT_PRIORITY Pi such that Pi > Pi+1 ‣ Set for each task Ti a DEADLINE QoS of Di ‣ For maximizing throughput and minimizing resource usage set for each Ti a LATENCY_BUDGET QoS between Di /2 and Di/3 (this is a rule of thumb, the upper bound is Di-(RTT/2)) © 2009, PrismTech. All Rights Reserved
  • 37. High Availability ‣ A Topic can have Shared or Exclusive Ownership ‣ Exclusively owned Topics can be modified by a single writer ‣ Writer strength is used to coordinate replicated writers Proprietary Information - Distribution without Expressed Written Permission is Prohibited. StockQuote symbol: "MSFT" StockQuote StockQuote name: "Microsoft Corp." StockQuote symbol: "GOOG" symbol: "GOOG" exchange: "NASD""GOOG" symbol: name: "Google Inc." quote: 33.73 name: "Google Inc." name: "Google Inc." exchange: "NASD" exchange: "NASD" exchange: "NASD" StockQuote StockQuote StockQuote quote: 663.97 W1 quote: 663.97"AAPL" symbol: "AAPL" quote: 663.97 symbol: "AAPL" symbol: name: "Apple Inc." name: "Apple Inc." name: "Apple Inc." exchange: "NASD" exchange: "NASD" exchange: "NASD" R1 quote: 165.37 quote: 165.37 quote: 165.37 STRENGTH=3 StockQuote symbol: "AAPL" StockQuote Inc." name: "Apple symbol: "GOOG""NASD" exchange: name: quote: 165.37 "Google Inc." StockQuote "NASD" exchange: symbol: "MSFT" quote: 663.97 name: "Microsoft Corp." exchange: "NASD" quote: 33.73 W1’ R2 STRENGTH=2 StockQuote symbol: "AAPL" StockQuote Inc." name: "Apple symbol: "GOOG""NASD" exchange: name: quote: 165.37 "Google Inc." StockQuote "NASD" exchange: symbol: "MSFT" quote: 663.97 name: "Microsoft Corp." exchange: "NASD" quote: 33.73 W2’’ R3 STRENGTH=1 © 2009, PrismTech. All Rights Reserved
  • 38. High Availability ‣ A Topic can have Shared or Exclusive Ownership ‣ Exclusively owned Topics can be modified by a single writer ‣ Writer strength is used to coordinate replicated writers Proprietary Information - Distribution without Expressed Written Permission is Prohibited. StockQuote symbol: "MSFT" StockQuote StockQuote name: "Microsoft Corp." StockQuote symbol: "GOOG" symbol: "GOOG" exchange: "NASD""GOOG" symbol: name: "Google Inc." quote: 33.73 name: "Google Inc." name: "Google Inc." exchange: "NASD" exchange: "NASD" exchange: "NASD" quote: 663.97 W1 quote: 663.97 quote: 663.97 StockQuote symbol: "AAPL" R1 STRENGTH=3 name: "Apple Inc." exchange: "NASD" quote: 165.37 StockQuote symbol: "GOOG" name: "Google Inc." StockQuote "NASD" exchange: symbol: "MSFT" quote: 663.97 name: "Microsoft Corp." exchange: "NASD" quote: 33.73 W1’ R2 StockQuote symbol: "AAPL" name: "Apple Inc." exchange: "NASD" STRENGTH=2 quote: 165.37 StockQuote symbol: "GOOG" name: "Google Inc." StockQuote "NASD" exchange: symbol: "MSFT" quote: 663.97 name: "Microsoft Corp." exchange: "NASD" quote: 33.73 W2’’ StockQuote symbol: "AAPL" name: "Apple Inc." exchange: "NASD" quote: 165.37 R3 STRENGTH=1 © 2009, PrismTech. All Rights Reserved
  • 39. High Availability ‣ A Topic can have Shared or Exclusive Ownership ‣ Exclusively owned Topics can be modified by a single writer ‣ Writer strength is used to coordinate replicated writers Proprietary Information - Distribution without Expressed Written Permission is Prohibited. StockQuote symbol: "MSFT" name: "Microsoft Corp." exchange: "NASD" quote: 33.73 W1 StockQuote symbol: "AAPL" R1 STRENGTH=3 name: "Apple Inc." exchange: "NASD" quote: 165.37 StockQuote symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote symbol: "MSFT" name: "Microsoft Corp." exchange: "NASD" quote: 33.73 StockQuote W1’ R2 symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote symbol: "AAPL" name: "Apple Inc." exchange: "NASD" STRENGTH=2 quote: 165.37 StockQuote symbol: "MSFT" name: "Microsoft Corp." exchange: "NASD" StockQuote quote: 33.73 symbol: "GOOG" R3 name: "Google Inc." W2’’ exchange: "NASD"StockQuote quote: 663.97symbol: "AAPL" name: "Apple Inc." exchange: "NASD" quote: 165.37 STRENGTH=1 © 2009, PrismTech. All Rights Reserved
  • 40. High Availability ‣ A Topic can have Shared or Exclusive Ownership ‣ Exclusively owned Topics can be modified by a single writer ‣ Writer strength is used to coordinate replicated writers Proprietary Information - Distribution without Expressed Written Permission is Prohibited. StockQuote R1 symbol: "AAPL" name: "Apple Inc." exchange: "NASD" quote: 165.37 StockQuote symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote symbol: "AAPL" name: "Apple Inc." exchange: "NASD" R2 quote: 165.37 StockQuote StockQuote StockQuote StockQuote symbol: "MSFT" symbol: "MSFT" symbol: "MSFT" symbol: "GOOG" name: "Microsoft Corp." name: "Microsoft Corp." name: "Microsoft Corp." exchange: "NASD" exchange: "NASD" name: "Google Inc." exchange: "NASD" quote: 33.73 quote: 33.73 quote: 33.73 exchange: "NASD" quote: 663.97 StockQuote R3 symbol: "AAPL" W2’’ name: "Apple Inc." exchange: "NASD" quote: 165.37 STRENGTH=1 © 2009, PrismTech. All Rights Reserved
  • 41. High Availability ‣ A Topic can have Shared or Exclusive Ownership ‣ Exclusively owned Topics can be modified by a single writer ‣ Writer strength is used to coordinate replicated writers Proprietary Information - Distribution without Expressed Written Permission is Prohibited. StockQuote R1 symbol: "AAPL" name: "Apple Inc." exchange: "NASD" StockQuote quote: 165.37 symbol: "MSFT" name: "Microsoft Corp." exchange: "NASD" quote: 33.73 StockQuote symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote symbol: "GOOG" name: "Google Inc." exchange: "NASD" quote: 663.97 StockQuote R2 symbol: "MSFT" name: "Microsoft Corp." StockQuote exchange: "NASD" quote: 33.73 symbol: "AAPL" name: "Apple Inc." exchange: "NASD" quote: 165.37 StockQuote symbol: "GOOG" name: "Google Inc." StockQuote exchange: "NASD" symbol: "MSFT" quote: 663.97 name: "Microsoft Corp." exchange: "NASD" quote: 33.73 StockQuote R3 symbol: "AAPL" W2’’ name: "Apple Inc." exchange: "NASD" quote: 165.37 STRENGTH=1 © 2009, PrismTech. All Rights Reserved
  • 42. Eventual Consistency & R/W Caches DataReader DataReader 1 1 2 1 DataWriter 1 1 3 1 Proprietary Information - Distribution without Expressed Written Permission is Prohibited. 2 1 1 2 Topic DataReader 1 2 2 3 3 1 DataReader Cache 2 2 2 3 3 1 Topic 1 1 DataReader Cache 2 Topic 1 DDS DataWriter Cache 3 1 Topic DataReader Cache Under an Eventual Consistency Model, DDS guarantees that all matched Reader Caches will eventually be identical of the respective Writer Cache © 2009, PrismTech. All Rights Reserved
  • 43. QoS Impacting the Consistency Model The DDS Consistency Model is a property that can be associated to Topics or further refined by Reader/Writers. The property is controlled by the following QoS Policies: ‣ DURABILITY ‣ VOLATILE | TRANSIENT_LOCAL | TRANSIENT | PERSISTENT ‣ LIFESPAN Proprietary Information - Distribution without Expressed Written Permission is Prohibited. ‣ RELIABILITY ‣ RELIABLE | BEST_EFFORT ‣ DESTINATION ORDER ‣ SOURCE_TIMESTAMP | DESTINATION_TIMESTAMP QoS Policy Applicability RxO Modifiable DURABILITY T, DR, DW Y N LIFESPAN T, DW - Y RELIABILITY T, DR, DW Y N DESTINATION ORDER T, DR, DW Y N © 2009, PrismTech. All Rights Reserved
  • 44. QoS Impacting the Consistency Model DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency VOLATILE RELIABLE SOURCE_TIMESTAMP INF. (No Crash / Recovery) Eventual Consistency TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Proprietary Information - Distribution without Expressed Written Permission is Prohibited. (Reader Crash / Recovery) Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. (Crash/Recovery) Eventual Consistency PERSISTENT RELIABLE SOURCE_TIMESTAMP INF. (Crash/Recovery) Weak Consistency ANY ANY DESTINATION_TIMESTAMP ANY Weak Consistency ANY BEST_EFFORT ANY ANY Weak Consistency ANY ANY ANY N © 2009, PrismTech. All Rights Reserved
  • 45. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B P1 m A F J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved
  • 46. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B P1 m A A F J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved
  • 47. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B A P1 m A A F J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 48. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B A P1 m B A A F J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 49. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B B A P1 m A A F J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 50. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B B A P1 m S= {A, B, J} A A F S2 J D C P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 51. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 P = {A, B} B B A P1 m S= {A, B, J} A A F S2 J D C BA P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 52. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 B B A m S= {A, B, J} A F S2 J D C BA P = {D, C, J} P2 K E S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 53. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 B B A m S= {A, B, J} A F S2 J D C BA P = {D, C, J} S= {A, B, D, J} P2 K E S3 S = {A} S4 © 2009, PrismTech. All Rights Reserved A
  • 54. Eventual Consistency @ Work DURABILITY RELIABILITY DESTINATION_ORDER LIFESPAN Eventual Consistency (Reader TRANSIENT_LOCAL RELIABLE SOURCE_TIMESTAMP INF. Crash / Recovery) {A} Eventual Consistency TRANSIENT RELIABLE SOURCE_TIMESTAMP INF. {B} (Crash/Recovery) Weak Consistency ANY ANY ANY N {J} Proprietary Information - Distribution without Expressed Written Permission is Prohibited. S = {A, D} S1 B B A m S= {A, B, J} A F S2 J J D D C BA P = {D, C, J} S= {A, B, D, J} P2 K E S3 S = {A} JB S4 © 2009, PrismTech. All Rights Reserved A