《计算思维导论》笔记:《第10章 数据化思维-数据聚集与管理》计算思维第17讲-从表的管理看数据库

《大学计算机—计算思维导论》(战德臣 哈尔滨工业大学)
《计算思维第17讲-从表的管理看数据库----结构化与非结构化数据管理》

一、引言

今天我们从表的管理看数据库,给大家讲一下结构化与非结构化数据管理的思维。

在这里插入图片描述

二、为什么需要数据库–工作方式的转变

信息社会的工作方式

现在的社会,已经逐渐由传统的以纸张为主要交流媒介,转化为以【计算机 + 信息 + 数据】为主要交流媒介的工作方式。

现在是信息社会,信息社会实际上离不开数据库,也离不开互联网。

在这里插入图片描述

扩展(AI问答)

为什么需要数据库 - 工作方式的转变,请展开介绍一下

数据库的引入和普及是信息技术发展过程中的一个重要里程碑,它的工作方式与传统的文件存储系统相比发生了显著转变,这种转变主要基于以下几个关键原因:

  1. 数据整合与集中管理

    • 在没有数据库的时代,应用程序通常直接将数据保存在文件中,这种方式会导致数据冗余、不一致性和难以维护。数据库系统提供了一个集中的存储位置,所有相关的应用程序都可以通过数据库管理系统(DBMS)访问共享的数据,从而确保了数据的一致性。
  2. 数据结构化与标准化

    • 数据库采用结构化的方式来组织和存储数据,支持定义数据模式和关系。这使得数据能够以表格的形式进行逻辑关联,通过预定义的表结构来保证数据格式的规范性,比如使用关系型数据库时的数据表和字段。
  3. 数据安全性与完整性保障

    • DBMS提供了复杂的权限管理和事务处理机制,可以确保数据的安全性和完整性。例如,通过对用户授权控制数据访问权限,并通过事务处理确保多用户环境下数据操作的原子性、一致性、隔离性和持久性(ACID特性)。
  4. 高效检索与查询能力

    • 数据库支持SQL等高级查询语言,允许用户快速检索和分析大量数据,而无需了解底层物理存储细节。索引、查询优化器等功能大大提升了数据检索速度,满足了企业日益增长的数据处理需求。
  5. 可伸缩性与高可用性

    • 随着技术的发展,现代数据库还实现了水平扩展和垂直扩展的能力,如分布式数据库架构可以跨多个服务器节点分散负载,实现高并发读写及海量数据存储。同时,通过主从复制、集群、镜像、备份恢复等技术提高服务可用性和容灾能力。
  6. 事务处理与数据分析并重

    • 不仅支持传统事务处理应用,还能够应对大数据分析的需求,通过实时分析或批量处理引擎,实现对业务数据的深度洞察。
  7. 自动化运维与监控

    • 数据库管理系统包含了丰富的工具和功能,用于自动化日常运维任务,如自动备份、性能监控、空间管理、日志记录等,减轻了管理员的负担,提高了整体运维效率。

因此,数据库不仅仅是存储数据的容器,更是一种数据管理的方法论和技术体系,它的出现极大地促进了数据驱动决策的实施,增强了信息系统在复杂环境下的稳定性和可靠性。随着云原生、微服务、AI等新技术的应用,数据库的工作方式还在持续演进,以适应不断变化的IT架构和服务场景。

三、什么是数据库

基本形式的数据:“表”和“关系”

数据库起源于规范化“表(Table)”的处理

Table: 以按行按列形式组织及展现的数据。

在这里插入图片描述

结构化数据库:关系数据库

  • 一个表聚集了具有相同结构类型的若干个对象, 表与表间也存在着相互关联
  • 一行数据反映了某一对象的相关内容, 一列数据具有相同的数据类型
  • 这种“表”形式的数据,被认为是结构化数据
  • 用数学定义的无重复元组的【表】又被称为【关系】,其数据库又被称为关系数据库

四、什么是数据库系统

数据库系统的构成

数据库系统(工作环境)

  • 数据库(DB): Database
  • 数据库管理系统(DBMS): Database Management System
  • 数据库应用(DBAP): DataBase Application
  • 数据库管理员(DBA): DataBase Administrator
  • 计算机基本系统

五、怎样操纵数据库

表之间有哪些运算

第1种运算:【并】运算

第2种运算:【差】运算

第3种运算:【积】运算

第4种运算:【选择】运算

第5种运算:【投影】运算

详情请参考:《计算思维导论》笔记:10.4 关系模型-关系运算

综合运用关系运算表达复杂的查询

在这里插入图片描述

六、结构化数据库操纵语言

由关系模型到结构化数据库语言SQL

在这里插入图片描述

七、结构化数据库管理系统的实现思路

关系运算 --> 数据库语言 -->关系数据库管理系统

在这里插入图片描述

八、由结构化数据库管理到非结构化数据管理

关系数据库 --> 键值对数据库 --> 文档数据库

在这里插入图片描述

其他非结构化数据库:图像数据库与图数据库

在这里插入图片描述

九、小结

在这里插入图片描述

梳理 五六七 章节的关系:
第五章,介绍如何操纵数据库,也就是关系运算;
第六章,介绍如何表达关系运算,也就是SQL;
第七章,介绍如何实现关系运算,也就是数据库管理系统的实现思路;

十、概念梳理(AI问答)

字段,是什么意思?

字段,在计算机科学和数据库领域中,是指数据库表、数据结构或类中的一个单独单元,它用于存储特定类型的数据。每个字段代表了记录(行)的一个属性或特性,并且具有自己的名称(字段名)和数据类型(如整数、字符串、日期等)。在数据库表中,每一列就是一个字段,它为表中的每一条记录提供了一个特定信息的存储位置。

例如,在一个学生信息表中,可能有如下字段:

  • 学生ID(整数)
  • 姓名(字符串)
  • 年龄(整数)
  • 入学日期(日期)

这些字段组合起来描述了每条记录(即每个学生)的所有相关特征。

在面向对象编程中,字段也被称作成员变量,是类或对象内部的状态表示,它们与类的方法一起构成了类的完整定义。

为什么叫“字段”呢,有什么原因吗?

“字段”这个术语在计算机领域中来源于它的直观含义和早期数据处理的模拟。在纸质文档或者表格设计时,我们会把一张表单划分为不同的区域或列,每个区域用于填写特定类型的信息,这些区域就好像是文档中的“田地”,每一个“田地”内种植一种信息类型的“作物”。

当电子数据处理系统开始发展时,尤其是数据库管理系统的设计,借鉴了这种实体表格的概念,将数据存储单元比作是可以在其中存放数据的独立空间,就像物理世界里的不同“字段”。因此,“字段”一词被借用过来,特指数据库表中具有特定名称、数据类型和长度的列,用于描述记录的属性或特征。这个名字既形象又简洁,易于理解,故而沿用至今。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/638295.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习(二)之监督学习

前言: 上一节大概讲解了几种学习方式,下面几张就具体来讲讲监督学习的几种算法。 以下示例中和都是权重的意思!!! 注:本文如有错误之处,还请读者指出,欢迎评论区探讨! 1…

Matlab进阶绘图第51期—带填充等高线的三维特征渲染散点图

带填充等高线的三维特征渲染散点图是填充等高线图与特征渲染三维散点图的组合。 其中,填充等高线图与特征渲染的三维散点图的颜色用于表示同一个特征。 由于填充等高线图无遮挡但不直观,特征渲染的三维散点图直观但有遮挡,而将二者组合&…

Python | Leetcode Python题解之第44题通配符匹配

题目: 题解: class Solution:def isMatch(self, s: str, p: str) -> bool:def allStars(st: str, left: int, right: int) -> bool:return all(st[i] * for i in range(left, right))def charMatch(u: str, v: str) -> bool:return u v or v…

【Hadoop】- MapReduce YARN 初体验[9]

目录 提交MapReduce程序至YARN运行 1、提交wordcount示例程序 1.1、先准备words.txt文件上传到hdfs,文件内容如下: 1.2、在hdfs中创建两个文件夹,分别为/input、/output 1.3、将创建好的words.txt文件上传到hdfs中/input 1.4、提交MapR…

XYK欺诈检测简介

1. 背景 用30w左右的信用卡欺诈数据集测试下IF,看看每个参数的选择对最后结果的影响。信用卡欺诈是指故意使用伪造、作废的信用卡,冒用他人的信用卡骗取财物,或用本人信用卡进行恶意透支的行为,信用卡欺诈形式分为3种:…

开源协议的对比和商业上的安全使用

开源协议的对比和商业上的安全使用 开源组件是:“任何人都可以自由使用、更改和共享(以修改或未修改的形式)的软件”。当今企业依靠开源来加速开发、降低成本和推动创新。对开放源码的糟糕管理可能会使组织面临安全、法律和操作风险。 使用…

Python-VBA函数之旅-hash函数

目录 一、hash函数的定义: 二、hash函数的工作方式: ​三、hash函数的优缺点: 四、hash函数的常见应用场景: 1、hash函数: 1-1、Python: 1-2、VBA: 2、推荐阅读: 个人主页&…

VTC视频时序控制器原理以及Verilog实现

文章目录 一、前言二、视频时序控制原理三、Verilog实现3.1 代码3.2 仿真以及分析 一、前言 VTC(Video Timing Controller)是一种用于产生视频时序的控制器,在FPGA图像领域经常用到。Xilinx Vivado 也有专门用于生成视频时序的 IP&#xff0c…

【GlobalMapper精品教程】076:基于高程和影像数据创建电子沙盘(真实三维地形)

影像与数字高程模型叠加,可以构建三维真是地形。本文讲解在Globalmapper中基于高程和影像数据创建电子沙盘(真实三维地形)。 文章目录 一、加载数据二、创建三维网格三、三维叠加显示一、加载数据 本实验的数据(配套实验数据资料包中的data076.rar,订阅专栏,获取全文及数…

Java -- (part16)

一.多线程基础知识 1.进程:在内存中执行的应用程序 2.线程:进程中的一个最小的执行单元 3.并行:在同一时刻,有多个指令在多个CPU上同时执行 4.并发:在同一时刻,有多个指令在单个CPU上交替执行 5.CPU调度 a.分时调度 b.抢占式调度:Java程序 6.主线程:CPU和内存之间开辟的…

MyBatis 核心配置讲解(上)

大家好,我是王有志,一个分享硬核 Java 技术的互金摸鱼侠。 前两篇的文章中我们分别介绍了 MyBatis 和 MyBaits 的应用组成,到这里基础篇的内容就结束了。 从今天开始,我们正式进入 MyBatis 学习的第二阶段:MyBatis 的…

真实世界的密码学(四)

原文:annas-archive.org/md5/655c944001312f47533514408a1a919a 译者:飞龙 协议:CC BY-NC-SA 4.0 第十六章:加密何时何地失败 本章涵盖 使用加密时可能遇到的一般问题 遵循烘烤良好的加密的要点 加密从业者的危险和责任 问候…