1 / 9

Forum Topics

Forum Topics. OMG Roundtable Dec. 11, 2007. Background. Forum is part of the ODBMS.ORG Moderated by Dr. Roberto Zicari Started on 10/16/07 (last post 12/8/07) Great place to discuss and post issues: http://developer.db4o.com/forums. Main Topics Discussed.

linda-brady
Download Presentation

Forum Topics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Forum Topics OMG Roundtable Dec. 11, 2007

  2. Background • Forum is part of the ODBMS.ORG • Moderated by Dr. Roberto Zicari • Started on 10/16/07 (last post 12/8/07) • Great place to discuss and post issues: http://developer.db4o.com/forums

  3. Main Topics Discussed • Query Language/ Object Store API • Requirements/scope of the QL/API? • Adoption; other options related issues • How to define semantics? • Required optimizations? How to express their semantics? • Other DB Essential Facilities • Threading, Triggers, Views • Client/Server, ACID, Replication, Synchronization of clients • Object Store Model • Do we need a model? • What are the goals/scope of this effort/model? • Specific requirements for model?

  4. Object Store QL/API Requirements • Easy to adopt • Programming Language integrated (NQ) e.g. Java, Ruby, LINQ • Existing: JDO, JPA, HQL, EJB, current vendors QLs, de-facto • Expressive power • Ability to do: insert, delete, update (or retrieve+modify) • Ability to support collections of different types ( lang. / user defined) • Strong type-checking/ Type safe • Support transactions • Integration with PL control structures, e.g. loops, if_then) • Integration with PL abstractions, e.g. procedures, methods, modules • Expressive of DB abstractions, e.g. triggers, updatable views, Integrity constraints • As expressive as SQL and more i.e. able to express UML diagrams; e.g. associations, collections

  5. Object Store QL/API Requirement (continued) • Expressive power (continues) • DB Schema language that corresponds to UML • Query optimizations (with semantics), e.g. indexing, activation • Bindings to prominent OO PLs • Need to be “complete” (define!) • How to define semantics? • We need to clearly define semantics for the QL/API • One way: based on a model • Any other way? • based on sets of “compliance tests” ? • Reference implementations • Define in Phases? What’s in phase1? • Dr. Subieta says 1-8 of above requirements

  6. Object Store API Optimizations • Requirements • Indexing, • Transparent Persistence (activation/store) • Caching, Pipelining • Handling large collections • Aggregates • sum, avg., there exists, min, max, etc. • Adapt to different storage technologies • Optimize existing PLs • Define Behavior. How?

  7. Other DB Essential Facilities Concurrent Access and Client/Server support • Multi-threading • Client/Server protocol • Concurrency Control • Rollbacks • Integrity (in face of failures) • Replication between databases • Synchronization of clients • Interoperability facilities (translation to/from relational dbs and XML repositories) • Administration (de-fragmentation, meta info, etc.)

  8. Object Store Model • Do we need a model? • Mike Card: it’s one of the major criticism of OODBs • Dr. Subieta: needed to define semantics, consistency • Can we do with “compliance tests” instead? • What are the goals/scope of this effort/model? • Support a strong, consistent QL/API • Define operational semantics for the API • Define expected behavior for optimization, facilities

  9. Summary • What’s the strength of Object Database? How are they used? • What do customers need from them? How is it different than Relational DBs? • Do we need to compare with SQL? Schemas? UML? • Requirements for QL – more? drop some? • Defining semantics – besides a model is there another way? • Programming Language Integrated QL/API or not? • A theoretical model needed or not? What’s its purpose? Different model? Why? • Other optimization areas? How do we define expected behavior? • Additional Facilities? • Do it in 1 phase or more? • How do we increase probability of adoption? • Approaches? • Mechanisms? • What are the inhibitors?

More Related