Object-oriented database systems (extended abstract): the notions and the issues
暂无分享,去创建一个
A database system is a collection of stored data together with their description (the database) and a hardware/software system for their reliable and secure management, modification and retrieval (the database management system, DBMS).A database is supposed to represent the interesting semantics of an application (the miniworld) as completely and accurately as possible. The data model incorporated into a database system defines a framework of concepts that can be used to express the miniworld semantics. It comprisesbasic data types and constructors for composed data types,(generic) operators to insert, manipulate, retrieve and delete instances of the actual data types of a database,implicit consistency constraints as well as (eventually) mechanisms for the definition of explicit consistency constraints that further reflect the miniworld semantics as viewed by the database system.As usual, types have to be defined before instances of them can be created (the collection of defined types — sometimes together with the set of explicit consistency constraints — forms the database schema). Every database thus adheres to the schema defined for it, and both together, the schema and the actual data provided by the users (and stored in instances) capture the miniworld semantics.We can therefore distinguish the following two classes of semantics:the semantics of the miniworld itself, the semantics of the miniworld as represented within the database. Let us assume that a database correctly reflects the intended miniworld semantics (careful database design!). Due to the rigid framework of data models, there will still remain a semantic gap between the miniworld and its database representation. In other words, it is usually impossible to represent all interesting semantics within a database. The “remainder” has to be captured by the application programs using the database and/or it is part of the (hopefully meaningful!) interpretation of the result of database queries by the user himself. However, the ultimate goal of database systems is to provide for concepts that allow to keep the semantic gap as small as possible and thus permit to represent most of the salient semantics in the database itself.