高级数据库系统 复习提纲

第一章 数据库技术的回顾与发展 

简述三代数据库的发展历史及其对应特点:

新型数据库在“数据模型”上的创新:

简述数据库和什么相关技术结合,产生了什么新型数据库?

1. 数据库和并行处理技术结合,产生“并行数据库”,通过多处理机并行运行,提示系统整体性能;

2. 数据库和分布式系统结合,产生“分布式数据库”,将数据存储在多台主机上,通过网络协调来共同提供数据服务;

3. 数据库和人工智能技术结合,产生“知识库系统、主动数据库系统”,提供对紧急情况的及时反应能力;

4. 数据库和多媒体技术结合,产生“多媒体数据库”,管理多媒体信息;

5.数据库和移动通信技术结合,产生“移动数据库”,支持移动式计算环境。

简述数据库应用于什么领域,产生了什么新型数据库?

1. 数据库应用于“工程领域”,产生了“工程数据库”,为工程设计提供各类服务;

2. 数据库应用于“地理信息领域”,产生了“空间数据库”,能够存储、查询、显示空间数据;

3. 数据库应用于“计划、统计领域”,产生了“计划数据库”,用于管理生产计划信息;

4. 数据库应用于“决策支持系统、企业信息系统”,产生了“数据仓库”。

数据库技术的研究热点有哪些?
NOSQL、信息集成、数据流管理、传感器数据库技术、XML数据管理、移动数据管理、微小型数据库 ......

未来数据库的发展趋势主要体现在以下几个方面:
1. 技术方面:
- 融合化与智能化:多模型数据库支持多种数据模型,满足复杂应用的多样化数据处理需求,如关系型、文档型、图数据模型等融合。数据库将深度融合人工智能和机器学习技术,实现智能运维、智能查询优化、智能化的数据管理和分析等功能。
- 分布式与并行化:分布式架构继续深化,数据分散存储在多个节点上,实现高并发访问和高可用性,可水平扩展以适应不断增长的数据规模。并行计算技术在分布式数据库基础上更广泛应用,提高数据处理速度和效率。
- 云化与服务化:云数据库成为主流,可根据业务需求快速弹性伸缩,灵活调整资源配置,降低企业运营成本。数据库即服务(DBaaS)模式发展,企业通过网络访问和使用数据库服务,专注核心业务开发。
 2. 安全隐私方面:
- 数据安全强化:采用多因素认证、访问控制、数据加密、数据脱敏等先进安全技术,保障数据安全性和隐私性,同时严格安全审计和监控。
- 隐私保护发展:隐私计算技术如同态加密、差分隐私、安全多方计算等在数据库中广泛应用,确保在数据共享和使用过程中不泄露原始数据。
3. 应用与行业方面:
- 应用场景拓展:随着物联网、区块链、5G等新兴技术的发展,数据库与这些技术的融合应用将拓展到更多新场景,如物联网中的时序数据库、区块链中的分布式账本数据库等。
- 行业定制化加深:针对不同行业如金融、电信、医疗、能源等的特殊需求,提供更加定制化的解决方案,满足企业个性化管理需求。
4. 新兴技术方面:
- 与大数据深度融合:数据库与大数据技术紧密结合,具备更好的大数据处理能力,可与大数据平台无缝对接,实现数据的高效存储、转换和分析。
- 与区块链结合探索:利用区块链技术的去中心化、不可篡改等特性,构建更加安全、可信的数据存储和管理系统,在金融、供应链等领域有潜在应用。
- 向量数据库兴起:为应对大模型和AI的需求,向量数据库崛起,可结合AI技术进行智能化的数据处理,满足大规模的数据查询需求。

第二章  数据库系统体系结构

DBMS的层次结构:

1. 语言处理层 的功能:接收 DB 语句,转换成内部表示,顺序调用内部的存取模块;

2. 逐步绑定 (bind):将 DML语句 → 可执行的存取动作;

执行前 ---- “预编译” 方法;执行时 ---- “解释” 方法;

“绑定” 时刻 的 权衡:越先绑定,效率高,数据独立性差;

3. “预编译” 方法 失效 —— 重编译;

4. 存取层 的功能:单次单元组的增删查改、提供并维护存取路径、对记录和存取路径的封锁、解锁,对日志文件的登记、读取,其他辅助操作。

oracle 数据库 的 体系结构:

注意:

DBMS层次结构:
应用层:处理各种各样的数据库应用,是RDBMS与用户、应用程序的界面层;
语言翻译处理层:处理数据库语言,如SQL向上提供的数据接口是元组的集合;
数据存取层:介于语言层和数据存储层之间,向上提供单元借接口,向下则以系统缓冲区的存储器接口作为实现基础,处理单个元组,把集合操作化为但记录操作并执行;
数据存储层:处理数据页和系统缓冲区。
Oracle体系结构:
存储结构: 由逻辑存储、物理存储组成
内存结构: 由SGA、PGA组成
进程结构: 由用户进程和Oracle进程(包括服务进程和后台进程)组成
其中内存结构、进程结构合称为一起被称为Oracle实例;存储部分称为数据库。 

第三章  数据库安全性

问题提出:数据共享 → 安全性 → 数据共享并非 “无条件” 共享;

数据安全的基本要求:1. 机密性;2. 完整性;3.可用性;

什么是数据库的安全性?

指保护数据库,以防止不合法使用所造成的数据泄露、更改、损坏。

对数据库安全性产生威胁的因素?

(1) 非授权用户对数据库的恶意存取和破坏 —— 包括用户身份鉴别、存取控制、视图等技术;

(2) 数据库中重要或敏感的数据被泄露 —— 强制存取控制、数据加密存储、加密传输等;

(3) 安全环境的脆弱性 —— 加强计算机系统的安全性保证,建立完善的可信标准

数据库安全现状和未来展望:

数据库安全旨在:保护数据库免受未经授权的访问、修改、破坏,以确保数据的机密性、完整性、可用性。 

1. 威胁和挑战:当前,数据库安全面临多重威胁及挑战;包含:(1) 非授权用户对数据库的恶意存取和破坏;(2) 数据库中重要或敏感的数据被泄露;(3) 数据库安全环境存在脆弱性;通常由于 “权限管理失当、系统存在漏洞、安全意识淡薄” 等原因所导致。数据库安全问题将带来严重后果,因此,加强数据库安全防护已成为刻不容缓的任务。

2. 数据库安全的当前解决方案:

传统网络安全技术主要包括:防火墙、入侵检测系统、漏洞扫描等。这些技术可有效保护数据库系统免受外部攻击。防火墙能够限制外部流量,防止未经授权的访问;入侵检测系统能够实时监控系统行为,发现异常操作;漏洞扫描则能够发现并修复系统漏洞,避免恶意攻击。

现代数据库安全技术主要包括:数据加密、访问控制、审计追踪等。数据加密能够在存储和传输过程中对数据进行加密,确保数据机密性;访问控制能够限制用户对数据的访问权限,防止非法访问;审计追踪能够记录所有数据库操作行为,便于事后追踪和分析。

3. 数据库安全的当前解决方案:

随着技术的不断发展,新兴数据库安全技术也不断涌现。其中,云计算和区块链技术为数据库安全带来了新的解决方案。云计算通过分布式计算和存储方式,实现数据的安全、高效存储和管理;区块链技术则通过去中心化、不可篡改的特性,保证数据的真实性和完整性。

4.  未来,需强化身份认证与访问控制、加强审计与日志监控、应对云数据库的安全挑战、引入AI与机器学习增强安全防护、加强数据备份与灾难恢复能力。

数据库的安全措施:
• Access Control(访问控制) - 明确说明谁可以访问及怎么访问
• Inference Control(推理控制) - 防止通过统计数据推导出机密数据(统计数据库安全性).
• Flow Control(流的控制) - 防止信息向未授权的用户流通
• Cryptographic Control(加密控制) - 保护放在不安全介质中的数据

第四章 数据库调优

为什么要进行数据库调优及数据库调优的目标?

为什么要进行数据库调优?

数据库在处理大量数据和复杂查询时,性能问题可能会逐渐显现。数据库调优可以帮助我们发现和解决性能瓶颈,提高数据库的响应速度和并发能力,保证系统的稳定性和可靠性。

数据库调优的目标?

1. 使应用运行得更快;2. 缩短查询/事务的响应时间;3. 提高事务的整体吞吐量

性能调整的系统方法有哪些?"优化器" 的功能是什么? 

性能调整的系统方法有:  
(1)正确地设计应用程序 
(2)调整应用程序的SQL代码
(3)调整内存 
(4)调整I/O
(5)调整争用和其他问题


"优化器" 的功能是:
(1) SQL 转换
(2) 选择访问路径
(3) 选择连接方法
(4) 选择连接顺序

第五章 数据库恢复 

最后一题

结合自己的研究方向,与数据库技术相结合有哪些应用?

我目前所关注的研究领域主要是"针对时间序列数据的分析及下游应用","时序数据库"是该领域与数据库技术紧密结合的主要应用成果。时序数据在交通、医疗、金融、工业预测性维护等多个实际场景内意义重大,简言之,它是含有唯一、明确时间戳信息的流式数据。针对于时序数据 "1、产生频率快;2.严重依赖于采集时刻;3、测点多信息量巨大" 的特点,时序数据库打破了传统关系型DB难以有效存储及管理时序数据的桎梏,能更有效地处理伴随时间推移的数据摄取、聚合、压缩活动。 
1. 时序数据库的工作原理:
(1) 时序数据的存储:将时序数据存储于"时间序列表"内,包含"时间戳"、"度量值"、"标签"三大字段, 采用"列式存储",提高查询效率;此外,由于时序数据的较高重复相似性,通常采用"压缩技术",以减少存储空间的耗费; 
(2) 时序数据的查询:提供多种针对时序的查询函数,支持"按时间范围查询、按字段查询、聚合查询等";以时间戳为查询索引,实现高效查询; 
(3) 时序数据的分析:时序数据库与可视化工具集成,直观呈现数据伴随时间的走势, 方便用户深入理解时序数据。

2. 时序数据库的应用场景

3. 部分具体的时序数据库:

(1) 关系型时序数据库,如:TimescaleDB,虽支持全面SQL,但保留不必要的事务特性,影响读写效率;行式存储结构相较于列式存储,在写入速度和数据压缩方面表现不好;分布式扩展能力有限;

(2) 基于KV存储的时序数据库,如:OpenTSDB,通过LSM-tree结构和分布式文件系统,实现高效写入和扩展。但存在写放大问题,因合并操作导致重复写入,且标签增多时内存消耗大;

(3) 原生数据库,如:IoTDB,不依赖第三方存储,使用列式存储,提供极致的数据写入、查询、压缩能力,运维部署更加简单。

4. 时序数据库的未来和挑战:

时序数据库正处于高速发展阶段,但是这绝不是终点,时序数据技术还面临各种新的需求和挑战:

在云服务、可视化服务、边缘计算服务等新需求方面,对时序数据库提出了更高、更多元的挑战及目标。

PS:总结规律:每年的第一题将考察 “第一个PPT内的数据库基础常识”,每年的第二题将考察 “安全、调优、恢复” 三大主题之一,最后一道考题通常是:谈论自己研究领域和数据库的结合及应用,所有考题的出题风格都是主观、宏观的,尽可能不考察细节,而考察对知识的整体把握。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++实现图书管理系统(Qt C++ GUI界面版)

前瞻 本项目基于【C】图书管理系统(完整版) 图书管理系统功能概览: 登录,注册学生,老师借书,查看自己当前借书情况,还书。管理员增加书,查看当前借阅情况,查看当前所有借阅人,图书信息。 效果…

【LeetCode: 560. 和为 K 的子数组 + 前缀和 + 哈希表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

微信小程序实现登录注册

文章目录 1. 官方文档教程2. 注册实现3. 登录实现4. 关于作者其它项目视频教程介绍 1. 官方文档教程 https://developers.weixin.qq.com/miniprogram/dev/framework/路由跳转的几种方式: https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.switchTab…

嵌入式系统 (2.嵌入式硬件系统基础)

2.嵌入式硬件系统基础 2.1嵌入式硬件系统的组成 嵌入式硬件系统以嵌入式微处理器为核心,主要由嵌入式微处理器、总线、存储器、输入/输出接口和设备组成。 嵌入式微处理器 嵌入式微处理器采用冯诺依曼结构或哈佛结构:前者指令和数据共享同一存储空间…

多模态大模型初探索:通过ollama部署多模态大模型

文章目录 前言模型下载 前言 今天和同事聊天,聊到多模态大模型,感觉可以作为2025年的一个新的探索方向。希望和大家一起学习,一起进步。 今天也是尝试了我能想到的最基本最快速地本地部署多模态大模型的方式,那便是使用ollama。…

【超详细】React SSR 服务端渲染实战

前言 这篇文章和大家一起来聊一聊 React SSR,本文更偏向于实战。你可以从中学到: 从 0 到 1 搭建 React SSR 服务端渲染需要注意什么 react 18 的流式渲染如何使用 文章如有误,欢迎指出,大家一起学习交流~。 &…

js策略模式

定义一组算法,将每个算法封装成一个独立的类,并使它们可以互相替换。策略模式使得算法的变化不会影响到使用算法的客户。 const priceProcessor {pre(originPrice) {if (originPrice > 100) {return originPrice - 20;}return originPrice * 0.9;}…

Python中的可变对象与不可变对象;Python中的六大标准数据类型哪些属于可变对象,哪些属于不可变对象

Python中的可变对象与不可变对象;Python中的六大标准数据类型哪些属于可变对象,哪些属于不可变对象 Python中的可变对象与不可变对象一、Python的六大标准数据类型1. 数字类型 (Number)2. 字符串 (String)3. 列表 (List)4. 元组 (Tuple)5. 集合 (Set)6. …

js状态模式

允许一个对象在其内部状态改变时改变它的行为。 状态模式将对象的状态封装成独立的类,并使它们可以互相转换 // 定义状态接口class State {constructor() {if (this.constructor State) {throw new Error(不能实例化抽象类);}}// 定义状态方法handle(context) {th…

基于64QAM的载波同步和定时同步性能仿真,包括Costas环和gardner环

目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件获得 1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印): 仿真操作步骤可参考程序配套的操作视频。 2.算法涉及理论知识概要 载波同步是…

【Web安全】SQL 注入攻击技巧详解:布尔盲注(Boolean-Based Blind SQL Injection)

【Web安全】SQL 注入攻击技巧详解:布尔盲注(Boolean-Based Blind SQL Injection) 引言 布尔盲注(Boolean-Based Blind SQL Injection)是一种在无法直接从数据库获取数据的情况下,通过观察数据库响应的布尔…

太速科技-418-基于AD9361 +ZYNQ7020 的软件无线电 SDR 套件

基于AD9361 ZYNQ7020 的软件无线电 SDR 套件 一、板卡信息 ● ZYNQ芯片采用XC7Z020,逻辑容量更大,支持更大的逻辑设计; ● 内存采用两片512M DDR3,共1GByte,更大容量。 ● 支持千兆网口,支持ZEDFMCO…

SpringBoot日常:集成Kafka

文章目录 1、pom.xml文件2、application.yml3、生产者配置类4、消费者配置类5、消息订阅6、生产者发送消息7、测试发送消息 本章内容主要介绍如何在springboot项目对kafka进行整合,最终能达到的效果就是能够在项目中通过配置相关的kafka配置,就能进行消息…

分布式IO模块:激光切割机产线高效控制的创新引擎

在智能制造的浪潮中,激光切割技术以其高精度、高效率的特点,成为了现代工业生产中不可或缺的一部分。特别是在汽车制造、航空航天、电子设备及精密零部件加工等领域,激光切割机以其无与伦比的切割精度和灵活性,引领着制造业的转型…

RK3562编译Android13 ROOT固件教程,触觉智能开发板演示

本文介绍编译Android13 ROOT权限固件的方法,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。 关闭seli…

wireshark抓包工具新手使用教程

wireshark抓包工具新手入门使用教程 一、Wireshark软件安装二、Wireshark 抓包示范三、Wireshakr抓包界面四、Wireshark过滤器设置五、wireshark过滤器表达式的规则六、Wireshark抓包分析TCP三次握手七、Wireshark分析常用列标签格式 Wireshark是一款开源的网络协议分析工具&am…

如何用Python编程实现自动整理XML发票文件

传统手工整理发票耗时费力且易出错,而 XML 格式发票因其结构化、标准化的特点,为实现发票的自动化整理与保存提供了可能。本文将详细探讨用python来编程实现对 XML 格式的发票进行自动整理。 一、XML 格式发票的特点 结构化数据:XML 格式发票…

【网络安全 | 漏洞挖掘】HubSpot 全账户接管(万字详析)

未经许可,不得转载。 今天我们将分享一个关于在 Bugcrowd 平台的 HubSpot 公共漏洞赏金计划中实现全账户接管的故事。 文章目录 正文SQL 注入主机头污染(Host Header Poisoning)负载均衡器主机头覆盖(Load Balancer Host Header Override)Referer Header 测试ORIGIN Heade…

2025_0105_生活记录

3号去内蒙看了流星雨。还记得上次看流星的时间是2018年,也是冬天,大家在雁栖湖校区的操场上仰望星空。那个时候幸运的看到了一颗流星,便迅速地在心里许愿。这次看到了三颗流星,我也许了愿,希望实现。 24年走过了十多个…

(四)ROS通信编程——服务通信

前言 学完了话题通信其实操作流程基本都已经很熟悉了,因此服务通讯的学习就会流畅许多。 服务通信也是ROS中一种极其常用的通信模式,服务通信是基于请求响应模式的,是一种应答机制。也即: 一个节点A向另一个节点B发送请求,B接收…