Emerging Database course Database Technologies Database Technologies A
Emerging Database course: Database Technologies
Database Technologies A database management system is a tool for organizing real world data into a miniworld database. To create a good database management system, several important issues need to be considered: Composite objects. A composite object in an object-oriented database is equivalent to an aggregation relationship in a relational database. Several component objects can be grouped into a logical entity, a composite object. As discussed by Bertino and Martino [8], locking, authorization, and physical clus tering are achieved efficiently through this process. The relationship between a composite object and its component objects is described by the compos ite reference. The component objects are called dependent objects. The struc ture of dependent objects is used to maintain the integrity constraints. Thus, the existence of a dependent object depends on the existence of its composite object.
Composite references can be implemented in two ways: shared and exclu sive. A shared composite reference means that a component object can belong to more than one composite object, while an exclusive composite reference can only belong to one. The composite reference can also be distinguished as dependent and independent. This aspect is used to analyze the existence be tween the composite object and the component object. It is called a dependent composite reference if the component objects cannot exist when the correspond ingcomposite object is deleted. However, in the independent composite reference, the component objects can exist no matter whether the composite object exists.
2. Associations. An association is a link, i. e. , a relationship, between related objects. For example, a manager is associated with employees in his research department through the project relationship. Therefore, the project number can be an attribute of manager entities that link with employee entities. The number of entities involved in an association is indicated by a degree value. The minimum and maximum number of associations in which an entity can participate is defined in the cardiality ratio. The function of association is not explicitly implemented by most object oriented prototypes. One approach is to use a separate attribute to indicate each participating entity. For example, if an order entity is associated with three other entities, customer, supplier, and product, then three attributes, say to_customer, to_supplier, and to_product, can be added to indicate the associations. Furthermore, for more efficient reverse traversal, adding reverse reference at tributes is necessary. The reverse reference attribute is an additional attribute in the associated entity and points back to the original entity. The consistency of such an attribute can be controlled by users or the system.
3. Persistence. The persistent design issue deals with whether the objects should permanently and automatically exist in the database. There are three kinds of approaches to deal with the existence of instances: Persistence is automatically implied when an instance is created. All the instances created during the execution of a program will be deleted at the end of execution. If the user wants to retain the instances in the database, he or she needs to insert the instance into the collection of objects. Classes are categorized into temporary objects and permanent objects. The instances created through the permanent classes are permanent instances, while those created through temporary classes are temporary objects.
4. Deletion of instance. The issue of deletion of an instance is related to persistence. There are two approaches to deleting instances: Provide a system-defined deletion function. When an instance is deleted, the reference integrity constraint is violated. The system can totally ignore the violation or maintain a reference count. The reference count records the number of references connected to other objects. An object can be deleted when the count is zero. An object will be removed automatically when no references are associated with it.
5. Integrity constraints are used to maintain the consistency and correctness of data by domain and referential integrity constraints. The domain constraints specify the legalization and range of data, while the ref erentialintegrity constraints control the existence of referenced entities. Integrity constraints can be implemented as static or dynamic constraints. Whether the state values of objects are legal is controlled by the static con straints, and the state transactions of objects are controlled by the dynamic constraints. Integrity constraints in an object-oriented database prototype is defined imperatively in methods. This approach is different than a relational database. However, the declarative approach in the relational database seems to be superior to the object-oriented database approach. 6. Object migration. The migration of instances through classes is an important function in object-oriented databases. For example, when a student goes from undergraduate to graduate school, the student instance should be able to migrate from an undergraduate class to a graduate class without deleting the instance from one class and recreating it in another.
REFERENCES • Timon C. Du. , Emerging Database System Architectures • Bochmann, G. Concepts for Distributed Systems Design • Capron, H. L. Computers: Tools for an Information Age
- Slides: 8