SlideShare a Scribd company logo
1 of 66
Download to read offline
1. Introduction
CSEP 545 Transaction Processing
Philip A. Bernstein
Sameh Elnikety
Copyright ©2012 Philip A. Bernstein
1/4/2012 1
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 2
1.1 The Basics - What’s a Transaction?
• The execution of a program that performs an
administrative function by accessing a shared
database, usually on behalf of an on-line user.
Examples
• Reserve an airline seat. Buy an airline ticket.
• Withdraw money from an ATM.
• Verify a credit card sale.
• Order an item from an Internet retailer.
• Place a bid at an on-line auction.
• Submit a corporate purchase order.
1/4/2012 3
The “ities” are What Makes
Transaction Processing (TP) Hard
• Reliability - system should rarely fail
• Availability - system must be up all the time
• Response time - within 1-2 seconds
• Throughput - thousands of transactions/second
• Scalability - start small, ramp up to Internet-scale
• Security – for confidentiality and high finance
• Configurability - for above requirements + low cost
• Atomicity - no partial results
• Durability - a transaction is a legal contract
• Distribution - of users and data
1/4/2012 4
What Makes TP Important?
• It’s at the core of electronic commerce
• Most medium-to-large businesses use TP for
their production systems. The business can’t
operate without it.
• It’s a huge slice of the computer system
market. One of the largest applications of
computers.
1/4/2012 5
TP System Infrastructure
• User’s viewpoint
– Enter a request from a browser or other display device
– The system performs some application-specific work,
which includes database accesses
– Receive a reply (usually, but not always)
• The TP system ensures that each transaction
– Is an independent unit of work
– Executes exactly once
– Produces permanent results
• TP system makes it easy to program transactions
• TP system has tools to make it easy to manage
1/4/2012 6
TP System Infrastructure …
Defines System and Application Structure
Front End Program
Request Controller
(routes requests and
supervises their execution)
Database System
Client
Back-End
(Server)
End-User
Transaction Server
requests
1/4/2012 7
System Characteristics
• Typically < 100 transaction types per application
• Transaction size has high variance. Typically,
– 0-30 disk accesses
– 10K - 1M instructions executed
– 2-20 messages
• A large-scale example: airline reservations
– Hundreds of thousands of active display devices
– Indirect access via Internet
– Tens of thousands of transactions per second, peak
1/4/2012 8
Availability
• Fraction of time system is able to do useful work
• Some systems are very sensitive to downtime
– Airline reservation, stock exchange, on-line retail, …
– Downtime is front page news
• Contributing factors
– Failures due to environment, system mgmt, h/w, s/w
– Recovery time
Downtime Availability
1 hour/day 95.8%
1 hour/week 99.41%
1 hour/month 99.86%
1 hour/year 99.9886%
1 hour/20years 99.99942%
1/4/2012 9
Application Servers
• A software product to create, execute and manage TP
applications
• Formerly called TP monitors. Some people say
App Server = TP monitor + web functionality.
• Programmer writes an app to process a single request.
App Server scales it up to a large, distributed system
– E.g. application developer writes programs to debit a checking
account and verify a credit card purchase.
– App Server helps system engineer deploy it to 10s/100s of
servers and 10Ks of displays
– App Server helps system engineer deploy it on the Internet,
accessible from web browsers
1/4/2012 10
Application Servers (cont’d)
• Components include
– An application programming interface (API)
(e.g., Enterprise Java Beans)
– Tools for program development
– Tools for system management (app deployment,
fault & performance monitoring, user mgmt, etc.)
• Enterprise Java Beans, IBM Websphere,
Microsoft .NET (COM+), Oracle Weblogic
and Application Server
1/4/2012 11
Front End Program
Request Controller
Transaction Server Transaction Server
Network
Message
Inputs
App Server Architecture, Pre-Web
• Boxes below are distributed on an intranet
Queues
1/4/2012 12
Automated Teller Machine
(ATM) Application Example
Request
Controller
Interbank
Transfer
Credit Card
Accounts
Loan
Accounts
Request
Controller
ATM ATM ATM ATMATM ATM ATM ATM
Bank Branch 1 Bank Branch 2 Bank Branch 500
Checking
Accounts
1/4/2012 13
Web Server
Request Controller
Transaction Server Transaction Server
intranet
Message
Inputs
Application Server Architecture
Queues
other TP
systems
1/4/2012 14
Internet Retailer
Request
Controller
Music Computers
Web
Server
Electronics
The
Internet
Toys Books …
1/4/2012 15
Service Oriented Architecture (SOA)
Request
Controller
Music Computers
Web
Server
Electronics
The
Internet
Web Service
WebService
• Web services - interface and protocol standards
to do app server functions over the internet.
1/4/2012 16
Toys Books …
Enterprise Application Integration
(EAI)
• A software product to route requests between
independent application systems. It often includes
– A queuing system
– A message mapping system
– Application adaptors (SAP, Oracle PeopleSoft, etc.)
• EAI and Application Servers address a similar
problem, with different emphasis
• Examples
– IBM Websphere MQ, TIBCO, Vitria, Sun SeeBeyond
1/4/2012 17
ATM Example
with an EAI System
Interbank
Transfer
Credit Card
Accounts
Loan
Accounts
EAI Routing
ATM ATM ATM ATMATM ATM ATM ATM
Bank Branch 1 Bank Branch 2 Bank Branch 500
Checking
Accounts
EAI RoutingQueues Queues
1/4/2012 18
Workflow, or Business Process Mgmt
• A software product that executes multi-transaction
long-running scripts (e.g., process an order)
• Product components
– A workflow script language
– Workflow script interpreter and scheduler
– Workflow tracking
– Message translation
– Application and queue system adaptors
• Transaction-centric vs. document-centric
• Structured processes vs. case management
• Examples: IBM Websphere MQ Workflow, Microsoft BizTalk, SAP,
Vitria, Oracle Workflow, IBM FileNET, EMC Documentum, TIBCO
1/4/2012 19
Data Integration Systems
(Enterprise Information Integration)
Query Mediator
Checking
Accounts
Loan
Accounts
Credit card
Accounts
• Heterogeneous query systems (mediators).
It’s database system software, but …
• It’s similar to EAI with more focus on data
transformations than on message mgmt.
1/4/2012 20
Transactional Middleware
• In summary, there are many variations that
package different combinations of middleware
features
– Application Server
– Enterprise Application Integration
– Business process management (aka Workflow)
– Enterprise Server Bus
• New ones all the time, that defy categorization
1/4/2012 21
System Software Vendor’s View
• TP is partly a component product problem
– Hardware
– Operating system
– Database system
– Application Server
• TP is partly a system engineering problem
– Getting all those components to work together
to produce a system with all those “ilities”
• This course focuses primarily on the
Database System and Application Server
1/4/2012 22
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 23
1.2 The ACID Properties
• Transactions have 4 main properties
– Atomicity - all or nothing
– Consistency - preserve database integrity
– Isolation - execute as if they were run alone
– Durability - results aren’t lost by a failure
1/4/2012 24
Atomicity
• All-or-nothing, no partial results
– E.g. in a money transfer, debit one account, credit the
other. Either debit and credit both run, or neither runs.
– Successful completion is called Commit
– Transaction failure is called Abort
• Commit and abort are irrevocable actions
• An Abort undoes operations that already executed
– For database operations, restore the data’s previous value
from before the transaction
– But some real world operations are not undoable
• Examples - transfer money, print ticket, fire missile
1/4/2012 25
Example - ATM Dispenses Money
(a non-undoable operation)
T1: Start
. . .
Commit
Dispense Money
T1: Start
. . .
Dispense Money
Commit
System crashes
Deferred operation
never gets executed
System crashes
Transaction aborts
Money is dispensed
1/4/2012 26
Reading Uncommitted Output Isn’t
Undoable
T1: Start
...
Display output
...
If error, Abort
T2: Start
Get input from display
...
Commit
User reads output
…
User enters input
Brain
transport
1/4/2012 27
Compensating Transactions
• A transaction that reverses the effect of another
transaction (that committed). For example,
– “Adjustment” in a financial system
– Annul a marriage
• Not all transactions have complete compensations
– E.g., Certain money transfers
– E.g., Fire missile, cancel contract
– Contract law talks a lot about appropriate compensations
 A well-designed TP application should have a
compensation for every transaction type
1/4/2012 28
Consistency
 Every transaction should maintain DB consistency
– Referential integrity - E.g., each order references an
existing customer number and existing part numbers
– The books balance (debits = credits, assets = liabilities)
 Consistency preservation is a property of a
transaction, not of the TP system
(unlike the A, I, and D of ACID)
• If each transaction maintains consistency,
then serial executions of transactions do too
1/4/2012 29
Some Notation
• ri[x] = Read(x) by transaction Ti
• wi[x] = Write(x) by transaction Ti
• ci = Commit by transaction Ti
• ai = Abort by transaction Ti
• A history is a sequence of such operations,
in the order that the database system
processed them
1/4/2012 30
Consistency Preservation Example
T1: Start;
A = Read(x);
A = A - 1;
Write(y, A);
Commit;
T2: Start;
B = Read(x);
C = Read(y);
If (B -1> C) then B = B - 1;
Write(x, B);
Commit;
• Consistency predicate is x > y
• Serial executions preserve consistency.
Interleaved executions may not.
• H = r1[x] r2[x] r2[y] w2[x] w1[y]
– e.g., try it with x=4 and y=2 initially
1/4/2012 31
Isolation
• Intuitively, the effect of a set of transactions
should be the same as if they ran independently
• Formally, an interleaved execution of
transactions is serializable if its effect is
equivalent to a serial one
• Implies a user view where the system runs each
user’s transaction stand-alone
• Of course, transactions in fact run with lots of
concurrency, to use device parallelism
1/4/2012 32
Serializability Example 1
T1: Start;
A = Read(x);
A = A + 1;
Write(x, A);
Commit;
T2: Start;
B = Read(y);
B = B + 1;
Write(y, B);
Commit;
• H = r1[x] r2[y] w1[x] c1 w2[y] c2
• H is equivalent to executing
– T1 followed by T2
– T2 followed by T1
1/4/2012 33
Serializability Example 2
T1: Start;
A = Read(x);
A = A + 1;
Write(x, A);
Commit;
T2: Start;
B = Read(x);
B = B + 1;
Write(y, B);
Commit;
• H = r1[x] r2[x] w1[x] c1 w2[y] c2
• H is equivalent to executing T2 followed by T1
• Note, H is not equivalent to T1 followed by T2
• Also, note that T1 started before T2 and finished
before T2, yet the effect is that T2 ran first
1/4/2012 34
Serializability Examples
• Client must control the relative order of transactions,
using handshakes
(wait for T1 to commit before submitting T2)
• Some more serializable executions
r1[x] r2[y] w2[y] w1[x]  T1 T2  T2 T1
r1[y] r2[y] w2[y] w1[x]  T1 T2  T2 T1
r1[x] r2[y] w2[y] w1[y]  T2 T1  T1 T2
• Serializability says the execution is equivalent to
some serial order, not necessarily to all serial orders
1/4/2012 35
Non-Serializable Examples
• r1[x] r2[x] w2[x] w1[x] (race condition)
– e.g., T1 and T2 are each adding 100 to x
• r1[x] r2[y] w2[x] w1[y]
– e.g., each transaction is trying to make x = y,
but the interleaved effect is a swap
• r1[x] r1[y] w1[x] r2[x] r2[y] c2 w1[y] c1
(inconsistent retrieval)
– e.g., T1 is moving $100 from x to y
– T2 sees only half of the result of T1
• Compare to the OS view of synchronization
1/4/2012 36
Durability
• When a transaction commits, its results will
survive failures (e.g., of the application, OS,
DB system … even of the disk)
• Makes it possible for a transaction to be a legal
contract
• Implementation is usually via a log
– DB system writes all transaction updates to its log
– To commit, it adds a record “commit(Ti)” to the log
– When the commit record is on disk, the transaction is
committed
– System waits for disk ack before acking to user
1/4/2012 37
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 38
1.3 Atomicity and Two-Phase Commit
• Distributed systems make atomicity harder
• Suppose a transaction updates data managed by
two DB systems
• One DB system could commit the transaction,
but a failure could prevent the other system from
committing
• The solution is the two-phase commit protocol
• Abstract “DB system” by resource manager
(could be a SQL DBMS, message mgr, queue
mgr, OO DBMS, etc.)
1/4/2012 39
Two-Phase Commit
• Main idea - all resource managers (RMs) save a
durable copy of the transaction’s updates before
any of them commit
• If one RM fails after another commits, the failed
RM can still commit after it recovers
• The protocol to commit transaction T
– Phase 1 - T’s coordinator asks all participant RMs to
“prepare the transaction”. Each participant RM replies
“prepared” after T’s updates are durable.
– Phase 2 - After receiving “prepared” from all
participant RMs, the coordinator tells all participant
RMs to commit
1/4/2012 40
Two-Phase Commit
System Architecture
Resource
Manager
Transaction
Manager (TM)
Application Program
Other
Transaction
Managers
1. Start transaction returns a unique transaction identifier
2. Resource accesses include the transaction identifier
For each transaction, RM registers with TM
3. When application asks TM to commit, the TM runs
two-phase commit
Start
Commit, Abort
Read,
Write
1/4/2012 41
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 42
1.4 Performance Requirements
• Measured in max transaction per second (tps) or
per minute (tpm), and dollars per tps or tpm
• Dollars measured by list purchase price plus 5 year
vendor maintenance (“cost of ownership”)
• Workload typically has this profile
– 10% application server plus application
– 30% communications system (not counting presentation)
– 50% DB system
• TP Performance Council (TPC) sets standards
– http://www.tpc.org
• TPC A & B (‘89-’95), now TPC C & E
1/4/2012 43
TPC-A/B — Bank Tellers
Start
Read message from terminal (100 bytes)
Read+write account record (random access)
Write history record (sequential access)
Read+write teller record (random access)
Read+write branch record (random access)
Write message to terminal (200 bytes)
Commit
• End of history and branch records are bottlenecks
• Obsolete (a retired standard), but interesting
• Input is 100 byte message requesting deposit/withdrawal
• Database tables = {Accounts, Tellers, Branches, History}
1/4/2012 44
TPC-C Order-Entry for Warehouse
• TPC-C uses heavier weight transactions
Table Rows/Whse Bytes/row
Warehouse 1 89
District 10 95
Customer 30K 655
History 30K 46
Order 30K 24
New-Order 9K 8
OrderLine 300K 54
Stock 100K 306
Item 100K 82
1/4/2012 45
TPC-C Transactions
• New-Order
– Get records describing a warehouse, customer, & district
– Update the district
– Increment next available order number
– Insert record into Order and New-Order tables
– For 5-15 items, get Item record, get/update Stock record
– Insert Order-Line Record
• Payment, Order-Status, Delivery, Stock-Level have
similar complexity, with different frequencies
• tpmC = number of New-Order transaction per min
1/4/2012 46
Comments on TPC-C
• Enables apples-to-apples comparison of TP
systems
• Does not predict how your application will run,
or how much hardware you will need,
or which system will work best on your workload
• Not all vendors optimize for TPC-C
– Some high-end system sales require custom
benchmarks
1/4/2012 47
Current TPC-C Numbers
• All numbers are sensitive to date submitted
• Systems
– cost $60K (Dell/HP) - $12M (Oracle/IBM)
– mostly Oracle/DB2/MS SQL on Unix variants/Windows
– $0.40 - $5 / tpmC
• Example of high throughput
– Oracle, 30M tpmC, $30.0M, $1/tpmC, Oracle/Solaris
• Example of low cost
– HP ProLiant, 290K tpmC, $113K, $0.39/tpmC, Oracle/Linux
1/4/2012 48
TPC-E
• Approved in 2007
• Models a stock trading app for brokerage firm
• Should replace TPC-C, it’s database-centric
• More complex but less disk IO per transaction
1/4/2012 49
TPC-E
• 33 tables in four sets
– Market data (11 tables)
– Customer data (9 tables)
– Broker data (9 tables)
– Reference data (4 tables)
• Scale
– 500 customers per tpsE
1/4/2012 50
TPC-E Transactions
• Activities
– Stock-trade, customer-inquiry, feeds from markets,
market-analysis
• tpsE = number of Trade-Result transaction per sec
• Trade-Result
– Completes a stock market trade
– Receive from market exchange confirmation & price
– Update customer‘s holdings
– Update broker commission
– Record historical information
1/4/2012 51
TPC-E Transactions
1/4/2012 52
Name Access Description
Broker-Volume RO DSS-type medium query
Customer-Position RO “What am I worth?”
Market-Feed RW Processing of Stock Ticker
Market-Watch RO “What’s the market doing?”
Security-Detail RO Details about a security
Trade-Lookup RO Look up historical trade info
Trade-Order RW Enter a stock trade
Trade-Result RW Completion of a stock trade
Trade-Status RO Check status of trade order
Trade-Update RW Correct historical trade info
Current TPC-E Numbers
• Systems
– Cost $60K - $2.3M
– Almost all are MS SQL on Windows
– $130 - $250 / tpsE
• Example of high throughput
– IBM, 4.5k tpsE, $645k, $140/tpsE, MS SQL/Windows
• Example of low cost
– IBM, 2.9K tpsE, $371K, $130/tpsE, MS SQL/Windows
1/4/2012 53
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 54
1.5 Scalability
• Techniques for better performance
– Textbook, Chapter 2, Section 6
• Scale-up
– Caching
– Resource Pooling
• Scale-out
– Partitioning
– Replication
1/4/2012 55
Caching
• Key idea
– Use more memory
– Keep a copy of data from its permanent home
– Accessing a cached copy is fast
• Key issues
– Which data to keep
• Popular read-only data
– Cache replacement
– What if original data is updated
• Invalidations
• Timeouts
1/4/2012 56
Caching
• Applied at multiple levels
– Database and application server
• Updates
– Write through
• Better cache coherence
– Write back
• Batching and write absorption
• Example products
– Memcached, MS Velocity
1/4/2012 57
Resource Pooling
• Key idea
– If a logical resource is expensive to create and cheap
to access, then manage a pool of the resource
• Examples
– Session pool
– Thread pool
1/4/2012 58
Partitioning
• To add system capacity, add server machines
• Sometimes, you can just relocate some server
processes to different machines
• But if an individual server process overloads one
machine, then you need to partition the process
– Example – One server process manages flights, cars,
and hotel rooms. Later, you partition them in separate
processes.
– We need mapping from resource name to server name
1/4/2012 59
Partitioning: Routing
• Sometimes, it’s not enough to partition by
resource type, because a resource is too popular
– Example: flights
• Partition popular resource based on value ranges
– Example – flight number 1-1000 on Server A, flight
number 1000-2000 on Server B, etc.
– Request controller has to direct its calls based on
parameter value (e.g. flight number)
– This is called parameter-based routing
• E.g., range, hashing, dynamic
1/4/2012 60
Replication
• Replication - using multiple copies of a server or
resource for better availability and performance.
– Replica and Copy are synonyms
• If you’re not careful, replication can lead to
– worse performance - updates must be applied to all
replicas and synchronized
– worse availability - some algorithms require multiple
replicas to be operational for any of them to be used
1/4/2012 61
Replicated Server
1/4/2012 62
• Can replicate servers on a common resource
– Data sharing - DB servers communicate with shared disk
Resource
Server Replica 1 Server Replica 2
Client
• Helps availability for process (not resource) failure
• Requires a replica cache coherence mechanism, so
this helps performance only if
– Little conflict between transactions at different servers or
– Loose coherence guarantees (e.g. read committed)
Replicated Resource
1/4/2012 63
Resource replica
Server Replica 1 Server Replica 2
ClientClient
Resource replica
• To get more improvement in availability,
replicate the resources (too)
• Also increases potential throughput
• This is what’s usually meant by replication
Outline
1. The Basics
2. ACID Properties
3. Atomicity and Two-Phase Commit
4. Performance
5. Scalability
1/4/2012 64
What’s Next?
• This chapter covered TP system structure and
properties of transactions and TP systems
• The rest of the course drills deeply into each
of these areas, one by one.
1/4/2012 65
Next Steps
• We covered
– Chapter 1
– Chapter 2, Section 6
• Assignment 1
• Teams for the project
1/4/2012 66

More Related Content

What's hot

IBM Managed File Transfer Portfolio - IBMImpact 2014
IBM Managed File Transfer Portfolio - IBMImpact 2014IBM Managed File Transfer Portfolio - IBMImpact 2014
IBM Managed File Transfer Portfolio - IBMImpact 2014Leif Davidsen
 
Supplemental Data Manager - What is it? What are some use cases? How do I get...
Supplemental Data Manager - What is it? What are some use cases? How do I get...Supplemental Data Manager - What is it? What are some use cases? How do I get...
Supplemental Data Manager - What is it? What are some use cases? How do I get...finitsolutions
 
Finit answers your questions june 2012
Finit answers your questions    june 2012Finit answers your questions    june 2012
Finit answers your questions june 2012finitsolutions
 
Modernizing Your IMS Environment Without Rewriting Your Applications
Modernizing Your IMS Environment Without Rewriting Your ApplicationsModernizing Your IMS Environment Without Rewriting Your Applications
Modernizing Your IMS Environment Without Rewriting Your ApplicationsPrecisely
 
IBM Managed File Transfer Solutions Overview
IBM Managed File Transfer Solutions OverviewIBM Managed File Transfer Solutions Overview
IBM Managed File Transfer Solutions OverviewLightwell
 
ICON UK '13 - 15 minutes Upgrades and Other Things
ICON UK '13 - 15 minutes Upgrades and Other ThingsICON UK '13 - 15 minutes Upgrades and Other Things
ICON UK '13 - 15 minutes Upgrades and Other Thingspanagenda
 
Data Warehouse Solution - EFICAZ
Data Warehouse Solution - EFICAZData Warehouse Solution - EFICAZ
Data Warehouse Solution - EFICAZLera Technologies
 
FlexNet Manager for IBM
FlexNet Manager for IBMFlexNet Manager for IBM
FlexNet Manager for IBMFlexera
 
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2®
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2® MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2®
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2® BMC Software
 
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...CloudIDSummit
 
From monolith to resilient microservices
From monolith to resilient microservicesFrom monolith to resilient microservices
From monolith to resilient microservicesRehanvanderMerwe1
 
Impact 2011 2899 - Designing high performance straight through processes usin...
Impact 2011 2899 - Designing high performance straight through processes usin...Impact 2011 2899 - Designing high performance straight through processes usin...
Impact 2011 2899 - Designing high performance straight through processes usin...Brian Petrini
 
File Transfer of the Future
File Transfer of the FutureFile Transfer of the Future
File Transfer of the FutureLightwell
 
AME-1936 : Enterprise Messaging for Next-Generation Core Banking
AME-1936 : Enterprise Messaging for Next-Generation Core BankingAME-1936 : Enterprise Messaging for Next-Generation Core Banking
AME-1936 : Enterprise Messaging for Next-Generation Core Bankingwangbo626
 
Microservices for Java Architects (Chicago, April 21, 2015)
Microservices for Java Architects (Chicago, April 21, 2015)Microservices for Java Architects (Chicago, April 21, 2015)
Microservices for Java Architects (Chicago, April 21, 2015)Derek Ashmore
 
Making Legacy IBM Systems Visible in ServiceNow
Making Legacy IBM Systems Visible in ServiceNowMaking Legacy IBM Systems Visible in ServiceNow
Making Legacy IBM Systems Visible in ServiceNowPrecisely
 
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Pierre Feillet
 
IBM Sterling File Gateway
IBM Sterling File GatewayIBM Sterling File Gateway
IBM Sterling File GatewayLightwell
 

What's hot (20)

NZS-1543 - How IBM Service Management Unite Helps Mainframe O
NZS-1543 - How IBM Service Management Unite Helps Mainframe ONZS-1543 - How IBM Service Management Unite Helps Mainframe O
NZS-1543 - How IBM Service Management Unite Helps Mainframe O
 
IBM Managed File Transfer Portfolio - IBMImpact 2014
IBM Managed File Transfer Portfolio - IBMImpact 2014IBM Managed File Transfer Portfolio - IBMImpact 2014
IBM Managed File Transfer Portfolio - IBMImpact 2014
 
Supplemental Data Manager - What is it? What are some use cases? How do I get...
Supplemental Data Manager - What is it? What are some use cases? How do I get...Supplemental Data Manager - What is it? What are some use cases? How do I get...
Supplemental Data Manager - What is it? What are some use cases? How do I get...
 
Finit answers your questions june 2012
Finit answers your questions    june 2012Finit answers your questions    june 2012
Finit answers your questions june 2012
 
Modernizing Your IMS Environment Without Rewriting Your Applications
Modernizing Your IMS Environment Without Rewriting Your ApplicationsModernizing Your IMS Environment Without Rewriting Your Applications
Modernizing Your IMS Environment Without Rewriting Your Applications
 
IBM Managed File Transfer Solutions Overview
IBM Managed File Transfer Solutions OverviewIBM Managed File Transfer Solutions Overview
IBM Managed File Transfer Solutions Overview
 
IBM IT Operations Analytics for z systems
IBM IT Operations Analytics for z systemsIBM IT Operations Analytics for z systems
IBM IT Operations Analytics for z systems
 
ICON UK '13 - 15 minutes Upgrades and Other Things
ICON UK '13 - 15 minutes Upgrades and Other ThingsICON UK '13 - 15 minutes Upgrades and Other Things
ICON UK '13 - 15 minutes Upgrades and Other Things
 
Data Warehouse Solution - EFICAZ
Data Warehouse Solution - EFICAZData Warehouse Solution - EFICAZ
Data Warehouse Solution - EFICAZ
 
FlexNet Manager for IBM
FlexNet Manager for IBMFlexNet Manager for IBM
FlexNet Manager for IBM
 
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2®
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2® MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2®
MasterCard Optimizes Big Data Management with BMC High Speed Utilities for DB2®
 
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...
CIS13: Managing the Keys to the Kingdom: Next-Gen Role-based Access Control a...
 
From monolith to resilient microservices
From monolith to resilient microservicesFrom monolith to resilient microservices
From monolith to resilient microservices
 
Impact 2011 2899 - Designing high performance straight through processes usin...
Impact 2011 2899 - Designing high performance straight through processes usin...Impact 2011 2899 - Designing high performance straight through processes usin...
Impact 2011 2899 - Designing high performance straight through processes usin...
 
File Transfer of the Future
File Transfer of the FutureFile Transfer of the Future
File Transfer of the Future
 
AME-1936 : Enterprise Messaging for Next-Generation Core Banking
AME-1936 : Enterprise Messaging for Next-Generation Core BankingAME-1936 : Enterprise Messaging for Next-Generation Core Banking
AME-1936 : Enterprise Messaging for Next-Generation Core Banking
 
Microservices for Java Architects (Chicago, April 21, 2015)
Microservices for Java Architects (Chicago, April 21, 2015)Microservices for Java Architects (Chicago, April 21, 2015)
Microservices for Java Architects (Chicago, April 21, 2015)
 
Making Legacy IBM Systems Visible in ServiceNow
Making Legacy IBM Systems Visible in ServiceNowMaking Legacy IBM Systems Visible in ServiceNow
Making Legacy IBM Systems Visible in ServiceNow
 
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
 
IBM Sterling File Gateway
IBM Sterling File GatewayIBM Sterling File Gateway
IBM Sterling File Gateway
 

Viewers also liked

16 greg hope_com_wics
16 greg hope_com_wics16 greg hope_com_wics
16 greg hope_com_wicsashish61_scs
 
3 concurrency controlone_v3
3 concurrency controlone_v33 concurrency controlone_v3
3 concurrency controlone_v3ashish61_scs
 
Project description2012
Project description2012Project description2012
Project description2012ashish61_scs
 
08 message and_queues_dieter_gawlick
08 message and_queues_dieter_gawlick08 message and_queues_dieter_gawlick
08 message and_queues_dieter_gawlickashish61_scs
 
14 scaleabilty wics
14 scaleabilty wics14 scaleabilty wics
14 scaleabilty wicsashish61_scs
 
Limang suliranin ng barangay
Limang suliranin ng barangayLimang suliranin ng barangay
Limang suliranin ng barangayPatriciaAnne02
 
Mga pangunahing siliranin/problema sa barangay/pamayanan
Mga pangunahing siliranin/problema sa barangay/pamayananMga pangunahing siliranin/problema sa barangay/pamayanan
Mga pangunahing siliranin/problema sa barangay/pamayananMaxley Medestomas
 
Modyul 13: Mga Isyu Tungkol sa Buhay
Modyul 13: Mga Isyu Tungkol sa BuhayModyul 13: Mga Isyu Tungkol sa Buhay
Modyul 13: Mga Isyu Tungkol sa BuhayLemuel Estrada
 
Isyung Moral tungkol sa Seksuwalidad
Isyung Moral tungkol sa SeksuwalidadIsyung Moral tungkol sa Seksuwalidad
Isyung Moral tungkol sa SeksuwalidadMa. Hazel Forastero
 
ESP GRADE 10 LEARNER'S MODULE
ESP GRADE 10 LEARNER'S MODULEESP GRADE 10 LEARNER'S MODULE
ESP GRADE 10 LEARNER'S MODULEPRINTDESK by Dan
 

Viewers also liked (19)

Solution7.2012
Solution7.2012Solution7.2012
Solution7.2012
 
10b rm
10b rm10b rm
10b rm
 
2 shadowing
2 shadowing2 shadowing
2 shadowing
 
9 queuing
9 queuing9 queuing
9 queuing
 
17 wics99 harkey
17 wics99 harkey17 wics99 harkey
17 wics99 harkey
 
20 access paths
20 access paths20 access paths
20 access paths
 
16 greg hope_com_wics
16 greg hope_com_wics16 greg hope_com_wics
16 greg hope_com_wics
 
3 concurrency controlone_v3
3 concurrency controlone_v33 concurrency controlone_v3
3 concurrency controlone_v3
 
Project description2012
Project description2012Project description2012
Project description2012
 
08 message and_queues_dieter_gawlick
08 message and_queues_dieter_gawlick08 message and_queues_dieter_gawlick
08 message and_queues_dieter_gawlick
 
14 scaleabilty wics
14 scaleabilty wics14 scaleabilty wics
14 scaleabilty wics
 
Limang suliranin ng barangay
Limang suliranin ng barangayLimang suliranin ng barangay
Limang suliranin ng barangay
 
Edukasyon sa pagpapahalaga i
Edukasyon sa pagpapahalaga iEdukasyon sa pagpapahalaga i
Edukasyon sa pagpapahalaga i
 
Mga pangunahing siliranin/problema sa barangay/pamayanan
Mga pangunahing siliranin/problema sa barangay/pamayananMga pangunahing siliranin/problema sa barangay/pamayanan
Mga pangunahing siliranin/problema sa barangay/pamayanan
 
Modyul 13: Mga Isyu Tungkol sa Buhay
Modyul 13: Mga Isyu Tungkol sa BuhayModyul 13: Mga Isyu Tungkol sa Buhay
Modyul 13: Mga Isyu Tungkol sa Buhay
 
Kakapusan at kakulangan
Kakapusan at kakulanganKakapusan at kakulangan
Kakapusan at kakulangan
 
Isyung Moral tungkol sa Buhay
Isyung Moral  tungkol sa BuhayIsyung Moral  tungkol sa Buhay
Isyung Moral tungkol sa Buhay
 
Isyung Moral tungkol sa Seksuwalidad
Isyung Moral tungkol sa SeksuwalidadIsyung Moral tungkol sa Seksuwalidad
Isyung Moral tungkol sa Seksuwalidad
 
ESP GRADE 10 LEARNER'S MODULE
ESP GRADE 10 LEARNER'S MODULEESP GRADE 10 LEARNER'S MODULE
ESP GRADE 10 LEARNER'S MODULE
 

Similar to 1 introduction

5 application serversforproject
5 application serversforproject5 application serversforproject
5 application serversforprojectashish61_scs
 
Maximo differentiators
Maximo differentiatorsMaximo differentiators
Maximo differentiatorsProjetech
 
Top 5 .NET Challenges, Performance Monitoring Tips & Tricks
Top 5 .NET Challenges, Performance Monitoring Tips & TricksTop 5 .NET Challenges, Performance Monitoring Tips & Tricks
Top 5 .NET Challenges, Performance Monitoring Tips & TricksAppDynamics
 
MOUS13: Maintaining and Caring for your EPM Environment
MOUS13: Maintaining and Caring for your EPM EnvironmentMOUS13: Maintaining and Caring for your EPM Environment
MOUS13: Maintaining and Caring for your EPM EnvironmentEmtec Inc.
 
Transaction Processing System
Transaction Processing SystemTransaction Processing System
Transaction Processing SystemAbdul Aslam
 
1588487811-chp-11-c-enterprise-application-integration.ppt
1588487811-chp-11-c-enterprise-application-integration.ppt1588487811-chp-11-c-enterprise-application-integration.ppt
1588487811-chp-11-c-enterprise-application-integration.pptKalsoomTahir2
 
--Enterprise-Application-Integration.ppt
--Enterprise-Application-Integration.ppt--Enterprise-Application-Integration.ppt
--Enterprise-Application-Integration.ppteddielyndacanay0
 
unit2ecommerceapplications-100913064550-phpapp02.pdf
unit2ecommerceapplications-100913064550-phpapp02.pdfunit2ecommerceapplications-100913064550-phpapp02.pdf
unit2ecommerceapplications-100913064550-phpapp02.pdfAkshatkhandelwal41
 
Impact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesImpact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesBrian Petrini
 
Icinga Camp Bangalore - Enterprise exceptions
Icinga Camp Bangalore - Enterprise exceptions Icinga Camp Bangalore - Enterprise exceptions
Icinga Camp Bangalore - Enterprise exceptions Icinga
 
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...Amazon Web Services
 
HA & DR System Design - Concepts and Solution
HA & DR System Design - Concepts and SolutionHA & DR System Design - Concepts and Solution
HA & DR System Design - Concepts and SolutionContinuity and Resilience
 
Jazz for Service Management
Jazz for Service ManagementJazz for Service Management
Jazz for Service ManagementIBM Danmark
 
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Impact 2008 1994A - Exposing services people want to consume: a model-driven ...
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Brian Petrini
 
Data Microservices with Spring Cloud
Data Microservices with Spring CloudData Microservices with Spring Cloud
Data Microservices with Spring CloudOrkhan Gasimov
 
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
 BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful... BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...BMC Software
 
Solving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleSolving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleDynatrace
 
009705432.pdf
009705432.pdf009705432.pdf
009705432.pdfEidTahir
 

Similar to 1 introduction (20)

5 application serversforproject
5 application serversforproject5 application serversforproject
5 application serversforproject
 
Maximo differentiators
Maximo differentiatorsMaximo differentiators
Maximo differentiators
 
Top 5 .NET Challenges, Performance Monitoring Tips & Tricks
Top 5 .NET Challenges, Performance Monitoring Tips & TricksTop 5 .NET Challenges, Performance Monitoring Tips & Tricks
Top 5 .NET Challenges, Performance Monitoring Tips & Tricks
 
MOUS13: Maintaining and Caring for your EPM Environment
MOUS13: Maintaining and Caring for your EPM EnvironmentMOUS13: Maintaining and Caring for your EPM Environment
MOUS13: Maintaining and Caring for your EPM Environment
 
Transaction Processing System
Transaction Processing SystemTransaction Processing System
Transaction Processing System
 
1588487811-chp-11-c-enterprise-application-integration.ppt
1588487811-chp-11-c-enterprise-application-integration.ppt1588487811-chp-11-c-enterprise-application-integration.ppt
1588487811-chp-11-c-enterprise-application-integration.ppt
 
--Enterprise-Application-Integration.ppt
--Enterprise-Application-Integration.ppt--Enterprise-Application-Integration.ppt
--Enterprise-Application-Integration.ppt
 
unit2ecommerceapplications-100913064550-phpapp02.pdf
unit2ecommerceapplications-100913064550-phpapp02.pdfunit2ecommerceapplications-100913064550-phpapp02.pdf
unit2ecommerceapplications-100913064550-phpapp02.pdf
 
Impact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesImpact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top Practices
 
Icinga Camp Bangalore - Enterprise exceptions
Icinga Camp Bangalore - Enterprise exceptions Icinga Camp Bangalore - Enterprise exceptions
Icinga Camp Bangalore - Enterprise exceptions
 
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
 
HA & DR System Design - Concepts and Solution
HA & DR System Design - Concepts and SolutionHA & DR System Design - Concepts and Solution
HA & DR System Design - Concepts and Solution
 
Jazz for Service Management
Jazz for Service ManagementJazz for Service Management
Jazz for Service Management
 
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Impact 2008 1994A - Exposing services people want to consume: a model-driven ...
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...
 
Data Microservices with Spring Cloud
Data Microservices with Spring CloudData Microservices with Spring Cloud
Data Microservices with Spring Cloud
 
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
 BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful... BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
 
Solving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleSolving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 People
 
009705432.pdf
009705432.pdf009705432.pdf
009705432.pdf
 
eG Innovations
eG InnovationseG Innovations
eG Innovations
 
What is cloud computing
What is cloud computingWhat is cloud computing
What is cloud computing
 

More from ashish61_scs

More from ashish61_scs (20)

7 concurrency controltwo
7 concurrency controltwo7 concurrency controltwo
7 concurrency controltwo
 
Transactions
TransactionsTransactions
Transactions
 
22 levine
22 levine22 levine
22 levine
 
21 domino mohan-1
21 domino mohan-121 domino mohan-1
21 domino mohan-1
 
19 structured files
19 structured files19 structured files
19 structured files
 
18 philbe replication stanford99
18 philbe replication stanford9918 philbe replication stanford99
18 philbe replication stanford99
 
15 bufferand records
15 bufferand records15 bufferand records
15 bufferand records
 
14 turing wics
14 turing wics14 turing wics
14 turing wics
 
13 tm adv
13 tm adv13 tm adv
13 tm adv
 
11 tm
11 tm11 tm
11 tm
 
10a log
10a log10a log
10a log
 
09 workflow
09 workflow09 workflow
09 workflow
 
06 07 lock
06 07 lock06 07 lock
06 07 lock
 
05 tp mon_orbs
05 tp mon_orbs05 tp mon_orbs
05 tp mon_orbs
 
04 transaction models
04 transaction models04 transaction models
04 transaction models
 
03 fault model
03 fault model03 fault model
03 fault model
 
02 fault tolerance
02 fault tolerance02 fault tolerance
02 fault tolerance
 
01 whirlwind tour
01 whirlwind tour01 whirlwind tour
01 whirlwind tour
 
Solution5.2012
Solution5.2012Solution5.2012
Solution5.2012
 
Solution6.2012
Solution6.2012Solution6.2012
Solution6.2012
 

Recently uploaded

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxDr.Ibrahim Hassaan
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.arsicmarija21
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptx
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 

1 introduction

  • 1. 1. Introduction CSEP 545 Transaction Processing Philip A. Bernstein Sameh Elnikety Copyright ©2012 Philip A. Bernstein 1/4/2012 1
  • 2. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 2
  • 3. 1.1 The Basics - What’s a Transaction? • The execution of a program that performs an administrative function by accessing a shared database, usually on behalf of an on-line user. Examples • Reserve an airline seat. Buy an airline ticket. • Withdraw money from an ATM. • Verify a credit card sale. • Order an item from an Internet retailer. • Place a bid at an on-line auction. • Submit a corporate purchase order. 1/4/2012 3
  • 4. The “ities” are What Makes Transaction Processing (TP) Hard • Reliability - system should rarely fail • Availability - system must be up all the time • Response time - within 1-2 seconds • Throughput - thousands of transactions/second • Scalability - start small, ramp up to Internet-scale • Security – for confidentiality and high finance • Configurability - for above requirements + low cost • Atomicity - no partial results • Durability - a transaction is a legal contract • Distribution - of users and data 1/4/2012 4
  • 5. What Makes TP Important? • It’s at the core of electronic commerce • Most medium-to-large businesses use TP for their production systems. The business can’t operate without it. • It’s a huge slice of the computer system market. One of the largest applications of computers. 1/4/2012 5
  • 6. TP System Infrastructure • User’s viewpoint – Enter a request from a browser or other display device – The system performs some application-specific work, which includes database accesses – Receive a reply (usually, but not always) • The TP system ensures that each transaction – Is an independent unit of work – Executes exactly once – Produces permanent results • TP system makes it easy to program transactions • TP system has tools to make it easy to manage 1/4/2012 6
  • 7. TP System Infrastructure … Defines System and Application Structure Front End Program Request Controller (routes requests and supervises their execution) Database System Client Back-End (Server) End-User Transaction Server requests 1/4/2012 7
  • 8. System Characteristics • Typically < 100 transaction types per application • Transaction size has high variance. Typically, – 0-30 disk accesses – 10K - 1M instructions executed – 2-20 messages • A large-scale example: airline reservations – Hundreds of thousands of active display devices – Indirect access via Internet – Tens of thousands of transactions per second, peak 1/4/2012 8
  • 9. Availability • Fraction of time system is able to do useful work • Some systems are very sensitive to downtime – Airline reservation, stock exchange, on-line retail, … – Downtime is front page news • Contributing factors – Failures due to environment, system mgmt, h/w, s/w – Recovery time Downtime Availability 1 hour/day 95.8% 1 hour/week 99.41% 1 hour/month 99.86% 1 hour/year 99.9886% 1 hour/20years 99.99942% 1/4/2012 9
  • 10. Application Servers • A software product to create, execute and manage TP applications • Formerly called TP monitors. Some people say App Server = TP monitor + web functionality. • Programmer writes an app to process a single request. App Server scales it up to a large, distributed system – E.g. application developer writes programs to debit a checking account and verify a credit card purchase. – App Server helps system engineer deploy it to 10s/100s of servers and 10Ks of displays – App Server helps system engineer deploy it on the Internet, accessible from web browsers 1/4/2012 10
  • 11. Application Servers (cont’d) • Components include – An application programming interface (API) (e.g., Enterprise Java Beans) – Tools for program development – Tools for system management (app deployment, fault & performance monitoring, user mgmt, etc.) • Enterprise Java Beans, IBM Websphere, Microsoft .NET (COM+), Oracle Weblogic and Application Server 1/4/2012 11
  • 12. Front End Program Request Controller Transaction Server Transaction Server Network Message Inputs App Server Architecture, Pre-Web • Boxes below are distributed on an intranet Queues 1/4/2012 12
  • 13. Automated Teller Machine (ATM) Application Example Request Controller Interbank Transfer Credit Card Accounts Loan Accounts Request Controller ATM ATM ATM ATMATM ATM ATM ATM Bank Branch 1 Bank Branch 2 Bank Branch 500 Checking Accounts 1/4/2012 13
  • 14. Web Server Request Controller Transaction Server Transaction Server intranet Message Inputs Application Server Architecture Queues other TP systems 1/4/2012 14
  • 16. Service Oriented Architecture (SOA) Request Controller Music Computers Web Server Electronics The Internet Web Service WebService • Web services - interface and protocol standards to do app server functions over the internet. 1/4/2012 16 Toys Books …
  • 17. Enterprise Application Integration (EAI) • A software product to route requests between independent application systems. It often includes – A queuing system – A message mapping system – Application adaptors (SAP, Oracle PeopleSoft, etc.) • EAI and Application Servers address a similar problem, with different emphasis • Examples – IBM Websphere MQ, TIBCO, Vitria, Sun SeeBeyond 1/4/2012 17
  • 18. ATM Example with an EAI System Interbank Transfer Credit Card Accounts Loan Accounts EAI Routing ATM ATM ATM ATMATM ATM ATM ATM Bank Branch 1 Bank Branch 2 Bank Branch 500 Checking Accounts EAI RoutingQueues Queues 1/4/2012 18
  • 19. Workflow, or Business Process Mgmt • A software product that executes multi-transaction long-running scripts (e.g., process an order) • Product components – A workflow script language – Workflow script interpreter and scheduler – Workflow tracking – Message translation – Application and queue system adaptors • Transaction-centric vs. document-centric • Structured processes vs. case management • Examples: IBM Websphere MQ Workflow, Microsoft BizTalk, SAP, Vitria, Oracle Workflow, IBM FileNET, EMC Documentum, TIBCO 1/4/2012 19
  • 20. Data Integration Systems (Enterprise Information Integration) Query Mediator Checking Accounts Loan Accounts Credit card Accounts • Heterogeneous query systems (mediators). It’s database system software, but … • It’s similar to EAI with more focus on data transformations than on message mgmt. 1/4/2012 20
  • 21. Transactional Middleware • In summary, there are many variations that package different combinations of middleware features – Application Server – Enterprise Application Integration – Business process management (aka Workflow) – Enterprise Server Bus • New ones all the time, that defy categorization 1/4/2012 21
  • 22. System Software Vendor’s View • TP is partly a component product problem – Hardware – Operating system – Database system – Application Server • TP is partly a system engineering problem – Getting all those components to work together to produce a system with all those “ilities” • This course focuses primarily on the Database System and Application Server 1/4/2012 22
  • 23. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 23
  • 24. 1.2 The ACID Properties • Transactions have 4 main properties – Atomicity - all or nothing – Consistency - preserve database integrity – Isolation - execute as if they were run alone – Durability - results aren’t lost by a failure 1/4/2012 24
  • 25. Atomicity • All-or-nothing, no partial results – E.g. in a money transfer, debit one account, credit the other. Either debit and credit both run, or neither runs. – Successful completion is called Commit – Transaction failure is called Abort • Commit and abort are irrevocable actions • An Abort undoes operations that already executed – For database operations, restore the data’s previous value from before the transaction – But some real world operations are not undoable • Examples - transfer money, print ticket, fire missile 1/4/2012 25
  • 26. Example - ATM Dispenses Money (a non-undoable operation) T1: Start . . . Commit Dispense Money T1: Start . . . Dispense Money Commit System crashes Deferred operation never gets executed System crashes Transaction aborts Money is dispensed 1/4/2012 26
  • 27. Reading Uncommitted Output Isn’t Undoable T1: Start ... Display output ... If error, Abort T2: Start Get input from display ... Commit User reads output … User enters input Brain transport 1/4/2012 27
  • 28. Compensating Transactions • A transaction that reverses the effect of another transaction (that committed). For example, – “Adjustment” in a financial system – Annul a marriage • Not all transactions have complete compensations – E.g., Certain money transfers – E.g., Fire missile, cancel contract – Contract law talks a lot about appropriate compensations  A well-designed TP application should have a compensation for every transaction type 1/4/2012 28
  • 29. Consistency  Every transaction should maintain DB consistency – Referential integrity - E.g., each order references an existing customer number and existing part numbers – The books balance (debits = credits, assets = liabilities)  Consistency preservation is a property of a transaction, not of the TP system (unlike the A, I, and D of ACID) • If each transaction maintains consistency, then serial executions of transactions do too 1/4/2012 29
  • 30. Some Notation • ri[x] = Read(x) by transaction Ti • wi[x] = Write(x) by transaction Ti • ci = Commit by transaction Ti • ai = Abort by transaction Ti • A history is a sequence of such operations, in the order that the database system processed them 1/4/2012 30
  • 31. Consistency Preservation Example T1: Start; A = Read(x); A = A - 1; Write(y, A); Commit; T2: Start; B = Read(x); C = Read(y); If (B -1> C) then B = B - 1; Write(x, B); Commit; • Consistency predicate is x > y • Serial executions preserve consistency. Interleaved executions may not. • H = r1[x] r2[x] r2[y] w2[x] w1[y] – e.g., try it with x=4 and y=2 initially 1/4/2012 31
  • 32. Isolation • Intuitively, the effect of a set of transactions should be the same as if they ran independently • Formally, an interleaved execution of transactions is serializable if its effect is equivalent to a serial one • Implies a user view where the system runs each user’s transaction stand-alone • Of course, transactions in fact run with lots of concurrency, to use device parallelism 1/4/2012 32
  • 33. Serializability Example 1 T1: Start; A = Read(x); A = A + 1; Write(x, A); Commit; T2: Start; B = Read(y); B = B + 1; Write(y, B); Commit; • H = r1[x] r2[y] w1[x] c1 w2[y] c2 • H is equivalent to executing – T1 followed by T2 – T2 followed by T1 1/4/2012 33
  • 34. Serializability Example 2 T1: Start; A = Read(x); A = A + 1; Write(x, A); Commit; T2: Start; B = Read(x); B = B + 1; Write(y, B); Commit; • H = r1[x] r2[x] w1[x] c1 w2[y] c2 • H is equivalent to executing T2 followed by T1 • Note, H is not equivalent to T1 followed by T2 • Also, note that T1 started before T2 and finished before T2, yet the effect is that T2 ran first 1/4/2012 34
  • 35. Serializability Examples • Client must control the relative order of transactions, using handshakes (wait for T1 to commit before submitting T2) • Some more serializable executions r1[x] r2[y] w2[y] w1[x]  T1 T2  T2 T1 r1[y] r2[y] w2[y] w1[x]  T1 T2  T2 T1 r1[x] r2[y] w2[y] w1[y]  T2 T1  T1 T2 • Serializability says the execution is equivalent to some serial order, not necessarily to all serial orders 1/4/2012 35
  • 36. Non-Serializable Examples • r1[x] r2[x] w2[x] w1[x] (race condition) – e.g., T1 and T2 are each adding 100 to x • r1[x] r2[y] w2[x] w1[y] – e.g., each transaction is trying to make x = y, but the interleaved effect is a swap • r1[x] r1[y] w1[x] r2[x] r2[y] c2 w1[y] c1 (inconsistent retrieval) – e.g., T1 is moving $100 from x to y – T2 sees only half of the result of T1 • Compare to the OS view of synchronization 1/4/2012 36
  • 37. Durability • When a transaction commits, its results will survive failures (e.g., of the application, OS, DB system … even of the disk) • Makes it possible for a transaction to be a legal contract • Implementation is usually via a log – DB system writes all transaction updates to its log – To commit, it adds a record “commit(Ti)” to the log – When the commit record is on disk, the transaction is committed – System waits for disk ack before acking to user 1/4/2012 37
  • 38. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 38
  • 39. 1.3 Atomicity and Two-Phase Commit • Distributed systems make atomicity harder • Suppose a transaction updates data managed by two DB systems • One DB system could commit the transaction, but a failure could prevent the other system from committing • The solution is the two-phase commit protocol • Abstract “DB system” by resource manager (could be a SQL DBMS, message mgr, queue mgr, OO DBMS, etc.) 1/4/2012 39
  • 40. Two-Phase Commit • Main idea - all resource managers (RMs) save a durable copy of the transaction’s updates before any of them commit • If one RM fails after another commits, the failed RM can still commit after it recovers • The protocol to commit transaction T – Phase 1 - T’s coordinator asks all participant RMs to “prepare the transaction”. Each participant RM replies “prepared” after T’s updates are durable. – Phase 2 - After receiving “prepared” from all participant RMs, the coordinator tells all participant RMs to commit 1/4/2012 40
  • 41. Two-Phase Commit System Architecture Resource Manager Transaction Manager (TM) Application Program Other Transaction Managers 1. Start transaction returns a unique transaction identifier 2. Resource accesses include the transaction identifier For each transaction, RM registers with TM 3. When application asks TM to commit, the TM runs two-phase commit Start Commit, Abort Read, Write 1/4/2012 41
  • 42. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 42
  • 43. 1.4 Performance Requirements • Measured in max transaction per second (tps) or per minute (tpm), and dollars per tps or tpm • Dollars measured by list purchase price plus 5 year vendor maintenance (“cost of ownership”) • Workload typically has this profile – 10% application server plus application – 30% communications system (not counting presentation) – 50% DB system • TP Performance Council (TPC) sets standards – http://www.tpc.org • TPC A & B (‘89-’95), now TPC C & E 1/4/2012 43
  • 44. TPC-A/B — Bank Tellers Start Read message from terminal (100 bytes) Read+write account record (random access) Write history record (sequential access) Read+write teller record (random access) Read+write branch record (random access) Write message to terminal (200 bytes) Commit • End of history and branch records are bottlenecks • Obsolete (a retired standard), but interesting • Input is 100 byte message requesting deposit/withdrawal • Database tables = {Accounts, Tellers, Branches, History} 1/4/2012 44
  • 45. TPC-C Order-Entry for Warehouse • TPC-C uses heavier weight transactions Table Rows/Whse Bytes/row Warehouse 1 89 District 10 95 Customer 30K 655 History 30K 46 Order 30K 24 New-Order 9K 8 OrderLine 300K 54 Stock 100K 306 Item 100K 82 1/4/2012 45
  • 46. TPC-C Transactions • New-Order – Get records describing a warehouse, customer, & district – Update the district – Increment next available order number – Insert record into Order and New-Order tables – For 5-15 items, get Item record, get/update Stock record – Insert Order-Line Record • Payment, Order-Status, Delivery, Stock-Level have similar complexity, with different frequencies • tpmC = number of New-Order transaction per min 1/4/2012 46
  • 47. Comments on TPC-C • Enables apples-to-apples comparison of TP systems • Does not predict how your application will run, or how much hardware you will need, or which system will work best on your workload • Not all vendors optimize for TPC-C – Some high-end system sales require custom benchmarks 1/4/2012 47
  • 48. Current TPC-C Numbers • All numbers are sensitive to date submitted • Systems – cost $60K (Dell/HP) - $12M (Oracle/IBM) – mostly Oracle/DB2/MS SQL on Unix variants/Windows – $0.40 - $5 / tpmC • Example of high throughput – Oracle, 30M tpmC, $30.0M, $1/tpmC, Oracle/Solaris • Example of low cost – HP ProLiant, 290K tpmC, $113K, $0.39/tpmC, Oracle/Linux 1/4/2012 48
  • 49. TPC-E • Approved in 2007 • Models a stock trading app for brokerage firm • Should replace TPC-C, it’s database-centric • More complex but less disk IO per transaction 1/4/2012 49
  • 50. TPC-E • 33 tables in four sets – Market data (11 tables) – Customer data (9 tables) – Broker data (9 tables) – Reference data (4 tables) • Scale – 500 customers per tpsE 1/4/2012 50
  • 51. TPC-E Transactions • Activities – Stock-trade, customer-inquiry, feeds from markets, market-analysis • tpsE = number of Trade-Result transaction per sec • Trade-Result – Completes a stock market trade – Receive from market exchange confirmation & price – Update customer‘s holdings – Update broker commission – Record historical information 1/4/2012 51
  • 52. TPC-E Transactions 1/4/2012 52 Name Access Description Broker-Volume RO DSS-type medium query Customer-Position RO “What am I worth?” Market-Feed RW Processing of Stock Ticker Market-Watch RO “What’s the market doing?” Security-Detail RO Details about a security Trade-Lookup RO Look up historical trade info Trade-Order RW Enter a stock trade Trade-Result RW Completion of a stock trade Trade-Status RO Check status of trade order Trade-Update RW Correct historical trade info
  • 53. Current TPC-E Numbers • Systems – Cost $60K - $2.3M – Almost all are MS SQL on Windows – $130 - $250 / tpsE • Example of high throughput – IBM, 4.5k tpsE, $645k, $140/tpsE, MS SQL/Windows • Example of low cost – IBM, 2.9K tpsE, $371K, $130/tpsE, MS SQL/Windows 1/4/2012 53
  • 54. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 54
  • 55. 1.5 Scalability • Techniques for better performance – Textbook, Chapter 2, Section 6 • Scale-up – Caching – Resource Pooling • Scale-out – Partitioning – Replication 1/4/2012 55
  • 56. Caching • Key idea – Use more memory – Keep a copy of data from its permanent home – Accessing a cached copy is fast • Key issues – Which data to keep • Popular read-only data – Cache replacement – What if original data is updated • Invalidations • Timeouts 1/4/2012 56
  • 57. Caching • Applied at multiple levels – Database and application server • Updates – Write through • Better cache coherence – Write back • Batching and write absorption • Example products – Memcached, MS Velocity 1/4/2012 57
  • 58. Resource Pooling • Key idea – If a logical resource is expensive to create and cheap to access, then manage a pool of the resource • Examples – Session pool – Thread pool 1/4/2012 58
  • 59. Partitioning • To add system capacity, add server machines • Sometimes, you can just relocate some server processes to different machines • But if an individual server process overloads one machine, then you need to partition the process – Example – One server process manages flights, cars, and hotel rooms. Later, you partition them in separate processes. – We need mapping from resource name to server name 1/4/2012 59
  • 60. Partitioning: Routing • Sometimes, it’s not enough to partition by resource type, because a resource is too popular – Example: flights • Partition popular resource based on value ranges – Example – flight number 1-1000 on Server A, flight number 1000-2000 on Server B, etc. – Request controller has to direct its calls based on parameter value (e.g. flight number) – This is called parameter-based routing • E.g., range, hashing, dynamic 1/4/2012 60
  • 61. Replication • Replication - using multiple copies of a server or resource for better availability and performance. – Replica and Copy are synonyms • If you’re not careful, replication can lead to – worse performance - updates must be applied to all replicas and synchronized – worse availability - some algorithms require multiple replicas to be operational for any of them to be used 1/4/2012 61
  • 62. Replicated Server 1/4/2012 62 • Can replicate servers on a common resource – Data sharing - DB servers communicate with shared disk Resource Server Replica 1 Server Replica 2 Client • Helps availability for process (not resource) failure • Requires a replica cache coherence mechanism, so this helps performance only if – Little conflict between transactions at different servers or – Loose coherence guarantees (e.g. read committed)
  • 63. Replicated Resource 1/4/2012 63 Resource replica Server Replica 1 Server Replica 2 ClientClient Resource replica • To get more improvement in availability, replicate the resources (too) • Also increases potential throughput • This is what’s usually meant by replication
  • 64. Outline 1. The Basics 2. ACID Properties 3. Atomicity and Two-Phase Commit 4. Performance 5. Scalability 1/4/2012 64
  • 65. What’s Next? • This chapter covered TP system structure and properties of transactions and TP systems • The rest of the course drills deeply into each of these areas, one by one. 1/4/2012 65
  • 66. Next Steps • We covered – Chapter 1 – Chapter 2, Section 6 • Assignment 1 • Teams for the project 1/4/2012 66