图灵奖得主的得奖论文 大型的共享数据银行的数据的一个关系模型

大型的共享数据银行的数据的一个关系模型

E.F.CODD    1970年
加利福尼亚的IBM的研究实验室

大型数据银行的未来的用户必须脱离这种状态。这种状态是作为用户
不得不知道数据是如何在机器中被组织的(即数据在机器内部的表示)。
一个提示性的服务,它能提供这样的信息,这不是一个令人满意的解决
方案。当数据的内部表示被改变时,甚至当数据的外部表示的一些方面
被改变时,终端用户的行动和绝大部分的应用程序,应该保持着不被
影响到。由于在查询,更新,报告流量的方面的变化和存储信息的
类型方面的自然增长的结果,在数据表示的修改方面是经常有需求的。

已存在的,非推论性的,格式化的数据系统给用户提供了树形结构的文件
或者是数据的稍微更加通用化一点的网络模型。在第一部分中,讨论这些
模型的不足之处。介绍了一个模型,它基于n元关系,对数据库关系的一个
规范化的形式和一个通用化的数据子语言的概念。在第二部分中,讨论的是
在关系上的特定操作而不是逻辑推理,和这些操作在用户的模型中的冗余性
,一致性的问题中的应用。

关键字和关键词
数据银行,数据库,数据结构,数据组织,数据的层次,数据的网络,
关系,可导性,冗余性,一致性,组合性,联接,检索语言,判断式计算
安全性,数据完整性

1 关系模型和范式
1.1 介绍
这篇文章关注的是初级关系理论在系统上的应用。这个系统提供了对格式化的
数据的大型银行的共享式的读写操作。除了查里德的一篇文章,针对数据系统的
关系的原则性的应用已经成为了可推导的问题回答系统。

相反的是,在这面对的问题是数据独立性的那些问题,应用程序和来自于在
数据类型中增长的终端的行动和在数据表示中的修改 的独立性,还有
数据不一致性的特定类型,甚至在非推导性的系统中,它都被预期成为很严重
的问题。

在第一部分中描述的数据的关系的视角(或者是模型),它似乎在图模型
或者是网络模型的一些方面,表现得更优。这些图或者网络模型存在于
时兴的非推导性的系统中。关系模型提供了一种描述数据的方法,这种方法仅有它的本质性的结构,也就是说对于机器表示的目的,没有任何重叠附加的结构。相应的,它提供了一种高级数据语言的基础,这种数据语言
将提供了在程序这方面与另一方面的机器表示和组织之间的最大的独立性。

关系视图的另一个优势是它形成一个合理的基础,这个基础是在面对关系的可推导性,冗余性,一致性。在第二部分中讨论这些内容。在另一方面,网络模型,已经爆发了大量的混乱,不只是对于关系的推导的连接推导的错误(见第二部分中连接陷阱的解释)

最后,关系视图允许对现存的格式化的数据系统的作用域和逻辑局限提供一个更清晰的解释,和一个单独的系统中的数据的竞争性的表示的相对的优点(从一个逻辑的立场上看)。这个更聪明的角度的例子被列举在这个文章的各个部分。支持这个关系模型的系统的实现没有讨论。

1.2  在现存系统中的数据依赖
在现在已开发的信息系统中的数据描述的表的部分表现出很大的数据独立性的目标的倾向。这样的表促进了存储在一个数据银行中的数据表示的修改特定的特征。然而,数据表示特征的多样性,能被改变,而没有损害到一些应用程序这方面仍然十分有限。进而,用户交互的数据的模型仍然混淆于表示性的属性,特别于相关于数据的集合的表示(与独立性的项相反)数据依赖的三个主要的类型仍然需要被移除:顺序依赖,索引性依赖,存取路径依赖。 在一些系统中,这些依赖没有很清楚地彼此分离。

1.2.1  顺序依赖
在一个数据银行中的数据元素可能被以很多的方式存储,有的不在意顺序,有的仅允许一种顺序,有的允许以几种顺序存在。让我们考虑一下,这些现有的系统,它或要求或允许数据被存储以最少一种方式,这种顺序的方式与指定的硬件的地址顺序密切关联。例如,一个文件的记录关注的部分可能被存储部分系列号的升序中。这样的系统通常允许应用程序假定记录表示的顺序,这个文件与存储顺序相同。这些应用程序利用了一个文件的存储顺序,如果由于某些理由,变得有必要以一个不同的方式替换了顺序,它就不能正确的读取了。类似的情况还有以指针的方式实现的。

作为一个例子指出一个系统是不必要的,因为在市场上所有的知名的信息系统在表示顺序与存储顺序之间做一个清晰的区别都是失败的。为了提供这种独立性,重大的实现问题必须被解决。

1.2.2  索引依赖
在格式化的数据的上下文中,索引通常被认为是数据表示的一个纯面向性能的组件。它趋向于提高查询和修改的响应,同时减慢了插入和删除的响应。从一个信息化的角度上看,一个索引是一个数据表示的冗余组件。如果一个系统使用索引,如果它在一个在数据银行中的活动的修改的模式中的环境中执行得很好,那么创建和删除索引的能力时时都可能是必须的。问题然后就引出了:应用程序和终端的活动能与索引的来与去保持不相关吗?

现存的格式化的数据系统采用了很大范围的不同的方法来索引化。TDMS在所有的属性上无条件地提供索引化。IMS的现在的发布版本给用户提供了选择权,让用户决定每个文件的索引化,或者不索引,或者仅对主键索引。在哪个例子中,用户的应用都没有逻辑上独立于无条件提供的索引的存在性。然而IDS允许文件设计者来选择要被索引化的属性,并且使用附加的链的方式,把索引集成到文件结构中。应用程序要利用这些索引链的性能上的好处,就必须要以名称引用这些链。如果这些链稍后被移除了,这样的应用程序就不能用了。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值