软件架构设计师笔记
一、计算机基础
1,冯诺依曼计算机
- 计算机由五大部件组成(控制器、运算器、存储器、输入设备、输出设备)
- 指令和数据以同等地位存与存储器,可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码(+-*/转移指令等等)和地址码组成
- 存储程序
- 以运算器为中心
①五大部件
运算器:算数运算(+-*/)、逻辑运算(与、或、非逻辑判断)
存储器:存放程序和数据
控制器:指挥程序运行
输入设备:将信息转换成计算机能识别的二进制的形式
输出设备:将二进制装换成人类能识别的形式
②缺点
以运算器为中心,运算器属于CPU中的一部分,CPU要承担大量的工作。尽量让CPU处理一些比较重要的工作。
③基于冯诺依曼计算机的改进
1)将运算器与控制器放在一块形成CPU(中央处理器)
2)将与运算器为中心的计算方式逐渐的转变为以存储器为中心的计算方式
2,现代计算机硬件图
3,CPU
①运算器
ALU(算罗运算):算数运算+逻辑运算
ACC:累加器(必须的)
PSW:状态条件寄存器
例子 | 指令的功能 | 指令的操作对象 | |
取数A | 取数 | A | [A]->ACC |
存数B | 存数 | B | [ACC]->B |
加C | 加 | C | [ACC]+[C]->ACC |
②控制器
PC:它是一个计数器,用来指向指令存在内存单元的什么位置
IR:指令寄存器,存储即将要执行的指令
ID:指令的译码器,翻译指令(操作码,地址码)
时序部件:控制计算机什么时候取一条指令、什么时候做翻译、什么时候取操作数、什么时候计算
MAR:地址寄存器(现在都集成到了CPU中)
MDR:数据寄存器,存放从内存单元取出来的指令或数据 (现在都集成到了CPU中)
存储体:一块一块的芯片组成的
运算器的组成部分包含如下:
- 算数逻辑控制单元ALU:数据的算术运算和逻辑运算;
- 累加器寄存器AC:通用寄存器,为ALU提供一个工作区,用来暂存数据;
- 数据缓冲寄存器DR:写内存时,暂存指令或数据;
- 状态条件寄存器PSW:存状态标志与控制标志;
控制器的组成部分包含如下:
- 程序计数器PC:存储下一条要执行指令的地址;
- 指令寄存器IR:存储即将执行的指令;
- 指令译码器ID:对指令中的操作码字段进行分析解释;
- 地址寄存器AR:用来保存当前CPU所访问的内存单元的地址;
- 时序部件:提供时序控制信号;
4,校验码
码距:是指两个码之间的不同位数,如1011和1101之间的码锯为 2
- 在一个码组内为了检测e个误码,要求最小码距应该满足:d>=e+1;
- 在一个码组内为了纠正t个误码,要求最小码距应该满足:d>=2t+1;
- 同时纠错检错:d>=e+t+1;
①奇偶校验码:只能发现奇数个位出错的情况
②海明码:奇偶校验、分组校验
数据位是n位,校验位是k位,则n和k必须满足以下关系:
③CRC循环冗余校验码
1)化解多项式
2)信息吗加0(多项式的最高位是几就加几个0)做模二除运算(异或运算)。余数就是校验码:1100
5,指令
指令周期:取出(解释)并执行一条指令所需要的全部时间(取指周期、分析周期、执行周期)
①顺序方式。各条指令之前顺序串行执行,执行完一条指令后才取下一条执行。缺点是速度慢,机器各部件利用率低
②重叠方式。在解释第K条指令的操作完成之前就可以开始解释第K+1条指令。部分并行
③指令流水线技术。高性能计算机都采用这种技术
1)取指:2ns,分析:2ns,执行:1ns。100条指令执行完毕的时间
(t1+t2+...+tk)+(n-1)*△t=(2+2+1)+(100-1)*2=5+198=203ns
④流水线的吞吐率和最大吞吐率。吞吐率就是在单位时间执行的指令数
⑤流水线加速比
6,高速缓冲储存器
解决cpu和主存之前的速度差异,避免cpu“空等”现象
①局部性原理(什么样的内容不会被替换出来,经常使用的内容不会被替换出去)
- 时间局部性,例如for循环
- 空间局部性,例如相邻的地址空间
②cache的映像方法
1)直接映像。优点:地址变换很简单;缺点:不灵活,快冲突率高
2)全相联映像。优点:位置不受限制,灵活;缺点:复杂,速度比较慢
3)组相联映像。 结合直接映像和全相联映像
距离cpu较近位置可以采用直接映像或者组相联映像 ;距离cpu较远可以采用全相联映像
③求平均访问时间(命中率为98%,命中访问2ns,未命中访问5ns)
98%*2+2%+5=1.96+1=2.96
④写策略
- 1)写回发(write-back):当cpu对cache写命中时,只修改cache的内容不立即写入主存,当此行被替换出去的时候才写回主存。在读写方面都起到了高缓存作用
- 2)写直达法(write-through):cache写命中时,cache与主存同时修改
- 3)标记法:cache写命中时,只写主存并把当前cache标记为0;从cache中读取数据时如果时标记不为0,直接从cache中读取,否则从主存中读取
⑤替换算法
- 1)随机替换
- 2)先进先出(FIFO)
- 3)近期最少使用算法(LRU):需要额外的计算器,用于记录其被使用的情况
- 4)最不经常使用页置换算法(LFU):该算法计数器位数多,实现困难
7,磁盘存储器
存储容量=n(盘面)*t(磁道)*s(扇区/物理块)*b(扇区内字节数)
存取时间=寻道时间+等待时间+读写时间(存取时间=平均寻道时间+平均等待时间)
单缓冲区:一次只能存放一个数据
8,计算机结构的分类&指令系统
①Flynn根据不同的指令流-数据流组织方式,把计算机系统分成以下四类
- 1)单指令流单数据流(SISD):单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据
- 2)单指令流多数据流(SIMD):由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同数据
- 3)多指令流单数据流(MISD):少见
- 4)多指令流多数据流(MIMD):多核处理器,实现作业、任务、指令等各级全面并行的多核处理器
②指令系统的分类
9,总线
按照相对于CPU或其他芯片的位置分类:内部总线、外部总线
按照功能分类 :地址总线、数据总线、控制总线
按照总线中数据线的多少分类:并行总线、串行总线
10,磁盘阵列
磁盘阵列也叫廉价冗余磁盘阵列,目的是提高存取时间。由小磁盘形成一个阵列的方式
RAID0:(无冗余无校验的数据分块),存储性能最高。
RAID1:(磁盘镜像阵列),空间利用率50%
RAID2:(采用纠错海明码的磁盘阵列),少用
RAID3和RAID4:(采用奇偶校验码的磁盘阵列)。 RAID3适用于大型文件且IO需求不频繁的应用;RAID4适用于大型文件的读取
RAID5:(无独立校验码的奇偶校验码的磁盘阵列):对于大批量和小批量数据的读写性能都很好,适用于IO需求频繁的应用。空间利用率N-1
RAID6:(独立数据盘与两个独立的分布式校验方案):相当于RAID5的扩展。 空间利用率N-2
RAID7:可以理解为独立存储计算机
RAID10:(最可靠与高性能),RAID1+0结合
二、操作系统基础
操作系统主要的功能
- 处理机处理(cpu)
- 存储器管理
- 设备管理
- 文件管理
- 用户接口
1,进程
进程由程序、数据集合、进程控制块PCB组成。PCB是一种数据结构,是进程存在的唯一标识
线性方式:把所有的PCB组织在一张线性表中,每次查找是需要扫描全表
链接方式:把具有同一状态的PCB,用其中的链接字链接成一个队列,PCB存储在一个连续的区域
索引方式:同一状态的线程归入一个索引表,多个状态对应不同的索引表
①前驱图
前驱图是一个有向无循环图
2,PV操作
P操作
- 1)将信号量S的值减1,即S=S-1;
- 2)如果S>=0,则该进程继续执行,否则该进程置为等待状态
V操作
- 1)将信号量S的值加1,即S=S+1;
- 2)如果S>0该进程继续执行;否则说明有等待队列中有等待进程,需要唤醒等待进程
3,存储管理
当内存太小不够用时,用辅存来支援内存
暂时不运行的模块换出到辅存上,必要时在换入内存
①地址重定位
地址重定位是指将程序中的地址虚拟地址(逻辑地址)变换成内存的真实地址(物理地址)的过程
- 逻辑地址:相对地址。CPU所生产的地址。逻辑地址是内部和编程使用的、并不唯一
- 物理地址:绝对地址。加载到内存地址寄存器中的地址,内存单元的真正地址
1)静态重定位:绝对地址=相对地址+程序存放的内存起始地址
- 程序运行前就确定映射关系
- 程序装入后不能移动
- 程序占用连续的内存空间
2)动态重定向:绝对地址=重定位寄存器的值(BR)+逻辑地址寄存器的值(VR)
- 程序占用的内存空间可动态变化
- 程序不要求连续的内存空间
- 便于多个进程共享代码
②存储管理
1)分区存储管理:把主存的用户区划分成若干个区域,每个区域分配给一个用户作业使用,并限制它们只能在自己的区域运行。
2)分页存储管理:将一个进程的地址空间划分成若干大小相等的区域,成为页。相应的,将主存划分成与页相同大小的若干个物理块,称为页或叶框。
3)分段存储管理:为每个段分配一个连续的分区,而进程中的各个段可以离散地分配到主存的不同分区中。在系统中为每个进程建立一张段映射表(段表)。每个段在表中占有一个表项,在其中记录了改段在主存中的起始地址(基址)和段的长度。进程在执行时,通过查段表来找到每个段所对应的主存区
4)段页式存储管理:先将整个主存划分为大小相等的存储块(页框),将用户程序按程序的逻辑关系分为若干段,再将每个段划分为若干页,以页框为单位离散分配。在段页式系统中,其地址结构由段号、段内页号和内页地址三部分组成
5)虚拟内存管理:如果一个作业只部分装入主存便可开始启动运行,其余部分暂时留在磁盘上,在需要时再装入主存,这样可以有效的利用主存空间。从用户角度看,该系统所具有的主存容量将比实际主存容量大得多,人们把这样的存储器称为虚拟存储器(请求分页存储、请求分段存储、请求段页式存储)
4,设备管理
①工作方式
1)程序控制
- 无条件传送:I/O端口总是准备好,cpu在需要时随时直接利用访问相应的I/O端口
- 程序查询:cpu必须不停地测试I/O设备的状态端口。cpu与I/O设备是串行工作的
2)中断:某个进程要启动某个设备时,cpu就向相应的设备控制器发出一条I/O启动指令,然后cpu又返回原来的工作。cpu与I/O设备可以并行工作
3)DMA(直接内存存取):通过DMA控制器直接进行批量数据交换,出了在数据传输开始和结束时,整个过程无需cpu的干预
5,文件存储管理
主要关注查找文件的方式
6,文件存储设备管理
位示图法。该方法是在外存上建议一张位示图。记录文件存储器的使用情况。每一位仅对应文件存储器上的一个物理块,取0和1分别表示空闲和占用
三、计算机网络基础
1,IP
2,子网与子网掩码
三级IP地址:网络号+子网号+主机号(子网号从主机号中借出来的)
- A类地址的子网掩码:255.0.0.0
- B类地址的子网掩码:255.255.0.0
- C类地址的子网掩码:255.255.255.0
131.1.123.24/27(/27代表前27位都是网络号,主机号是5位)
3,IPV4/IPV6
①ipv4数据报
②下一代ip地址,共128位,以16位为一段,共8段。
③ipv6对比ipv4的优势
- ipv6有更大的地址空间
- ipv6使用更小的路由表
- ipv6增加了组播支持与对流支持
- ipv6加入了自动配置的支持
- ipv6具有更高的安全性
④ipv4/ipv6的过渡技术
- 双协议栈技术:支持ipv4/ipv6两种协议共存
- 隧道技术:ipv4网络对ipv6业务的承载
- NET-PT技术:两种协议的转换翻译和地址映射
⑤ipv6数据报
4,TCP与UDP
在TCP/IP协议簇中有两个传输协议,即传输控制协议(Transmission Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)。TCP是面向连接的,而UDP是无连接的
①TCP
TCP建立在无连接的IP基础之上,因此使用了3种机制实现面向连接的服务
- 1)使用序号对数据进行标记
- 2)TCP使用确认、校验和定时器系统提供可靠性。当接收者按照顺序识别出数据报未能到达或者发生错误是,接收者将通知发送者;当接受者在特定时间没有发送确认信息是,那么发送者就认为发送的数据包并没有达到接收方,这时发送者就会考虑重传数据
- 3)TCP使用窗口机制调整数据流量。并且窗口的大小并不是固定的,而是会随着网络的情况进行调整
②UDP
用户数据报协议是一种不可靠的、无连接的数据报服务。源主机在传送数据前不需要和目标主机建立连接
- 1)UDP是无连接的,发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延
- 2)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表
- 3)UDP是面向报文的。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。UDP一次交付一个完整的报文
- 4)UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。很适合多谋体通信的要求
- 5)UDP支持一对一、一对多、多对一和多对多的交互通信
- 6)UDP的首部开销小,只有8个字节,笔TCP的20个字节的首部要短
5,网络设计&综合布线系统
①网络设计
- 1)接入层:通常将网络中直接面向用户连接或访问网络的部分称为接入层,将 位于接入层和核心层之间的部分称为分布层或汇聚层。目的是允许终端 用户连接到网络,主要解决相邻用户之间的互访需求,并且为这些访问 提供足够的带宽,接入层还应当适当负责一些用户管理功能(如地址认 证、用户认证、计费管理等),以及用户信息收集工作(如用户的IP地 址、MAC地址、访问日志等)。
- 2)汇聚层:汇聚层是核心层和接入层的分界面,完成网络访问策略控制、数 据包处理、过滤、寻址,以及其他数据处理的任务。汇聚层交换机是 多台接入层交换机的汇聚点,它必须能够处理来自接入层设备的所有 通信量,并提供到核心层的上行链路,因此,汇聚层交换机与接入层 交换机比较,需要更高的性能、更少的接口和更高的交换速率。汇聚层是核心层和接入层的分界面,完成网络访问策略控制、数 据包处理、过滤、寻址,以及其他数据处理的任务。汇聚层交换机是 多台接入层交换机的汇聚点,它必须能够处理来自接入层设备的所有 通信量,并提供到核心层的上行链路,因此,汇聚层交换机与接入层 交换机比较,需要更高的性能、更少的接口和更高的交换速率。
- 3)核心层:网络主干部分称为核心层,核心层的主要目的在于通过高速转发 通信,提供优化、可靠的骨干传输结构,因此,核心层交换机应拥有 更高的可靠性,性能和吞吐量。核心层为网络提供了骨干组件或高速 交换组件,在纯粹的分层设计中,核心层只完成数据交换的特殊任务。 需要根据网络需求的地理距离、信息流量和数据负载的轻重来选择核 心层技术,常用的技术包括ATM、100Base-Fx和千兆以太网等。在 主干网中,考虑到高可用性的需求,通常会使用双星(树)结构,即 采用两台同样的交换机,与汇聚层交换机分别连接,并使用链路聚合 技术实现双机互联。 核心层的设备采用双机冗余热备份是非常必要的,也可以使用负 载均衡功能来改善网络性能。
- 4)出口层:连接着运营商
②综合网络布线
- 1.工作区子系统:它是工作区内终端设备连接到信息插座之间的设备 组成,包括信息插座、连接软线、适配器、计算机、网络集散器、电话、 报警探头、摄像机、监视器、音响等。
- 2.水平子系统:水平子系统是布置在同一楼层上,一端接在信息插座, 另一端接在配线间的跳线架上,它的功能是将干线子系统线路延伸到用户 工作区,将用户工作区引至管理子系统,并为用户提供一个符合国际标准, 满足语音及高速数据传输要求的信息点出口。
- 3.管理子系统:安装有线路管理器件及各种公用设备,实现整个系 统集中管理,它是干线子系统和水平子系统的桥梁,同时又可为同层组 网提供条件。其中包括双绞线跳线架、跳线(有快接式跳线和简易跳线 之分)。
- 4.垂直(干线)子系统:通常它是由主设备间至各层管理间,特别 是在位于中央点的公共系统设备处提供多个线路设施,采用大对数的电 缆馈线或光缆,两端分别端接在设备间和管理间的跳线架上,目的是实 现计算机设备、程控交换机(PBX)、控制中心与各管理子系统间的连接, 是建筑物干线电缆的路由
- 5.设备间子系统:该子系统是由设备间中的电缆、连接跳线架及相关支撑硬件、防雷电保护装置等构成。可以说是整个配线系统的中心单元,因此它的布放、造型及环境条件的考虑适当与否,直接影响到将来 信息系统的正常运行及维护和使用的灵活性。电话交换机、计算机主机 设备及入口设施也可与配线设备安装在一起。
- 6.建筑群子系统:它是将多个建筑物的数据通信信号连接成一体的 布线系统,它采用架空或地下电缆管道或直埋敷设的室外电缆和光缆互 连起来,是结构化布线系统的一部分,支持提供楼群之间通信所需的硬 件6,
6,域名和地址
域名系统(DNS):把主机域名解析为ip地址的系统。DNS使用UDP协议,较少情况下使用TCP协议,端口号均为53。
域名系统由三部分构成:DNS名字空间、域名服务器、DNS客户机
DNS协议:查询过程两种方法:
- 递归查询:当用户发出查询请求时,本地服务器要进行递归查询。这种查询方式要求服务器彻底地进行名字解析,并返回最后的结果一一IP地址或错误信息
- 迭代查询:服务器与服务器之间的查询采用迭代的方式进行,发出查询请求的服务器得到的响应可能不是目标的IP地址,而是其他服务器的引用(名字和地址),那么本地服务器就要访问被引用的服务器,做进一步的查询。如此反复多次,每次都更接近目标的授权服务器,直至得到最后的结果一一目标的IP地址或错误信息。
四、数据库基础
1,数据库系统的结构
概念模式:概念模式是数据库中的全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个概念模式
外模式:外模式(子模式、用户模式)用以描述用户看到或使用的哪部分数据的逻辑结构,用户根据外模式用数据操作语句或应用程序去操作数据库中的数据
内模式:内模式定了的是存储记录的类型、存储域的表示以及存储记录的物理顺序,指引元、索引和存储路径等数据的存储组织。一个数据库只有一个内模式
逻辑独立性:当模式改变时(例如增加新的关系,新的属性,改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应的改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的屋里独立性,简称数据的屋里独立性
2,数据模型
E-R图:
关系模型:
3,关系型数据库
4,关系代数
①集合运算符
∪(并):R(A、B、C) ∪ S(A、B、D) = (A、B、C、D)
-(差):R(A、B、C) - S(A、B、D) = (C)
∩(交):R(A、B、C) ∪ S(A、B、D) = (A、B)
X(笛卡尔积):
②专门运算符
外连接:
③笛卡尔积转自然连接
R(A,B,C,D)和S(C,D,E)。σR.B>S.E(R ⋈ S)
笛卡尔积:R.A,R.B,R.C,R.D,S.C,S.D,S.E
转:π1,2,3,4,7(σ2>7Λ3=5Λ4=6(R×S))
5,函数依赖
①函数确定
②Armstrong公理
Y⊆X 可以理解为 X里面包含Y
- A1自反律:若Y⊆X⊆U,则X→Y
- A2增广率: 若X→Y,且Z⊆U,则XZ→YZ
- A3传递率:若X→Y,Y→Z,则X→Z
- 合并规则:若X→Y,X→Z,则X→YZ
- 伪传递规则:若X→Y,WY→Z,则XW→Z
- 分解规则:若X→Y,Z⊆Y,则X→Z
③键
- 超键:有多余的键
- 主键:不含多余的键
- 候选键:不含多余属性的超键
- 外键:其他属性集的主键
- 主属性与非主属性:包含在任意一个主键中,成为主属性,否则为非主属性
- 全码:全部属性都是主键
6,规范化
第一范式(1NF)
若关系模式R的每一个字段是不可在分的数据项,则关系模式R属于第一范式。
第二范式(2NF)
若关系模式R∈1NF,且每一个非主属性完全依赖主键时,则关系式R是2NF(第二范式)
第三范式(3NF)
当2NF消除了主属性性对码的传递函数依赖,每一列数据都和主键直接相关,而不能间接相关,则称为3NF
7,数据库设计
①规划阶段:建立数据库的必要性、可行性
②需求分析:收集需求,理解需求。需求规格说明书、数据字典(数据项、数据流、数据存储、数据加工)
③概念设计:E-R模式设计
④逻辑设计:将E-R图转换为关系模型
⑤物理设计 :设计存储结构
⑥反规范:
- 增加冗余列
- 增加派生列(例如:增加订单总价字段)
- 重新组表(建宽表)
- 分割表(水平分割、垂直分割)
8,事务管理&并发控制
①数据库系统允许的基本工作单位是事务
- 原子性(Atomicity):操作。操作序列要么全做要么全不做
- 一致性(Consistency):数据。数据库从一个一致性状态变成另一个一致性状态
- 隔离性(Isolation):执行。不能被其他事务干扰
- 持久性(Durability):变化。一旦提交,改变就是永久性的
②并发控制
- 排它锁(X):其他事务不可读写
- 共享锁(S):其他事务不可写,可读
9,分布式数据库&故障恢复
①分布式数据库
分布式数据库特点:
- 数据分布性。数据分布在各个节点
- 统一性。统一管理
- 透明性。用户在使用分布式数据库时,与使用集中式数据库一样,无须 知道其所关心的数据存放在哪里,存储了几次。用户需要关心的仅仅是整个数 据库的逻辑结构
与集中式数据库相比,分布式数据库具有下列优点:
- 坚固性好。可靠性与可用性好
- 可扩充性好。可根据发展的需要增减结点
- 可改善性能。提高性能
- 自治性好。数据可以分散管理,统一协调,即系统中各结点的数据 操纵和相互作用是高度自治的,不存在主从控制,因此,分布式数据库较好地 满足了一个单位中各部门希望拥有自己的数据,管理自己的数据,同时又想共 享其他部门有关数据的要求
问题:
- 异构数据库的集成问题是一项 比较复杂的技术问题,目前还很难用一个通用的分布式数据库管理系统来解 决这一问题
- 如果数据库设计得不好,数据分布不合理,以致远距离 访问过多,尤其是分布连接操作过多,不但不能改善性能,反而会使性能降 低
分布透明性包括:
- 分片透明性是分布透明性的最高层次。所谓分片透明性是指用户或 应用程序只对全局关系进行操作而不必考虑数据的分片
- 位置透明性是分布透明性的下一层次。所谓位置透明性是指,用户 或应用程序应当了解分片情况,但不必了解片段的存储场地
- 局部数据模型(逻辑透明)透明性是指用户或应用程序应当了解分片 及各片断存储的场地,但不必了解局部场地上使用的是何种数据模型
②故障恢复
事务故障。使事务未运行至正常终止点就被撤销
系统故障。系统故障是指系统在运行过程中,由于某种原因,事务在执行过程中 以非正常方式终止,这时内存中的信息丢失,但存储在外存储设备上的数据不 会受影响
介质故障。系统在运行过程中,由于某种硬件故障
计算机病毒。
事务故障恢复:系统自动完成。反向扫描日志文件,对事务逆向操作,处理至事务开始标记
系统故障恢复:数据库重启完成。扫描日志文件,对未完成的事务进行回滚
介质故障与病毒破坏的恢复:备份恢复
③备份
物理备份:
- 冷备份:需要将数据库正常关闭
- 热备份:不需要将数据库正常关闭
为了提高物理备份的效率,通常将完全、增量、差异三种备份方式相组合:
- 完全备份是将数据库的内容全部备份
- 增量备份是只备份上次完全、增量或差异备份以来修改的数据
- 差异备份是备份自上次完全备份后发生变化的所有数据
10,数据仓库
数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策
数据仓库的实现方法 从整体的角度来看,数据仓库的实现方法主要有自顶向下法、自底向上 法和联合方法。
11,数据挖掘
三种基础技术(海量数据搜集、强大的多处理器计算机和数据挖掘算法)
数据挖掘与传统的数据分析(如查询、报表、联机应用分析)的本质区 别是数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。
数据挖掘的流程:需求分析-建立数据挖掘库-分析数据-调整数据-模型化-评价和解释
12,Nosql
①关系型数据库的缺点
- 不满足高并发读写需求
- 不满足海量数据的高效率读写
- 不满足高扩展性和可用性
②ACID
ACID,是指数据库管理系统(DBMS)在写入或更新资料的过程中,为保证事务(transaction)是正确可靠的,所必须具备的四个特性
原子性(Atomicity) 一致性(Consistency)隔离性(Isolation)持续性(永久性)(Durability)
③NoSQL
NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题
- 灵活的可扩展性
- 灵活的数据模型
- 与云计算结合
④CAP理论
- C(Consistency)一致性。一致性是指更新操作成功并返回客户端完成后,所有节点在同一时间的数据完全一致,与ACID的C完全不同。
- A(Availability)可用性。可用性是指服务一直可用,而且是正常响应时间。
- P(Partition tolerance)分区容错性。分区容错性是指分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务。
- CA 优先保证一致性和可用性,放弃分区容错。缺点:不再是分布式系统
- CP 优先保证一致性和分区容错性,放弃可用性。缺点:牺牲用户体验
- AP 优先保证可用性和分区容错性,放弃一致性。缺点:全局数据的不一致性
⑤Nosql数据库的主要类型