Download presentation
Presentation is loading. Please wait.
Published byHugh Miles Modified over 9 years ago
1
Applying Database Replication to Multi-player Online Games Yi Lin Bettina Kemme Marta Patiño-Martínez Ricardo Jiménez-Peris Oct 30, 2006
2
Outline Motivation –Requirements of MOGs –Benefits of database replication Introduction to database replication A proof-of-concept game Experiments
3
What MOGs need? Fault tolerance Scalability … Isolated game worlds …
4
What Database Replication does? Providing fault tolerance Scalability Data consistency Read One DB Write All DBs Most replication protocols are READ- ONE-WRITE-ALL
5
Motivation Why don’t we apply database replication to MOGs? Unclear about –How to apply? –What are the challenges? –How is the performance? Using a small game for proof-of-concept
6
Introduction to Database Replication Transaction –A transaction contains one or more read and/or write requests –Atomic. Commit: all requests successful. Abort: none of writes will take effect –Consistent –Isolated –Durable Challenge of database replication: –How to guarantee data consistency in terms of transaction?
7
Database Replication: challenge w(x) Ideally: The whole system behaves as if there is one database x x x x x x Replica control Replication protocols Keep copies consistent Isolate concurrent transactions
8
SEQ Replication Protocol x x r(x) commit w(x) Extract writeset T1 T2 x x abort JDBC Sequencer T1T2validation fail succeed apply ws, commit commit
9
Other replication protocols Lazy Primary –Limitation: Need to know if a transaction is read-only or not in advance Symmetric –Limitation: Need to know all operations in a transaction in advance SRCA-REP –Need support of group communication systems We build a middleware platform, MiddleSIR, to accommodate all these protocols. JDBC Comm Mgr Txn Mgr Conn Mgr Comm Mgr Txn Mgr Conn Mgr
10
A proof-of-concept game Modeling based on transactions E.g., two players might type same string concurrently. –Model: Typing a string as one transaction, while typing a character as an operation E.g., All players see the same game interfaces –Model: Periodically reading data (e.g., strings, bullets, scores) from database as one transaction.
11
Experiments in WANs, Scalability
12
Experiments in WANs, 4 servers, Write transactions
13
Conclusion Propose a new approach of system supports for MOGs –Applying database replication to MOGs for fault tolerance, scalability, performance, ease of concurrency control Use a small game for proof-of-concept –Data consistency is guaranteed –Response time is good, even in WANs. –Scalability is not good. Read-one / Write-All replication only scales if the percentage of reads is very high. Future work: use partial replication (Write only a few servers)
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.