Академический Документы
Профессиональный Документы
Культура Документы
JEFF TALLMAN
SENIOR SOFTWARE ENGINEER/ARCHITECT,
EIM PRODUCT SPECIALIST, SYBASE
Common Architectures
Beyond simplistic standby systems
How It Works
Pieces & Parts
Implementation Tips
1
DATA MOVEMENT COMPARISON
One Solution Doesnt Fit All..Complementary Technologies
Replication EAI/ ETL Synchronization
Messaging
Change Capture Transaction Log Application Initiated Date scan (common) Flagged rows
or Tran Log
Common Application DBMS DBMS External feeds OLTP DW Mobile applications
HA & Reporting Packaged Apps
Problem Areas Latency with batch Implementation time Latency Use of atomic row
processes and effort Impact of scanning statements vs. bulk
for changes methods
Claim to fame Serialized Non-serialized Bulk extraction and 1000s of mobile
transactions with transactions with loading users
very low latency very low latency
Implementation Easy Medium Medium Easy Medium Easy Medium
Effort Considerable
App or Schema None Application Schema (date change Schema (row capture
changes? (implementation) column) for subscribers)
Data Flexibilty Row-wise Transaction Row-wise Row-wise
2
DATA MOVEMENT REALITIES (2)
Typical Reasons for Failure
Unreasonable expectations
Asynchronous data movement implies some latency
Realities of log based replication vs. bulk statement execution
Failing to monitor the processing
Both performance as well as exception
Operations staff not trained
Implementation staff sticking to old methods vs. exploiting
product features
May only be comfortable with <10% of product features
Rather than using one more advanced features, they will tend to re-
implement outside product using technology comfortable with
3
TRENDS WE ARE SEEING (2)
Based on Sybase Replication Server Customer Base
COMMON ARCHITECTURES
4
LEVERAGING REMOTE BUSINESS CENTERS
Bi-Directional Replication
Chicago
>700 miles:
Beyond reasonable disk replication
distances
Split processing/shared primary (bi-
directional)
Business Continuity vs. Disaster
Recovery
London
New York
Singapore
5
GOING TO WHERE THE MARKETS ARE.
Follow-The-Sun Trading, Corporate Visibility
FTSE
NYSE
Metals
Tokyo Grain
Energy
SIMEX
Front Office
Trades Research
Mergers
Investment &
Retail Institutional Banking Asset
Sales Sales ManagementAcquisitions
Middle Office
Trade Order
Coding Figuration
Verification Control
6
WEB FACING SECURITY ENCLAVE
Zero Sensitive Data Storage - Zero Impact on Internal Systems
Request Responses:
Update address
Insert CreditCards(1,Visa,xxxx xxxx 6789)
Replicated Requests:
changeAddress(123 Main Street)
addCreditCard (1, Visa, 1232 2345 6789)
7
IMDB MASH-UPS & KPI DATABASES
For Low Latency Queries or Federated Data Mash-ups
Source Systems
(disk-based)
HOW IT WORKS
8
REPLICATION SERVER
Since 1992
SUPPORTED DATABASES
Heterogeneous Capabilities
Source DBMSs
Sybase ASE, SQL Anywhere
Oracle 9i (legacy), 10g, 11g, RAC
IBM DB2 OS/390 & DB2 UDB
Microsoft SQL Server 2000 (legacy), 2005, 2008 (2005 feature level)
Custom (using published API to build your own)
3rd Party DB2 OS/400, etc.
Target DBMSs
Sybase ASE, SQL Anywhere, Sybase IQ
Oracle 10g, 11g, RAC
IBM DB2 OS/390 & DB2 UDB
Microsoft SQL Server 2000, 2005, 2008
Any ODBC (as long as you have an ODBC driver)
Most common message buses (via RepConnector)
9
RS CAPABILITIES
Swiss Army Knife for Data Replication
10
REP SERVER (INBOUND)
RSSD
Replication Definition(s)
(repdefs)
Log Transfer
Language (LTL)
Rep Agent
Order Entry Stable Device
Primary DB
Inbound Queue
11
STEP 2: CREATE A REPDEF FOR THE TABLE
REPDEF = Replication Definition (most basic form of publication)
12
REP SERVER (OUTBOUND)
Subscripions(s)
Routes (Direct & Indirect)
Rep Agent
Order Entry Stable Device
Replicate DB
Outbound Queue
Route
Queue
13
STORED PROCEDURE REPLICATION
aka Function Replication
14
EXAMPLE PROC VS. FSTRING BODY
Example TSQL Stored Procedure Code Fragment
if (@new_balance >0)
update bank_account
set balance=balance + (@new_balance - @old_balance)
where account_id = @account_id
else
insert into overdrawn_accounts (@account_id, @new_balance)
15
SCC REPLICATION TROUBLESHOOTING
Trace replication from the target to the source
16
SCC REPLICATION TROUBLESHOOTING
Whats happening at the replicate database connection?
17
IMPLEMENTATION
CHALLENGES
DUCK & DODGE
18
KEY TIP #2: UNDERSTAND IT
Is Ease of Use a euphemism Dont know what I am doing?
19
KEY TIP #4: EXPLOIT IT
Make Business Continuity a Regular Event
20
September 27, 2010 41
THANK YOU
JEFF.TALLMAN@SYBASE.COM
21
September 27, 2010 43
22