Object oriented database

后端 未结 3 1904
予麋鹿
予麋鹿 2021-01-28 06:25

I don\'t know if this is the right title for this question. Anyway, recently I have heard about that you could make life easier when creating database. By in which you use objec

相关标签:
3条回答
  • 2021-01-28 06:44

    It sounds like you are talking about JPA. You simply annotate your objects, and the database is setup according to the objects for you. The most used JPA implementation is Hibernate, and is very quick way of writing database enabled Java applications.

    If you want more control over the database structure, you can do that via the annotations.

    For more information on hibernate, check out http://www.hibernate.org/.

    0 讨论(0)
  • 2021-01-28 06:50

    If you are using an object oriented database, you are not using a relational database like MySQL or SQLite.

    Instead, the database directly stores your application objects, and you usually can query these with some query language or API.

    I have only experience with db4o, there you simply do

    database.store(object);
    

    and your object is stored.

    0 讨论(0)
  • Object DB

    • High performance
    • Faster as no joins required
    • Inherent versioning mechanism
    • Navigational interface for operations (like graph traversal)
    • Object Query Language retrieve objects declaratively
    • complex data types
    • object identity ie. equals() in which object identity is independent of value and updates
    • facilitates object sharing
    • classes and hierarchies (inheritance and encapsulation)
    • support for relationships
    • integrated with a persistence language like ODL
    • support for atomicity
    • support for nested relationships
    • semantic modelling

    Cons

    • No mathematical foundation as RDB (refer Codd)
    • cons of object orientation
    • persistence difficult for complex structures, some data must be transient

    Object-Relational databases (You might have seen UDTs!)

    • support for complex data types like collection, multisets etc
    • object oriented data modelling
    • extended SQL and rich types
    • support for UDT inhertance
    • powerful query language

    Different approaches (OO, Relational DB or OODB) may be necessary for different applications

    References

    OODMS manifesto

    ODMG

    The Object-Oriented Database System Manifesto

    Object Oriented Database Systems

    Object Relational Databases in DBMS

    Completeness Criteria for Object-Relational Database Systems

    Comparisons

    http://en.wikipedia.org/wiki/Comparison_of_object_database_management_systems

    http://en.wikipedia.org/wiki/Comparison_of_object-relational_database_management_systems

    0 讨论(0)
提交回复
热议问题