Compaq Reliable Transaction Router manual Partitioned Data Model, Object-Oriented Programming

Page 39

The Partitioned Data Model

The Partitioned Data Model

One goal in designing for high transaction throughput is reducing the time that users must wait for shared resources.

While many elements of a transaction processing system can be duplicated, one resource that must be shared is the database. Users compete for a shared database in three ways:

For use of the disk

For locks on database records

For the CPU resources needed to access the database

This competition can be alleviated by spreading the database across several backend nodes, each node being responsible for a subset of the data, or partition. RTR enables you to implement this partitioned data model, shown roughly in Figure 2–2 where the database has three partitions. RTR routes messages to the correct partition on the basis of an application-defined key. For a more complete description of partitioning as provided with RTR, see the Reliable Transaction Router Application Design Guide.

Object-Oriented Programming

The C++ foundation classes map traditional RTR functional programming concepts into an object-oriented programming model. Using the power and features of these foundation classes requires a basic understanding of the differences between functional and object-oriented programming concepts. Table 2–1 compares the worlds of functional programming and object-oriented programming.

Architectural Concepts 2–5

Image 39
Contents Reliable Transaction Router Getting Started Page Contents Reliability Features Figures Page Preface Purpose of this DocumentDocument Structure For all users Related DocumentationReaders Comments Reading PathSystem Manager Application Programmer If V2 to= Tutorial Reliable Transaction Router IntroductionRTR Continuous Computing Concepts RTR Continuous Computing ConceptsRTR Terminology RTR TerminologyClient Symbol Server Symbol Roles Symbols Components in the RTR Environment Nontransactional messaging Transaction ID Controller Database Server Application PresentationBusiness Logic Odbc Model RTR Frontend PC BrowserJournal Browser11 RTR Deployed on Three Nodes 12 Standby Server Configuration 13 Transactional Shadowing Configuration RTR Server Types RTR Server TypesStandby server Standby in a cluster 15 Standby Servers 16 Shadow Servers Server1 Server2 Server3 Server4 17 Concurrent ServersPartition a Transaction19 Bank Partitioning Example Standby Server Configurations Anonymous clients Tunnel RTR Networking Capabilities RTR Networking CapabilitiesPage Three-Layer Model Architectural ConceptsThree Layer Model Three-Layer ModelRTR Facilities Bridge the Gap RTR Facilities Bridge the GapBroadcasts Flexibility and GrowthFlexibility and Growth Transaction IntegrityPartitioned Data Model Object-Oriented ProgrammingPartitioned Data Model Partitioned Data Model Object-Oriented ProgrammingFunctional and Object-Oriented Programming Compared ObjectsExample 2-1 Objects-Defined Sample Messages Class RelationshipsPolymorphism Object Implementation Benefits XA Support XA SupportServers Reliability FeaturesFailover and Recovery Recovery ScenariosFailover and Recovery Recovery Scenarios Backend Recovery Router Recovery Frontend RecoveryPage RTR Interfaces RTR Management Station RTR Management Station RTR Create Facility DESIGN/ALLROLES=NODEA RTR RTRRECEIVEMESSAGE/TIME=0 RTR RTRSTARTTX/CHAN=C Interface Application Programming InterfacesRTR Browser Interface Application Programming InterfacesRTR C Example of an open channel call in an RTR client program RTR System Management Environment RTR EnvironmentRtrcomserv RTR System Management EnvironmentManagement Station Running Browser Software RTR System Management EnvironmentMonitoring RTR RTR Runtime Environment RTR Runtime Environment Client ApplicationOptional External Applet Not Running Whats Next? Whats Next?Page Glossary Channel BranchBroadcast Callout serverData object Common classesConcurrent server Data marshallingEvent driven Fault tolerantEndian EventKey range FrontendInquorate JournalMultithreaded MessageMessage handler MultichannelProperty classes PrimaryProcess PropertiesRTR environment RollbackRouter RTR configurationTransaction controller ShadowStandby TransactionTwo-phase commit Transactional messageTransactional shadowing Index-1 IndexIndex-2