Codd关系模型理论综述

2023-10-28 23:50
文章标签 关系 模型 理论 综述 codd

本文主要是介绍Codd关系模型理论综述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

为什么80%的码农都做不了架构师?>>>   hot3.png

引言:数据库系统从产生到现在经历了几次的变更,起基于的数据模型有网状模型,层次模型,关系模型,面向对象模型。其中关系模型是目前应用最广泛的。Codd对关系模型的发展做出了巨大的贡献。本文主要叙写了codd在关系模型的发展中所做的贡献。

codd原是英国人,1 9 2 3 年8 月1 9 日生于英格兰中部的港口城市波特兰。第二次世界大战爆发以后,年轻的考特应征入伍在皇家空军服役,1 9 4 2 至1 9 4 5 年期间任机长,参与了许多重大空战,为反法西斯战争立下了汗马功劳。二战结束以后,codd在牛津大学学习数学,于1 9 4 8 年取得学士学位以后到美国谋求发展。他先后在美国和加拿大工作,参加了I B M 第一台科学计算机7 0 1 以及第一台大型晶体管计算机 S T R E T C H 的逻辑设计,主持了第一个有多道程序设计能力的操作系统的开发。他自觉硬件知识缺乏,于是在6 0 年代初,到密歇根大学进修计算机与通信专业( 当时他已年近4 0 ) ,并于1 9 6 3 年获得硕士学位, 1 9 6 5 年取得博士学位。这使他的理论基础更加扎实,专业知识更加丰富。加上他在此之前十几年实践经验的积累,终于在1 9 7 0 年迸发出智慧的闪光,为数据库技术开辟了一个新时代。

在数据库技术发展的历史上,1 9 7 0 年是发生伟大转折的一年。这一年的6 月,I B M 圣约瑟研究实验室的高级研究员Edgar Frank CoddCommunications of ACM 上发表了《大型共享数据库数据的关系模型》一文。A C M 后来在1 9 8 3 年把这篇论文列为从 1 9 5 8 年以来的2 5 年中最具里程碑意义的2 5 篇论文之一,因为它首次明确而清晰地为数据库系统提出了一种崭新的模型, 即关系模型。 “关系”( r e l a t i o n ) 是数学中的一个基本概念,由集合中的任意元素所组成的若干有序偶对表示, 用以反映客观事物间的一定关系。如数之间的大小关系、人之间的亲属关系、商品流通中的购销关系等等。在自然界和社会中,关系无处不在; 在计算机科学中, 关系的概念也具有十分重要的意义。计算机的逻辑设计、编译程序设计、算法分析与程序结构、信息检索等,都应用了关系的概念。而用关系的概念来建立数据模型,用以描述、设计与操纵数据库,codd是第一人。

    E. F. Codd完善了数据组织和存取的概念,也就是具体表达了关系型数据库模型,这也是今天在企业中所使用的数据组织的主要方法。由于IBM的数据管理系统广受批评,1970年,在加利福尼亚IBM的圣约瑟研究实验室工作的年轻程序员codd,提出了根据不同数据之间的能够辨别的关系来组织数据的概念。数据将被组织在二维表(行和列)中,一个表中的特殊项目可以与另一个表中的数据产生关系。codd看到了需要减少或除去数据中的冗余,并且要允许数据通过逻辑而不是物理辨别来进行存取。codd关键的想法是通过适当数据的表对数据加以组织,也就是标准化的处理过程。 

关系数据库系统是目前应用最广泛的数据库系统。实际应用中各类关系产品的功能都是有差异的,根据其支持运算的不同,关系系统可分为(最小)关系系统、完备关系系统、全关系系统。1974E.F.codd提出了全关系系统的十二条基本准则,只有遵循这些准则的系统才是全关系系统。以此可作为评价或购买关系产品的标准。

准则0:一个RDBMS必须能完全通过自身的关系能力来管理数据库。这意味着,一个自称为关系型的DBMS必须能在关系这个级别支持数据库的插入、修改和删除。准则0是下面十二条准则的基础。不满足准则0DBMS都不是RDBMS

准则1:信息准则。RDBMS的所有信息都应在逻辑一级用同一个方法----表(Table)中的值显示出来。而且,每个表的表名,表中的列名和域名等,都是用系统内的数据字典表中的值表示的。数据字典本身是一个描述元数据的关系数据库。

准则2:保证访问原则。依靠表名、主码和列名的组合,应保证能够访问关系数据库中的每个数据项值。保证访问原则规定,关系系统不能采用面向机器的寻址法,而必须采用关系系统独有的关联寻址的访问模式.

准则3:空值的系统化处理。空值是"不知道""无意义"的值,它不是一个具体的值(如零、空字符串等)。空值的概念很重要,在全关系DBMS中支持空值,就是要用一个系统化的方式处理空值。

准则4:基于关系模型的动态联机数据字典。数据库的描述在逻辑级上应和一般数据采用相同的表示方法,使得授权用户能使用查询一般数据所用的关系语言来查询数据库的描述信息。本准则不仅使每个用户只需学习一种数据模型,而且授权用户还可方便地扩充字典,使之变成完备、主动的关系数据字典。

准则5:统一的数据子语言准则。一个关系系统可以有几种语言和多种终端使用方法。但必须有一种语言,该语言的语句可以表示为具有严格语法规则的字符串,并能全面地支持以下定义:数据定义、视图定义、数据操作(交互式或程序式)、完整性约束、授权、事务处理功能(事务的开始、提交和退回)。关系方法是高度动态的,处于频繁的运行处理之中。因此,没有必要把说明的功能分为若干种语言来实现。关系数据库是一体化的数据子语言,它使程序员可首先交互地调试数据库语言,调试正确后再嵌入程序中,从而可大大提高程序员的生产效率。

准则6:视图更新准则。所有理论上可更新的视图也应该允许由系统相同更新。"一个视图在理论上是可更新的"指的是,存在一个与时间无关的算法,该算法可无二义性地把对此视图的更新要求转换为对基本表的更新序列。

准则7:高级的插入、修改和删除操作。把一个基本关系或导出关系作为单一的操作对象处理。这不仅适合于数据检索,而且适合于数据的插入和删除。以关系为操作对象不仅简化了用户查询,也为系统进行查询优化提供了很大的余地。该准则对于获得有效的分布式事务处理也是十分重要的,可避免从远程结点传送一条记录就要发出一次请求,实现一次请求传送一个关系,从而节省通信代价。

准则8:数据的物理独立性。无论数据库的数据在存储表示或存取方法上作何变化,应用程序和终端活动都保持逻辑上的不变性。

准则9:数据的逻辑独立性。当对基本关系进行理论上信息不受损害的任何变化时,应用程序和终端活动都保持逻辑上的不变性。

准则10:数据完整的独立性。关系数据库的完整性约束条件必须是用数据子语言定义并存储在数据字典中,而不是在应用程序中定义。除了实体完整性和参照完整性外,具体的关系数据库还可能有反映业务政策和管理规章的完整性约束条件。这些完整性条件都应该能用高级的数据子语言定义,并能存入数据字典,从而,当约束条件变化时,只需改变数据字典中定义的完整性语句,而不会逻辑上影响应用程序和终端活动。

准则11:分布独立性。对于如下两类具体问题:其一,原来的DBMS只管理非分布式数据,现在要引入了分布式数据;其二,原来的DBMS能管理分布式数据,现在要改变原来的数据分布。在这两种情况下,由于RDBMS具有特定的数据子语言,都能使应用程序和终端活动保持逻辑不变性。

准则12:无破坏准则。如果一个关系系统具有一个低级(一次一个记录)语言,该语言不能破坏或绕过完整性准则和用高级关系语言表达的约束条件。以上这十二条准则都以准则0为基础,但仅有准则0是不够的。

目前,虽然还没有一个DBMS产品是全关系型的,但随着人们对数据库技术研究的进一步深入,加上软件运行环境的改变,相信以后一定会出现越来越好的全关系型的DBMS,以满足人们各类应用场合对数据库产品的需求。

1974年,IBMDon ChamberlinRay BoyceCodd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQLStructured Query Language)语言

 由于关系模型既简单、又有坚实的数学基础, 所以一经提出, 立即引起学术界和产业界的广泛重视,从理论与实践两方面对数据库技术产生了强烈的冲击。在关系模型提出之后,以前的基于层次模型和网状模型的数据库产品很快走向衰败以至消亡,一大批商品化关系数据库系统很快被开发出来并迅速占领了市场。其交替速度之快、除旧布新之彻底是软件史上所罕见的。基于7 0 年代后期到8 0 年代初期这一十分引人注目的现象,1 9 8 1 年的图灵奖很自然地授予了这位“关系数据库之父”。在接受图灵奖时, 他做了题为“关系数据库:提高生产率的实际基础”的演说。

    1976IBM研究人员Codd博士发表了一篇里程碑的论文 "R系统:数据库关系理论",介绍了关系数据库理论和查询语言SQL, Ellison非常仔细地阅读了这篇文章,被其内容震惊,这是第一次有人用全面一致的方案管理数据信息。作者Codd几乎在近十年前就发表了关系数据库理论,并在IBM研究机构开发原型,这个项目就是R系统,存取数据表的语言就是SQL,文章详细描述了他十年的研究成果和如何实现的方法,Ellison 看完后,敏锐意识到在这个研究基础上可以开发商用软件系统。那时大多数人认为关系数据库不会有商业价值,因为速度太慢,不可能满足处理大规模数据或者大量用户存取数据,关系数据库理论上很漂亮而且易于使用,但不足就是太简单实现速度太慢。

1990年,他编写出版了专著《数据库管理的关系模型:第二版》, 全面总结了他几十年的理论探索和实践经验。

SQL 的祖宗是 E.F. Codd 的关系模型,但是 SQL 作为语言,一直到1992年 才形成真正的国际标准(还是草案),当时称为 SQL2,但是人们常称为 SQL92。而在那之前,所以查询语言都是由不同的数据库管理系统 自己实现的。

1993年关系数据库之父Codd年提出OLAP技术联机分析处理(OLAP)的概念,当时,Codd认为联机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此Codd提出了多维数据库和多维分析的概念,即OLAP

虽然新的模型不断提出,但我们有理由相信,codd为人类数据库的发展所做出的伟大贡献将永载史册不会被人们所忘记,他的研究为后人在这个领域的探索和发展提供了很好的路线!

转载于:https://my.oschina.net/psuyun/blog/361926

这篇关于Codd关系模型理论综述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/296826

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题是由安全生产模拟考试一点通提供,流动式起重机司机证模拟考试题库是根据流动式起重机司机最新版教材,流动式起重机司机大纲整理而成(含2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题参考答案和部分工种参考解析),掌握本资料和学校方法,考试容易。流动式起重机司机考试技

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

AI Toolkit + H100 GPU,一小时内微调最新热门文生图模型 FLUX

上个月,FLUX 席卷了互联网,这并非没有原因。他们声称优于 DALLE 3、Ideogram 和 Stable Diffusion 3 等模型,而这一点已被证明是有依据的。随着越来越多的流行图像生成工具(如 Stable Diffusion Web UI Forge 和 ComyUI)开始支持这些模型,FLUX 在 Stable Diffusion 领域的扩展将会持续下去。 自 FLU