* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Applying Database Replication to Multi
Oracle Database wikipedia , lookup
Global serializability wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Consistency model wikipedia , lookup
Ingres (database) wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Commitment ordering wikipedia , lookup
Relational model wikipedia , lookup
Functional Database Model wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Database model wikipedia , lookup
Serializability wikipedia , lookup
ContactPoint wikipedia , lookup
Clusterpoint wikipedia , lookup
Applying Database Replication to Multi-player Online Games Yi Lin Bettina Kemme Marta Patiño-Martínez Ricardo Jiménez-Peris Oct 30, 2006 Outline • Motivation – Requirements of MOGs – Benefits of database replication • Introduction to database replication • A proof-of-concept game • Experiments What MOGs need? … … Isolated game worlds • Fault tolerance • Scalability What Database Replication does? Read One DB Write All DBs •Most replication protocols are READONE-WRITE-ALL • Providing fault tolerance • Scalability • Data consistency 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 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? Database Replication: challenge • Replication protocols •Keep copies consistent • Isolate concurrent transactions w(x) w(x) • Ideally: The whole system behaves as if there is one database Replica control x x SEQ Replication Protocol T1 T2 JDBC JDBC commit r(x) w(x) Sequencer T1 validation succeed validation fail Extract writeset commit x commit r(x) w(x) T2 apply ws, commit abort Extract writeset x xx Other replication protocols • Lazy Primary – Limitation: Need to know if a transaction is read-only or not in advance JDBC JDBC Comm Mgr Comm Mgr Txn Mgr Txn Mgr Conn Mgr Conn Mgr • 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. 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. Experiments in WANs, Scalability Experiments in WANs, 4 servers, Write transactions 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)