【24h】

The Iris database system

机译:虹膜数据库系统

获取原文

摘要

Iris is an object-oriented database management system being developed at Hewlett-Packard Laboratories [1], [3]. This videotape provides an overview of the Iris data model and a summary of our experiences in converting a computer-integrated manufacturing application to Iris. An abstract of the videotape follows.

Iris is intended to meet the needs of new and emerging database applications such as office and engineering information systems, knowledge-based systems, manufacturing applications, and hardware and software design. These applications require a rich set of capabilities that are not supported by the current generation (i.e., relational) DBMSs.

The Iris data model is an object and function model. It provides three basic constructs objects, types and functions. As with other object systems, Iris objects have a unique identifier and can only be accessed and manipulated through functions. Objects are classified by type. Objects that belong to thesame type share common functions. Types are organized into a hierarchy with inherited functions. In Iris, functions are used to model properties of objects, relationships among objects and operations on objects. Thus, the behavior of an Iris object is completely specified through its participation in functions.

Iris provides good separation among its three basic notions. This simplifies the data model making it easier to learn and easier to implement since there are fewer constructs than other object models. In addition, it facilitates Iris support for the following desirable features. Schema evolution: new types and functions may be added at any time. Object evolution: Iris objects may have multiple types and may acquire and lose types dynamically. Object participation in functions may be required or optional (e g, everyone has birthdate but not everyone has a phone number). Data independence: the implementation of a function is defined separately from its interface. Thus, the implementation of a function may change without affecting applications that use it. Functional extensibility: an Iris function may be implemented as a stored table, computed as an Iris expression, or computed as a subroutine in a general-purpose programming language. Thus, any computation can be expressed as an Iris function Schema and data uniformity: the metadata is modeled and manipulated using the primitives of the data model. Also, system functions (create type, delete object, etc) are invoked in the same manner as user functions. Thus, users need learn only one interface. Set processing: Iris supports set-at-a-time processing for efficient retrieval and update of collections of objects.

To evaluate the usefulness of the Iris prototype, a project was undertaken to convert a large relational application to Iris [2]. The relational system contained nearly 200 relations and 2500 attributes. When transcribed to Iris, the schema size was reduced by over a third. There are two reasons for this large reduction. First, in the relational schema, many attributes were simply foreign keys required for joins. In the Iris schema, function inheritance through the type hierarchy eliminates the need for many of these foreign keys. A second reason for the schema reduction was that compound keys were replaced by object references. This permitted several attributes in a relation to be replaced by a single identifier

It was noted that application programs were easier to read and develop using the Iris schema. The Iris OSQL (Object SQL) language was a fairly natural interface for users familiar with SQL. The use of function composition and function inheritance and a large number of joins that, in the relational system, must be expressed by comparing keys. The function-orientation of Iris encouraged code sharing in that deriving and sharing new functions was simplified.

Finally, since there are few tools and methodologies for using object-oriented database management systems, the ability of the Iris schema to easily evolve was valuable in iteratively refining the Iris schema. Also, the Iris Graphical Editor was a useful tool in graphically displaying the schema and browsing function definition and instances.

机译:Iris是由惠普实验室[1],[3]开发的面向对象的数据库管理系统。该录像带概述了Iris数据模型,并总结了我们将计算机集成的制造应用程序转换为Iris的经验。录像带的摘要如下。 Iris旨在满足新兴数据库应用程序的需求,例如办公和工程信息系统,基于知识的系统,制造应用程序以及硬件和软件设计。这些应用程序需要一组丰富的功能,而当前的(即关系的)DBMS则不支持这些功能。

Iris数据模型是对象和功能模型。它提供了三个基本构造对象,类型函数。与其他对象系统一样,虹膜对象具有唯一的标识符,并且只能通过函数进行访问和操作。对象按类型分类。属于相同类型的对象共享公共功能。类型被组织成具有继承函数的层次结构。在虹膜中,函数用于对对象的属性,对象之间的关系以及对象上的操作进行建模。因此,虹膜对象的行为是通过参与功能来完全指定的。 虹膜在其三个基本概念之间提供了很好的分离。这简化了数据模型,使得结构比其他对象模型少,因此更易于学习和实现。此外,它还简化了虹膜对以下理想功能的支持。模式演变:可以随时添加新的类型和功能。对象演化:虹膜对象可能具有多种类型,并且可能动态获取和丢失类型。对象参与功能可能是必需的,也可能是可选的(例如,每个人都有生日,但不是每个人都有电话号码)。数据独立性:功能的实现与其接口分开定义。因此,功能的实​​现可以更改,而不会影响使用该功能的应用程序。功能可扩展性:在通用编程语言中,虹膜函数可以实现为存储表,计算为虹膜表达式或计算为子例程。因此,任何计算都可以表示为虹膜函数模式和数据均匀性:使用数据模型的原语对元数据进行建模和操作。同样,以与用户功能相同的方式调用系统功能(创建类型,删除对象等)。因此,用户只需要学习一个界面。集合处理:Iris支持一次性设置处理,以高效地检索和更新对象集合。

为了评估Iris原型的有用性,进行了一个项目,将大型关系应用程序转换为Iris [2]。关系系统包含近200个关系和2500个属性。当转录为虹膜时,架构大小减少了三分之一以上。大量减少有两个原因。首先,在关系模式中,许多属性只是连接所需的外键。在虹膜模式中,通过类型层次结构的函数继承消除了对许多这些外键的需求。模式减少的第二个原因是复合键被对象引用所替代。这样就可以将一个关系中的多个属性替换为单个标识符

要注意的是,使用Iris架构更易于阅读和开发应用程序。对于熟悉SQL的用户来说,Iris OSQL(对象SQL)语言是一种相当自然的界面。在关系系统中,必须通过比较键来表示功能组合和功能继承以及大量联接的使用。 Iris的功能导向鼓励代码共享,因为简化了派生和共享新功能的过程。 最后,由于使用面向对象的数据库管理系统的工具和方法很少,因此,Iris模式易于演化的能力对于迭代地完善Iris模式非常有价值。此外,“虹膜图形编辑器”是一个有用的工具,可用于以图形方式显示架构以及浏览功能定义和实例。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号