* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Applying Database Replication to Multi
Survey
Document related concepts
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
Transcript
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)