Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Operational transformation wikipedia , lookup
Global serializability wikipedia , lookup
Relational model wikipedia , lookup
Clusterpoint wikipedia , lookup
File locking wikipedia , lookup
Database model wikipedia , lookup
Commitment ordering wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Serializability wikipedia , lookup
Expense and cost recovery system (ECRS) wikipedia , lookup
OODB System Comparison Presented by David Buchanan Farhad Barfatani Matthew Buchanan Mark Downing Systems Selected Gemstone Versant Object Store Poet Jasmine, Objectity/DB and Others Criteria Selected Architecture / Schema Schema Evolution Versioning Recovery Concurrency Persistence Programming Languages Support Tools Query Support Legacy Support Platform Support Architecture Versant Jasmine Gemstone ObjectStore Schema Evolution Versant POET Objectivity Object Store Versioning Versant Jasmine Objectivity Object Store Versant Version 6.0 Recovery A dual logging feature manages recovery. System maintains physical and logical logs. Roll Forward mechanism is used to recover the database. – System’s roll back reapply committed transactions . Versant Version 6.0 Concurrency Persistent locks support long transactions. Short locks are also provided for shorter transactions. “No-locks” for optimistic locking. – Users to define their own locks. – Denies locks that would result in a deadlock. Versant Version 6.0 Concurrency Persistent locks support long transactions. Short locks are also provided for shorter transactions. “No-locks” for optimistic locking. Users to define their own locks. Denies locks that would result in a deadlock. Jasmine Recovery Database log files for Non-catastrophic failure. Journaling in the event of catastrophic failure. Jasmine Recovery Journal files are backups of the entire database. Journaling does not include backing up of multimedia files. Facilities allow full and partial backups to be done online or offline. Jasmine Recovery Database can perform incremental backups of the database. » It uses a circular log file. » Logs used to roll forward to the last processed transactions » To restore backed up copy requires system shut down. Jasmine Concurrency Jasmine uses a combination of: » Object locking » Versioning for concurrency control. Jasmine Concurrency Jasmine support: – Database Locking – Store Locking – Class Locking – Page Locking – Object Locking GemStone Recovery Network or hardware failure recovery Replication. Backup. Logging mechanisms. GemStone Recovery Restoration after disk or system failure: Full backup. Using log files. Transaction logs. GemStone Concurrency Transaction mechanisms control concurrency. – It uses optimistic locking. POET Recovery Roll forward recovery mechanism using logs. Supports an external backup facility. Backed up while clients still use the database. POET Concurrency Concurrency control is managed by using: Nested transactions. Locks. Locks prevent reading, updating or deleting of objects by unauthorized users. Objectivity Recovery Inbuilt recovery mechanism. Automatic Recovery: – – – – – Application; Local server; Remote server host; Lock server host; Process failures. Objectivity Concurrency Concurrent access: Flexible transaction model. Multiple readers, one writer. Object-level versioning. Hierarchical locking. Lock waiting. Active deadlock detection across databases. Objectivity Concurrency Concurrent access: Flexible transaction model. Multiple readers, one writer. Object-level versioning. Hierarchical locking. Lock waiting. Active deadlock detection across databases. Objectstore Recovery Transaction logging Two-phase commit Objectstore Concurrency Multi-Version Concurrency Control (MVCC ) MVCC can be applied selectively to individual databases, or to entire servers. Persistence & Programming Languages Versant – Java – C++ Jasmine – Java – C/C++ – ActiveX GemStone – Smalltalk – Java Persistence & Programming Languages POET – Java – C++ Objectivity – – – – Java Smalltalk C++ SQL++ ObjectStore – Java – C/C++ – ActiveX Query Support OQL – Object Store – Versant ODQL – Jasmine Legacy Support Relational Database Support – Objectivity – Versant – Jasmine Conclusion OODB’s Strengths Which is the best system?