2015下半年软件设计师考点,难点3

晴天彩虹 晴天彩虹     2022-08-09     642

关键词:

数据库三级模式

  包括:外模式、模式和内模式。用户级对应外模式,概念级对应模式,物理级对应内模式

  

  在一个数据库系统中,只有唯一的数据库, 因而作为定义 、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是唯一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是唯一的,也不可能是唯一的。

  应用视图根据外模式进行数据操作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;(逻辑性)

  通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。(物理性)

 

数据库规范化

1.第一范式(1NF):最起码的要求。不满足,则不能称为关系数据库

  属性不可分。是对属性的原子性约束,要求属性具有原子性,不可再分解

2.第二范式(2NF):符合1NF,并且非主属性完全依赖于码(可以唯一确定一个元组的某个属性或者属性组)。对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性,更通俗说有主键ID

3.第三范式(3NF):符合2NF,并且,消除传递依赖。是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。

  没有数据冗余的数据库并不一定是最好的数据库,所以有没有冗余的设计,要综合来考虑。

4.BC范式(BCNF):符合3NF,并且,主属性不依赖于主属性。若关系模式属于第三范式,且每个属性都不传递依赖于键码,则R属于BC范式。

  每个非平凡依赖的左边必须包含键码;每个决定因素必须包含键码。

  既检查非主属性,又检查主属性。当只检查非主属性时,就成了第三范式。满足BC范式的关系都必然满足第三范式。

  若一个关系达到了第三范式,并且它只有一个候选码,或者它的每个候选码都是单属性,则该关系自然达到BC范式。

  一般,一个数据库设计符合3NF或BCNF就可以了。

5.第四范式(4NF):要求把同一表内的多对多关系删除。

  在BCNF的基础上增加一些逻辑,以确保每多值依赖均依赖于超键(superkey)

6.第五范式(5NF):从最终结构重新建立原始结构。

  4NF的基础上,表的每个连接依赖是候选键的结果

总结:

  

 

数据库系统的体系结构

1.集中式数据库系统:  

  数据集中,数据管理集中。数据库系统的所有功能,从形式的用户接口到DBMS核心都集中在DBMS所在的计算机上。

2.客户端/服务器体系结构

  客户端与服务器CPU之间的职责明确,客户端主要负责数据表示服务,而服务器主要负责数据库服务。包括:事务服务器(查询服务器)、数据服务器

3.并行数据库系统

  多个物理上连在一起的CPU。包括:共享内存式多处理器、无共享式并行体系结构

  

4.分布式数据库系统:DDBMS,distributed database management system

  多个地理上分开的CPU。包括:物理上分布、逻辑上集中的分布式结构;物理上分布、逻辑上分布的分布式数据库结构

  数据透明性:对于用户而言,不需要知道数据的存储情况、分片情况、位置情况

  (1)分片透明性:是分布透明性的最高层次,完全分布透明不考虑数据的逻辑分片(全局视图、分片视图之间)

    不考虑关系是如何分片及具体的分片情况,就可以对全局关系进行操作

    只对全局关系进行操作而不必考虑数据的分片。当分片模式改变时,只要改变全局模式到分片模式的映像(图11-1中的映像2),而不影响全局模式和应用程序。全局模式不变,应用程序不必改写,这就是分片透明性

    在分布式数据库中,全局数据库是由各个局部数据库逻辑组合而成,反之,各个局部数据库是由全局数据库的某种逻辑分割而得.

  (2)位置透明性:中级分布透明。不考虑逻辑片段存储在哪个具体的位置。用户无法判别资源在系统中的物理位置,这是通过命名来实现的;(分片视图、分布视图之间)

    全局关系分割为分片后,要把分片定位到各个节点上,使每一分片至少有一个节点地址。如果应用程序中不必包括数据的节点地址,称为系统的位置透明性,应用程序中只提供要访问的关系名或分片名,节点地址由系统从数据字典中查出。具有位置透明性的系统,分片在节点间有移动时只要改变数据字典中的登录数据,不影响应用程序的可用性。

  (3)本地透明性(局部数据模型透明性):低级分布透明。向用户屏蔽的只是本站点的具体数据库存储及其管理情况。(分配视图、局部概念视图之间)

    在异构的情况下,这种透明性避免了用户对不同数据模型转换的实现

    不关心数据的具体组织形式。3中透明方式中最低的

  

 

 

  (4)复制透明性:不考虑数据的副本存放在哪儿及那几个具体的节点

  (5)访问透明性:对不同的数据表示形式以及资源访问方式的隐藏;

    (6)迁移透明性:资源的移动不会影响该资源的访问方式;

  (7)重定位透明性:资源在接受访问的同时进行重定位,而不引起用户和应用程序的注意;

  (8)并发透明性:访问共享资源的时候,让任何一个用户都不会感觉到他人也在使用自己正使用的资源;

  (9)故障透明性:用户不会注意到某个资源无法正常工作,以及系统随后从故障中恢复的过程。

 

算法时间复杂度

  这真的是2个很牛叉的算法分析方法,你可以用主方法瞬间估算出算法的复杂度

  Master Method 

  T(n) = aT(n/b)+h(n)

  a >=1 ; b >1 ; h(n) : 不参与递归的复杂度函数

  判断n^log b (a)与h(n)的大小关系

  = Θ(h(n)) :该方法的复杂度为   Θ(h(n)*lg(n))

  > Θ(h(n)) :该方法的复杂度为   Θ(n^(log a/log b))

  < Θ(h(n)) :该方法复杂度为 Θ(h(n))

  这样可以帮助你快速的分析出你得算法的复杂度是否符合要求。

 

算法

  

 

集线器、网桥、交换机

  集线器(HUB):物理层的设备。

    因设备转发数据包引起的广播

    HUB只能看懂物理层上的东西(比如一段物理信号),工作在局域网(LAN)环境

    所起的作用相当于多端口的中继器。其实,集线器实际上就是中继器的一种,其区别仅在于集线器能够提供更多的端口服务,所以集线器又叫多口中继器。

    工作过程:首先是节点发信号到线路,集线器接收该信号,因信号在电缆传输中有衰减,集线器接收信号后将衰减的信号整形放大,最后集线器将放大的信号广播转发给其他所有端口。

  网桥,即桥接器(Network Bridge):数据链路层设备

    可以对MAC 地址进行分区,隔离不同物理网段之间的碰撞(也就是隔离“冲突域”)。能从发来的数据包中提取MAC信息,并且根据MAC信息对数据包进行有目的的转发,而不采用广播的方式,这样就能减少广播风暴的出现,提升整个网络的效率

    网桥却能看懂一些帧的信息

    网桥的天性应该是:连接两个同构网络

    一个端口可以连接一个网段(这里的网段是物理网段,并不是我们平时说的IP网段,是指IP 地址属于同一网络地址段(也就是IP 地址中的网络ID一样),位于不同地理位置的不同LAN 分段,是基于物理意义上的地理区域进行划分的)

    网桥只有两个端口,所以所连接的两个物理网段的主机通常就是由当时的集线器进行集中连接的(网桥端口通常不是直接连接主机的)。软件中通常所说的桥接(如VMware中的桥接工作模式)也就是网桥的作用,它连接的也是同一网络或子网中的两个网段。

    基本网桥只有两个端口,还有一种网桥叫做多口网桥,多口网桥有多个端口

    网桥常用于将共享带宽的计算机结点数较多的大局域网分成既相对独立又能相互通信的两个局域网网段,从而改善各个子网段的性能和安全性。

      

  交换机(Switch):数据链路层设备 

    作用是转发数据包。和网桥一样它也是通过识别帧中的MAC地址,然后对特定的端口进行转发的。

    能看懂一些帧的信息

    

  总结

    网桥和交换机用户分割冲突域,就是网桥和交换机可以较少被逼的广播(hub导致的),但不能分割广播域。不严格地说,交换机可以看作网桥的高度集成。

    HUB 所有端口都在同一个广播域,冲突域内。
    Switch所有端口都在同一个广播域内,而每一个端口就是一个冲突域。
    Router的每个端口属于不同的广播域。

 

邮件协议

  SMTP(Simple Mail Transfer Protocol),简单邮件传输协议:

    SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地,端口为25。

    建模在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。

  POP(Post Office Protocol): 是一种电子邮局传输协议,而 POP3 是它的第三个版本

    规定了怎样将个人计算机连接到 Internet 的邮件服务器和下载电子邮件的电子协议,端口为110

  IMAP:交互式邮件存取协议:主要作用是邮件客户端(例如MS Outlook Express)可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。    

    运行在TCP/IP协议之上,使用的端口是143。

  总结:

    1.用户在发送邮件时,会先按照SMTP协议,将邮件发送到发送者的SMTP服务器上,接着再由发送者SMTP服务器将邮件发送到接收者的SMTP邮件服务器上,最后由接收者通过pop3协议从接收服务器上将邮件下载下来

    举个例子,用户A( aaa@126.com)要向用户B( bbb@qq.com)发送一封邮件,那么邮件会先发送到发送SMTP服务器上即smtp.126.com,然后由smtp.126.com投送到smtp.qq.com,最后再到bbb@qq.com上。

    2.POP允许电子邮件客户端下载服务器上的邮件,但是您在电子邮件客户端的操作(如:移动邮件、标记已读等),这是不会反馈到服务器上的,比如:您通过电子邮件客户端收取了QQ邮箱中的3封邮件并移动到了其他文件夹,这些移动动作是不会反馈到服务器上的,也就是说,QQ邮箱服务器上的这些邮件是没有同时被移动的 。但是IMAP就不同了,电子邮件客户端的操作都会反馈到服务器上,您对邮件进行的操作(如:移动邮件、标记已读等),服务器上的邮件也会做相应的动作。也就是说,IMAP是“双向”的。同时,IMAP可以只下载邮件的主题,只有当您真正需要的时候,才会下载邮件的所有内容。

 

TCP流量控制、拥塞控制

流量控制

  让发送发送速率不要过快,让接收方来得及接收。利用滑动窗口机制就可以实施流量控制。

      原理这就是运用TCP报文段中的窗口大小字段来控制,发送方的发送窗口不可以大于接收方发回的窗口大小。

  TCP的两端都有发送/接收缓存和发送/接收窗口。TCP的缓存是一个循环队列,其中发送窗口可以用3个指针表示。而发送窗口的大小受TCP数据报中窗口大小的影响,TCP数据报中的窗口大小是接收端通知发送端其还可以接收多少数据,所以发送窗口根据接收的的窗口大小的值动态变化。

  流量控制往往指点对点通信量的控制,是个端到端的问题。流量控制所要做的就是抑制发送端发送数据的速率,以便接收端来得及接收。

拥塞控制:

  防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。

  拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。它是一个全局性的过程,涉及到所有的主机、所有的路由器,以及降低网络传输性能有关的所有因素。

 

路由

主机路由:

  也就是到单一设备的路由,那么肯定要使用255.255.255.255来限定单一ip地址。

  目的地址是一个完整的主机地址

  当为某个目的I P地址搜索路由表时,主机地址项必须与目的地址完全匹配

网络路由:

  目的地址是一个网络地址(主机号部分为0)。

  网络地址项只需要匹配目的地址的网络号和子网号就可以了

默认路由,缺省路由:

  网络比较大的时候,用静态路由就比较不合适了。用缺省路由可以减少管理员的工作量

  这个路由将匹配所有的包. 能帮助减少路由条目

  目的地ip和子网掩码为0.0.0.0和0.0.0.0

  在RIP协议中,特殊地址0.0.0.0表示默认路径路由。当RIP更新报文中不便于罗列出所有的网络,或者当一个路由器要处理所有未明确列出的网络通信时可以使用默认路径路由。通常,每个自治系统都有自己首选的默认路由,0.0.0.0项不会通过自治系统的边界。  

  是一种特殊的静态路由,指的是当路由表中与包的目的地址之间没有匹配的表项时路由器能够做出的选择。如果没有默认路由,那么目的地址在路由表中没有匹配表项的包将被丢弃· 默认路由在某些时候非常有效,当存在末梢网络时,默认路由会大大简化路由器的配置,减轻管理员的工作负担,提高网络性能

  默认路由器是相对于固定路由而言的。对路由器来讲,每一个需要路由的IP地址,他需要知道下一站的路径,这个路径就是下一站路由了。当路由器找不到准确的下一站路径的时候,也就是说路由器不能找到需要路由的IP地址的下一站在哪里,这时他会选择默认路由,把数据包转发过去,再让默认的下一站去处理数据转发。每个可以正常联网的路由器都必须有默认路由存在,否则路由器没有识别路由的IP地址,路由器将会丢弃,导致无法访问。

静态路由:

  一般是由管理员手工设置的路由。路由选择器不共享路由信息(单方向路由)

  一般中小型的网络,网络拓扑比较简单,不存在线路冗余等因素,所以通常采用静态路由的方式来配置

动态路由:

  路由器中的动态路由协议根据网络拓扑情况和特定的要求自动生成的路由条目。需要一个路由协议,如RIP或OSPF

  大型网络网络拓扑复杂,路由器数量大,线路冗余多,管理人员相对较少,要求管理效率要高等原因,通常都会使用动态路由协议,适当的辅以静态路由的方式。

默认网关:

  我们在我们PC机上配的默认网关就是默认路由,比如说我们的内网为192.168.1.0网段,出口路由器的内网端口地址为192.168.1.1(假设为末梢网络,路由器配置为默认路由),那样我们PC机的默认网关或者默认路由的下一条地址就是192.168.1.1

  意思是如果要跟外网通信的话所有的包都发往192.168.1.1这个地址,也就是路由器的内网端口地址!这时路由器的默认路由再起作用,把所有的包发往路由器的WAN口或者下一跳!ip default gateway一般是在交换机上设置默认网关的命令!

直连路由:

  发往直连路由的设备中不但具有指明目的端的I P地址,还具有其mac地址

网关路由,间接路由:

  当报文被发往一个间接路由时,I P地址指明的是最终的目的地,但是mac地址指明的是网关(即下一跳路由器)。

总结:

  默认路由与静态路由的区别

  直连路由和网关路由是由下一跳区分的,而主机路由和网络路由是由目的地址的完整度区分的;

  

层次化局域网模型,局域网分层模型

  简化设计过程,提高组网效率

  中小型、小型局域网一般可采用核心/接入层 ;大型、大中型局域网络一般可采用核心/汇聚/接入层

  

 

 

 

 

 

  

    

 

 

2015上半年软件设计师考点,难点5

URL:UniformResourceLocator统一资源定位符语法规则:  scheme://host.domain:port/path/filename  scheme类型:  TCP-IP协议TCP/IP层次结构      互连层协议            传输层协议                 ... 查看详情

2015下半年软件设计师考点,难点2

资源分配图,即进程资源图    化简:第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞(“不阻塞”即:系统有足够的空闲资源分配给它)的第二步:把不阻塞的进程的所有边都去掉,形成一个孤立的点... 查看详情

2015上半年软件设计师考点,难点

存储器:  高级存储器容量一般较小,而低级存储器容量较大。  寄存器:    中央处理器的一部分,是有限存贮容量的高速存贮部件,可用来暂存指令、数据和地址。是CPU必须的    是中央处理器内的组成部份。... 查看详情

全网最全计算机二级c语言知识总结,还不快来白嫖

...的程序设计考点2:面向对象方法的基本概念第3章、软件工程基础3.1软件工程基本概念考点1:软件定义与软件特点考点2:软件工程过程与软件生命周期3.2结构化设计方法考点3软件设计的基本概念考点4:详细设计3... 查看详情

2021年下半年软件设计师上午真题答案及解析(代码片段)

51、已知一个文件中出现的各字符及其对应的频率如下表所示。采用Huffman编码,则该文件中字符a和c的码长分别为(1)。若采用Huffman编码,则字序列“110001001101”的编码应为(2)。(1)A、1和3B、1和4C、3和3D、3和4(2)A、faceB、baceC... 查看详情

下半年软件设计师下午试卷真题解析

 试题一 阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。【说明】某证券交易所为了方便提供证券交易服务,欲开发一证券交易平台,该平台的主要功能如下:(1)开户。根据客户服务助理提交的开户... 查看详情

软考-01考试范围及知识点

...课目录考试简介考点浅析架构科目2考点详解系统规划、软件架构设计、设计模式、系统设计、系统建模、分布式系统设计、嵌入式系统设计、系统的可靠性分析与设计、系统的安全性和保密性设计。架构科目3考点详解系统建模... 查看详情

软考-01考试范围及知识点

...课目录考试简介考点浅析架构科目2考点详解系统规划、软件架构设计、设计模式、系统设计、系统建模、分布式系统设计、嵌入式系统设计、系统的可靠性分析与设计、系统的安全性和保密性设计。架构科目3考点详解系统建模... 查看详情

《软件设计师》考点分布

上午:  下午:  查看详情

软件设计师考点总结

 计算机组成与体系结构操作系统基本原理数据库系统(未完待续)   查看详情

2021年下半年软件设计师下午真题答案及解析

阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某游戏公司欲开发一款吃金币游戏。游戏的背景为一种回廊式迷宫(Maze),在迷宫的不同位置上设置有墙。迷宫中有两种类型的机器人(Rob... 查看详情

2021年下半年软件设计师下午真题答案及解析

阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某游戏公司欲开发一款吃金币游戏。游戏的背景为一种回廊式迷宫(Maze),在迷宫的不同位置上设置有墙。迷宫中有两种类型的机器人(Rob... 查看详情

10-1系统设计考点解析(代码片段)

一、考点聚焦:1.什么是系统设计?2.系统设计需要掌握哪些知识?3.如何设计和实现一个后端系统服务的设计?二、什么是系统设计?SystemDesign:1.系统设计是一个定义系统架构、模块、接口和数据满足特定需... 查看详情

2017年上半年软件设计师试题-04

一.某医疗器械公司作为复杂医疗产品的集成商,必须保持高质量部件的及时供应。为了实现这一目标,该公司欲开发一采购系统。系统的主要功能如下:  1.检查库存水平。采购部门每天检查部件库存量,当特定部件的库存量... 查看详情

软考

...么上半年的答案是8-7+2=3弧数为8,节点为7,没问题; 下半年的却是9-7+2=4下半年的弧为什么不是10呢?谢谢! 这个啊,我也困惑了好久,后来找资料看了下,计算方法其实有3种: 环形复杂 查看详情

上半年软件设计师试题-01

    查看详情

2022年下半年软件设计师下午真题及答案解析

试题一(共15分)随着新能源车数量的迅猛增长,全国各地电动汽车配套充电桩急速增长,同时也带来了充电桩计量准确性的问题。充电桩都需要配备相应的电能计量和电费计费功能,需要对充电计量准确性强... 查看详情

2019年上半年软件设计师上午真题及答案解析

1.计算机执行指令的过程中,需要由(  )产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定的操作。A.CPU的控制器   B.CPU的运算器   C.DMA控制器    D.Cache控制器2.DMA控制方式是在(  )之间直接建... 查看详情