我是靠谱客的博主 丰富香氛,最近开发中收集的这篇文章主要介绍数据库原理学习笔记——引言,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    最近开始学习数据库系统原理这门课程,既然是数据库系统原理,顾名思义,就是对数据进行管理操作的知识,那么什么是数据呢?

         数据,我个人的直接理解就是 一系列有意义的符号,作用就是传递信息。后来我查阅一些资料,感觉以前的理解只是狭义上的理解。广义的理解,数据种类很多,文本(text)、图形(graph)、图像(Image)、音频(Audio)、视频(Video)等等。数据有多种表现形式,但凡是能描述现实世界的东西,就是数据。数据都可以数字化后存入计算机。

        学习数据库相关的知识就是为了更高效的管理数据(数据管理是指对数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心。),那么数据的管理技术发展是怎样的呢?

        在没有计算机的时候,人们对于数据的管理究竟是怎样的我不清楚。我在没有接触计算机的时候,学习知识时候做笔记,不同的科目用不同的笔记本,重要的地方就折页(检索方便)。即:我学习到的知识(信息)就通过文字(数据)存储在了我不同的(分类)笔记本上。当然,现在的数据管理是使用计算机。继续纠缠下去没有计算机时候怎么管理数据也没有什么意义。随着计算机技术的发展,数据管理技术大致可分为以下三个阶段。(引用网络资料)

  一、人工管理阶段。这一阶段(20世纪50年代中期以前),计算机主要用于科学计算。外部存储器只有磁带、卡片和纸带等还没有磁盘等直接存取存储设备。软件只有汇编语言,尚无数据管理方面的软件。数据处理方式基本是批处理。这个阶段有如下几个特点:

1.计算机系统不提供对用户数据的管理功能。用户编制程序时,必须全面考虑好相关的数据,包括数据的定义、存储结构以及存取方法等。程序和数据是一个不可分割的整体。数据脱离了程序就无任何存在的价值,数据无独立性。

2.数据不能共享。不同的程序均有各自的数据,这些数据对不同的程序通常是不相同的,不可共享;即使不同的程序使用了相同的一组数据,这些数据也不能共享,程序中仍然需要各自加人这组数据,谁也不能省略。基于这种数据的不可共享性,必然导致程序与程序之间存在大量的重复数据,浪费了存储空间。

3.不单独保存数据。基于数据与程序是一个整体,数据只为本程序所使用,数据只有与相应的程序一起保存才有价值,否则就毫无用处。所以,所有程序的数据均不单独保存。

   二、文件系统阶段。在这一阶段(20世纪50年代后期至60年代中期)计算机不仅用于科学计算,还利用在信息管理方面。随着数据量的增加,数据的存储、检索和维护问题成为紧迫的需要,数据结构和数据管理技术迅速发展起来。此时,外部存储器已有磁盘、磁鼓等直接存取的存储设备。软件领域出现了操作系统和高级软件。操作系统中的文件系统是专门管理外存的数据管理软件,文件是操作系统管理的重要资源之一。数据处理方式有批处理,也有联机实时处理。这个阶段有如下几个特点:

1.数据以“文件”形式可长期保存在外部存储器的磁盘上。由于计算机的应用转向信息管理,因此对文件要进行大量的查询、修改和插人等操作。

2.数据的逻辑结构与物理结构有了区别,但比较简单。程序与数据之间具有“设备独立性”,即程序只需用文件名就可与数据打交道,不必关心数据的物理位置。由操作系统的文件系统提供存取方法(读/写)。

3.文件组织已多样化。有索引文件、链接文件和直接存取文件等。但文件之间相互独立、缺乏联系。数据之间的联系要通过程序去构造。

4.数据不再属于某个特定的程序,可以重复使用,即数据面向应用。但是文件结构的设计仍然是基于特定的用途,程序基于特定的物理结构和存取方法,因此程序与数据结构之间的依赖关系并未根本改变。

5.对数据的操作以记录为单位。这是由于文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插人、删除、修改等所有操作,都要用程序来实现。

随着数据管理规模的扩大,数据量急剧增加,文件系统显露出一些缺陷:

1.数据冗余。由于文件之间缺乏联系,造成每个应用程序都有对应的文件,有可能同样的数据在多个文件中重复存储。

2.不一致性。这往往是由数据冗余造成的,在进行更新操作时,稍不谨慎,就可能使同样的数据在不同的文件中不一样。

3.数据联系弱。这是由于文件之间相互独立,缺乏联系造成的。

文件系统阶段是数据管理技术发展中的一个重要阶段。在这一阶段中,得到充分发展的数据结构和算法丰富了计算机科学,为数据管理技术的进一步发展打下了基础,现在仍是计算机软件科学的重要基础。

三、数据系统阶段

这一阶段(60年代后期),数据管理技术进入数据库系统阶段。数据库系统克服了文件系统的缺陷,提供了对数据更高级、更有效的管理。这个阶段的程序和数据的联系通过数据库管理系统来实现(DBMS),见图1.1.14所示。


概括起来,数据库系统阶段的数据管理具有以下特点:

1.采用数据模型表示复杂的数据结构。数据模型不仅描述数据本身的特征,还要描述数据之间的联系,这种联系通过存取路径实现。通过所有存取路径表示自 然的数据联系是数据库与传统文件的根本区别。这样,数据不再面向特定的某个或多个应用,而是面向整个应用系统。数据冗余明显减少,实现了数据共享。

2.有较高的数据独立性。数据的逻辑结构与物理结构之间的差别可以很大。用户以简单的逻辑结构操作数据而无需考虑数据的物理结构。数据库的结构分成用 户的局部逻辑结构、数据库的整体逻辑结构和物理结构三级。用户(应用程序或终端用户)的数据和外存中的数据之间转换由数据库管理系统实现。

3.数据库系统为用户提供了方便的用户接口。用户可以使用查询语言或终端命令操作数据库,也可以用程序方式(如用C一类高级语言和数据库语言联合编制的程序)操作数据库。

4.数据库系统提供了数据控制功能。例如,1。数据库的并发控制:对程序的并发操作加以控制,防止数据库被破坏,杜绝提供给用户不正确的数据;2。数 据库的恢复:在数据库被破坏或数据不可靠时,系统有能力把数据库恢复到最近某个正确状态;3。数据完整性:保证数据库中数据始终是正确的;4。数据安全 性:保证数据的安全,防止数据的丢失、破坏。

5.增加了系统的灵活性。对数据的操作不一定以记录为单位,可以以数据项为单位。

      了解了一下数据管理的发展,那么我们现阶段所处的是数据库系统阶段,那么就得先了解一下什么是数据库。

      数据库(database(DB)),个人简单理解为:一些相关数据按照一定格式存放在计算机上的数据的集合。

     那么通过什么手段来存储和检索等这些数据呢,这就要数据库管理系统(DatabaseManagement System)大展身手了。

      数据库管理系统(Database ManagementSystem):一个软件而已,只不过这个软件的主要作用就是用来管理数据库。一些特点什么的不再细说。

     那么好了,谁来直接操纵我们的数据库管理系统呢。当然,不能随便在大街上随便拉个人就让他来管理,这个人必须有着丰富的知识*****(省略一万字赞美),那么这人就是DBA。哈哈

     这下好了,数据库也有了,数据库管理系统也有了,数据库管理员也有了,那么这就构成了数据库系统(Database System)DBS。其实DBS包含的范围很广,记得我在学习的时候曾看到过这样的描述,说说DBS包含了DB、DBA、OS等。引用《数据库系统概论》上的:数据库系统是一些相互关联的数据以及一组使得用户可以访问和修改这些数据的程序的集合。我个人对于究竟什么是数据库系统也是很混乱,不知道该怎么描述。看张图吧。


      有了数据库系统,那么数据库系统的应用有哪些呢?其实应用非常之广泛,下面简单提一下。

数据库很重要的一个目的就是给用户提供一个抽象视图。即:系统隐藏关于数据和存储的某些细节。

为了高效检索数据,就必须使用复杂的数据结构表示数据,但是这不爽了。并非人人专业学习过计算机相关知识,那么就需要如下图所示几个层次的数据抽象。数据抽象的目的就是对于用户屏蔽复杂性。个层保持独立性。

 

下面再来谈谈实例(instance)和模式(schema)。

其实实例就是在特定时刻存储在数据库找中的信息的集合。而数据库的总体设计称为模式。

那么根据上面的不同的抽象层次,面对不同的抽象层次,与之也有对应的模式。

1.物理模式————>物理层

2.逻辑模式————>逻辑层

3.子模式    ————>视图层

 

 

最后

以上就是丰富香氛为你收集整理的数据库原理学习笔记——引言的全部内容,希望文章能够帮你解决数据库原理学习笔记——引言所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部