数据库原理与统计笔记-1.1数据系统概述

2024-01-10 12:48

本文主要是介绍数据库原理与统计笔记-1.1数据系统概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、数据库的4个基本概念
    • [1]. 数据(data)
    • [2]. 数据库(DataBase ,DB)
    • [3]. 数据库管理系统(DataBase Management System,DBMS)
    • [4]. 数据库系统(DataBase System,DBS)
  • 二、数据管理技术的产生和发展
    • [1]. 人工管理阶段
    • [2]. 文件系统阶段
    • [3]. 数据库系统阶段
  • 三、数据库系统的特点
    • [1]. 数据结构化
    • [2]. 数据的共享性高、冗余度低且易扩充
    • [3]. 数据独立性高
    • [4]. 数据由数据库管理系统统一管理和控制
    • [5]. 总结

前言

有关数据库原理与统计的笔记,内容为书本的原文概括。

一、数据库的4个基本概念

[1]. 数据(data)

数据是数据库中存储的基本对象,描述事物的符号记录称为数据。

[2]. 数据库(DataBase ,DB)

数据库是存放数据的仓库,是长期储存在计算机内、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库的数据有永久存储、有组织和可共享三个基本特点。

[3]. 数据库管理系统(DataBase Management System,DBMS)

数据库管理系统可以科学地组织和存储数据,高效地获取和维护数据。
数据库管理系统是位于用户和操作系统之间的一层数据管理软件,和操作系统一样是计算机的基础软件。

主要功能介绍
数据定义功能数据库管理系统提供数据定义语言DDL,用户通过它可以方便地对数据库中的数据对象的组成与结构进行定义。
数据组织、存储和管理数据库管理系统需要分类组织、存储和管理各种数据。需要确定相应的文件结构和存储方式在存储级上组织这些数据,实现数据之间的联系。其基本的目标是提高存储空间利用率和方便存储,提供多种存取方法来提高存取效率。
数据操纵功能提供数据操纵语言DML,用户可以使用它操纵数据,实现对数据库的基本操作。
数据库的事务管理和运行管理数据库在建立、运用和维护时由数据库管理系统统一管理和控制,以保证事务的正确运行,保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
数据库的建立和维护功能数据库的建立和维护功能包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。这些功能通常是由一些实用程序或管理工具完成的。
其他功能包括数据库管理系统与网络中其他软件系统的通信功能,一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能,异构数据库之间的互访和互操作功能等。

[4]. 数据库系统(DataBase System,DBS)

数据库系统是由数据库、数据库管理系统、应用程序和数据库管理员组成的存储、管理、处理和维护数据的系统。

在这里插入图片描述

二、数据管理技术的产生和发展

数据管理是指对数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心问题。
数据的处理是指对各种数据进行收集、存储、加工和传播的一系列活动的总和。

数据库管理技术经历了人工管理、文件系统、数据库系统三个阶段。

背景人工管理阶段文件系统阶段数据库系统阶段
应用背景科学计算科学计算、数据管理大规模数据管理
硬件背景无直接存取存储设备磁盘、磁鼓大容量磁盘、磁盘阵列
软件背景没有操作系统有文件系统有数据库管理系统
处理方式批处理联机实时处理、批处理联机实时处理、分布处理、批处理
特点人工管理阶段文件系统阶段数据库系统阶段
数据的管理者用户(程序员)文件系统数据库管理系统
数据面向的对象某一应用程序某一应用现实世界
数据的共享程度无共享,冗余度极大共享性差,冗余度大共享性高,冗余度小
数据的独立性不独立,完全依赖于程序独立性差具有高度的物理独立性和一定的逻辑独立性
数据的结构化无结构记录内有结构、整体无结构整体结构化,用数据模型描述
数据控制能力应用程序自己控制应用程序自己控制由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力

[1]. 人工管理阶段

20世纪50年代中期以前,计算机主要用于科学计算。
硬件状况:外村只有纸带、卡片、磁带,没有磁盘等直接存取的存储设备。
软件状况:没有操作系统,没有管理数据的专门软件,数据处理方式是批处理。

特点介绍
数据不保存当时计算机主要用于科学计算,一般不需要将数据长期保存,只是在计算某一课题时将数据输入,用完就撤走。
应用程序管理数据数据需要由应用程序自己设计、说明和管理,没有响应的软件系统负责数据的管理工作。应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构,包括存储结构、存取方法、输入方式等。因此程序员负担很重
数据不共享数据是面向应用程序的,一组数据只能对应一个程序。当多个应用程序涉及某些相同的数据时必须各自定义,无法互相利用、互相参照,因此程序之间有大量的冗余数据。
数据不具有独立性数据的逻辑结构或物理结构发生变化后,必须对应用程序做相应的修改,数据完全依赖于应用程序,称之为数据缺乏独立性,加重了程序员的负担。

[2]. 文件系统阶段

20世纪40年代后期到60年代后期,硬件方面已有磁盘、磁鼓等直接存取存储设备;软件方面,操作系统中已经有了专门的数据管理软件,一般称为文件系统;处理方式上不仅有了批处理,而且能够联机实时处理。

特点介绍
数据可以长期保存由于计算机大量用于数据处理,数据需要长期保留在外存上反复进行查询、修改、插入和删除等操作。
由文件系统管理数据由专门的软件即文件系统进行数据管理,文件系统把数据组织成相互独立的数据文件,利用“文件名访问,按记录进行存取”的管理技术,提供了对文件进行打开与关闭、对记录读取和写入等存取方式。
缺点介绍
数据共享性差,冗余度大在文件系统中,一个文件基本上对应一个应用程序,即文件仍然是面向应用的。当不同的应用程序具有部分相同的数据时,也必须建立各自的文件,而不能共享相同的数据,因此数据的冗余度大,浪费存储空间。同时由于相同数据的重复存储、各自管理,容易造成数据的不一致性,给数据的修改和维护带来了困难。
数据独立性差文件系统的文件是为某一特定应用服务的,文件的逻辑结构是针对具体的应用来设计和优化的,因此想要对文件中的数据再增加一些新的应用会很困难。而且当数据的逻辑结构改变时,应用程序中文件结构的定义必须修改,应用程序中对数据的使用也要改变,因此数据依赖于应用于程序,缺乏独立性。可见文件系统仍然是一个不具有弹性的无整体结构的数据集合,即文件之间是孤立的,不能反映现实世界事物之间的内在联系

[3]. 数据库系统阶段

20世纪60年代后期,为解决多用户、多应用共享数据的需求,使数据为尽可能多的应用服务,数据库技术便应运而生,出现了统一管理数据的专门软件系统——数据库管理系统。从文件系统到数据库系统标志着数据管理技术的飞跃。

三、数据库系统的特点

[1]. 数据结构化

数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
在文件系统中,文件中的记录内部具有结构,但是记录的结构和记录之间的联系被固化在程序中,需要由程序员加以维护。这种工作模式既加重了程序员的负担,又不利于结构的变动。
整体结构化是指数据库中的数据不再仅仅针对某一个应用,而是面向整个组织或企业;不仅数据内部是结构化的,数据之间是具有联系的。不仅要考虑某个应用的数据结构还要考虑整个组织的数据结构。
在数据库系统中,记录的结构和记录之间的联系由数据库管理系统维护,从而减轻了程序员的工作量,提高了工作效率。
在数据库系统中,不仅数据是整体结构化的,而且存取数据的方式也很灵活,可以存取数据库中的某一个或一组数据项、一个记录或一组记录;而在文件系统中,数据的存取单位是记录,粒度不能细到数据项。

[2]. 数据的共享性高、冗余度低且易扩充

数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,因此数据可以被多个用户、多个应用共享使用。数据共享可以大大减少数据冗余,节约存储空间。数据共享还能避免数据之间的不相容性与不一致性。
所谓数据的不一致性是指同一数据不同副本的值不一样。在数据库中数据共享减少了由于数据冗余造成的不一致现象。
由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这结构化的数据就使得数据库系统弹性大,已于扩充,可以使用各种用户的要求。可以选取整体数据的各种子集用于不同的应用系统,当应用需求改变或增加时,只要重新选取不同的子集或加上一部分数据便可以满足新的需求。

[3]. 数据独立性高

数据独立性是借助数据库管理数据的一个显著优点,包括数据的物理独立性和逻辑独立性
物理独立性:用户的应用程序与数据库中数据的物理存储是相互独立的。用户程序不需要了解数据在数据库中怎样存储是由数据库管理系统管理的,应用程序仅需要处理的只是数据的逻辑结构,这样当数据的物理存储改变时应用程序不用改变。
逻辑独立性:用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变时用户程序也可以不变。
数据与程序的独立把数据的定义从程序中分离出去,加上存取数据的方法又由数据库管理系统负责提供,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。

[4]. 数据由数据库管理系统统一管理和控制

数据库的共享性将会带来数据库的安全隐患,而数据库的共享是并发的共享。多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中同一个数据,这又会带来不同用户间相互干扰的隐患,数据库中数据的正确与一致也必须得到保障,所以数据库管理系统需要提供相应的数据控制功能。

功能介绍
数据的安全性保护数据的安全性是指保护数据以防止不合法使用造成的数据泄密和破坏。每个用户只能按规定对某些数据以某些方式进行使用和处理。
数据的完整性检查数据的完整性指数据的正确性、有效性和相容性。完整性检查将数据控制在有效的范围内,并保证数据之间满足一定的关系。
并发控制当多个用户的并发进程同时存取、修改数据库时,可能会发生相互干扰而得到错误的结果或使得数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协调。
数据库恢复计算机系统的硬件故障、软件故障、操作员的失误以及故意破坏也会影响数据库中数据的正确性,甚至造成数据库部分或全部数据的丢失。数据库管理系统必须具有将数据库从错误状态恢复到某一已知的正确状态的功能,这就是数据库的恢复功能。

[5]. 总结

数据库是长期存储在计算机内有组织、大量、共享的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。数据库管理系统在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库进行恢复。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。这样既便于数据的集中管理,又能简化应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。

这篇关于数据库原理与统计笔记-1.1数据系统概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

hdu1496(用hash思想统计数目)

作为一个刚学hash的孩子,感觉这道题目很不错,灵活的运用的数组的下标。 解题步骤:如果用常规方法解,那么时间复杂度为O(n^4),肯定会超时,然后参考了网上的解题方法,将等式分成两个部分,a*x1^2+b*x2^2和c*x3^2+d*x4^2, 各自作为数组的下标,如果两部分相加为0,则满足等式; 代码如下: #include<iostream>#include<algorithm

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和

usaco 1.1 Broken Necklace(DP)

直接上代码 接触的第一道dp ps.大概的思路就是 先从左往右用一个数组在每个点记下蓝或黑的个数 再从右到左算一遍 最后取出最大的即可 核心语句在于: 如果 str[i] = 'r'  ,   rl[i]=rl[i-1]+1, bl[i]=0 如果 str[i] = 'b' ,  bl[i]=bl[i-1]+1, rl[i]=0 如果 str[i] = 'w',  bl[i]=b

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

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

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