责任编辑对统计计算机程序的科学知识展开了全面性剖析和归纳,一则该文瞧瞧你专业委员会“统计计算机程序”。
一、统计数据源
三大统计数据源
概念数学模型:按使用者的看法来对统计数据来对统计数据和重要信息可视化,主要就用于统计资料库结构设计。方法论数学模型:主要就主要就包括层次数学模型、柱状数学模型、关系数学模型,它是依照电脑控制系统的看法对统计数据可视化,主要就用作DBMS的实现。统计数据源的共同组成基本要素:统计计算机程序、统计数据操作形式、准确性束缚
统计计算机程序:统计资料库共同组成第一类和第一类之间联络的叙述。统计数据操作形式:对统计资料库中各种第一类的示例容许继续执行的操作形式的子集。准确性束缚:统计数据源要满足用户的束缚条件。主要就包括虚拟准确性、参考准确性、使用者表述准确性。二、关控制系统计资料库国际标准词汇SQL——SQL简述
SQL的共同组成
统计数据表述(Data Definition):用以表述统计资料库结构,主要就包括表述表、快照和检索。统计数据操作形式(Data Manipulation):主要就包括统计数据查阅和统计数据预览三大操作形式。统计数据预览主要就包括填入、删除和修正操作形式。统计数据掌控(Data Control):主要就包括对统计数据的可靠性掌控、准确性准则的叙述和对外交事务的表述、mammalian掌控和恢复正常。SQL的特征
综合性国际标准化:SQL中的DDL、DML、DCL词汇艺术风格国际标准化,可以独立顺利完成统计资料库开发周期中的全数活动。度非过程化:SQL展开统计数据操作形式,如果提出做什么,不需要详述怎么做。操作形式过程由控制系统手动协助你顺利完成。面向全国子集的操作形式形式需在一种句法提供多种不同使用形式:既是分立的词汇,又是PDP词汇。词汇简约、初学功能强大。三、关控制系统计资料库国际标准词汇SQL——统计数据表述
商业模式的表述与删掉
基本表的表述、删掉、修正
统计数据类型:
商业模式与表:表述基本表时表述其商业模式
修正基本表
删掉基本表
检索的建立和删掉:建立检索是加快查阅速度的有效手段
RDBMS中检索一般采用B+树、HASH检索来实现。B+树具有动态平衡的有点,HASH检索具有查找速度快的特征。
四、关控制系统计资料库国际标准词汇SQL——统计数据查阅
单表查阅
目标表达式不仅可以是表中的属性,也可以是算数表达式;目标表达式不仅可以是表达式,还可以是字符串常量、函数等。
消除重复的行:distinct
查阅满足用户条件的元组:where
order by子句:表示对查阅结果依照一个或多个属性列的升序(ASC)或降序(DESC)排列,缺省值为升序。
聚集函数:
group by子句:查阅结果按某一列或多列的值分组,值相等的为一组。对查阅结果分组目的是为了细化聚集函数的作用第一类。如果未对查阅结果分组,聚集函数将作用作整个查阅结果。分组后聚集函数将作用作每一个组,即每一组都有一个函数值。Having句子是对分组后的组按一定的条件展开筛选,最终只输出满足用户指定条件的组。
where子句与having短语的区别在于作用第一类不同,where子句作用作基本表或快照,having短语作用与组。
连接查阅
等值于非等值连接查阅
select与where子句的属性名都加上表名前缀,是为了避免混淆。如果属性名在参加连接的各表中是唯一的,则可以省略表名前缀。
自身连接
连接操作形式不仅可以在两个表之间展开,也可以是一个表与其自己展开连接。
外连接:在连接谓词的某一边加符号*
外连接就好像是为符号*所在边的表增加一个“万能”的行,这个行全数由空值共同组成。它可以和另一边的表中所有不满足用户连接条件的元组展开连接。连接符出现在右边称为右外连接,出现在左边称为左外连接。复合条件连接
where子句中可以有多个连接条件,成为复合条件连接。
两个表以上展开连接,可以成为多表连接。
嵌套查阅
将一个查阅块嵌套在另一个查阅块的where子句或having短语的条件中的查阅成为嵌套查阅。
SQL词汇容许多层嵌套查阅。子查阅select句子中不能使用order by子句,该子句只能对最终查阅结果排序
子查阅结果往往是一个子集,所以谓词in是嵌套查阅中最经常使用的谓词。
带有比较运算符的子查阅:可以使用> < =等比较运算符
带有any或all谓词的子查阅
带有EXISTS谓词的子查阅:不返回任何统计数据,只产生方法论真“true”或方法论假“false”。EXISTS引出的子查阅,其目标列表达式通常为*,因为其结果为真假值,给出列名没有意义。
子集查阅
并(UNION)、交(INTERSECT)、差(EXCEPT)
五、关控制系统计资料库国际标准词汇SQL——统计数据预览
填入统计数据
填入元组
修正统计数据
删掉统计数据
六、关控制系统计资料库国际标准词汇SQL——快照
快照概念
快照是从一个或几个基本表中导出的表,它是一个虚表。统计资料库只存放快照的表述,不存放快照对应的统计数据,其统计数据依旧存在统计资料库表中。所以统计资料库表中的统计数据发生变化,从快照中查阅的统计数据也将发生变化。
表述快照
快照可以建立在多个基本表上,也可以建立在一个或多个快照上。
删掉快照
快照的查阅和预览
操作形式与统计数据表基本类似,但是还是有一些不同
六、统计资料库可靠性
统计资料库可靠性掌控
使用者标识和鉴别、存取掌控、操作形式控制系统安全保护、统计数据密码存储
统计资料库存取掌控方法
使用者权限由两个基本要素共同组成:统计数据第一类和操作形式类型
统计资料库存取掌控方法——授权与回收
表述一个使用者的存取权限就是要表述这个使用者可以在哪些统计数据第一类上展开哪些类型的操作形式。在统计资料库控制系统中,表述存取权限成为授权。
GRANT授权
将对指定操作形式第一类的指定操作形式权限授予指定的使用者,发出该grant句子的可以是DBA,也可以是已经拥有该权限的使用者。接收权限的使用者可以是一个或多个具体使用者,也可以是PUBLIC,即全体使用者。指定WITH GRANT OPTION子句,则获得某种权限的使用者还可以把这种权限授权给其他使用者.
REVOKE回收
cascade会级联:依次向下收回权限
创建统计资料库商业模式的权限
审计
审计功能吧使用者对统计资料库的所有操作形式手动记录下来放入审计日记中。DBA可以利用审计跟踪的重要信息,重现导致统计资料库出现现有状况的一系列事件,中出非法存取统计数据的人、时间和内容等。审计通常是费时间和空间的,一般主要就用作可靠性要求较高的部门。审计一般可以分为使用者级审计和控制系统级审计。AUDIT句子用以设置审计功能,NOAUDIT用以取消审计功能。七、统计资料库准确性
统计资料库的准确性
是指数据的正确性和相容性。主要就包括:虚拟准确性、参考准确性、使用者表述准确性。
虚拟准确性
一种表述为列级束缚条件,另一种表述为表级束缚条件。在create table中用primary key表述。准确性检查和违约处理。参考准确性
在create table中用foreign key短语表述哪些列为外码列,用references短语详述这些外码参考哪些表的主码。对被参考表和参考表展开增删改查操作形式时很有可能破坏参考准确性,必须展开检查。违约处理:reject(拒绝继续执行)、cascade(级联)、set-null(设置为空)使用者表述准确性
针对某一具体应用的统计数据必须满足用户的语义要求
列值非空:NOT NULL短语
列值唯一:UNIQUE短语
check:指定列值应该满足用户的条件
准确性束缚命名子句
提供constraint,用以对准确性命名
八、统计资料库恢复正常技术
事务的基本概念
外交事务时一系列的统计资料库操作形式,是统计资料库应用程序的基本方法论单元。外交事务时使用者表述的一个统计资料库操作形式序列,这些操作形式要么全做要么全数做,是一个不可分割的工作单位。
外交事务具有以下特性:原子性、一致性、隔离性和持续性。
统计资料库恢复正常的实现技术
统计数据转储:定期将整个统计资料库复制到磁带或另一个磁盘上保存起来的过程。这些备用的统计数据文本成为后备副本或后援副本
登记日志文件:用以记录外交事务对统计资料库的预览操作形式的文件。
九、mammalian掌控
mammalian掌控简述
丢失修正:两个外交事务T1和T2读入同一统计数据并修正,T2提交的结果破坏了T1提交的结果,导致T1的修正被丢失。不可重复读:外交事务T1读取统计数据后,外交事务T2继续执行预览操作形式并写回统计资料库,使T1无法再现前一次读取结果。读“脏”统计数据:外交事务T1修正某一统计数据,并将其写回磁盘,外交事务T2读取同一统计数据后,T1由于某种原因被撤销,T2这时读到的统计数据就与统计资料库中的统计数据不一致。mammalian掌控的主要就技术是封锁。
封锁
排它锁:又成为写锁(X锁)。若外交事务T对统计数据第一类A加上X锁,则只容许T读取和修正A,其他任何外交事务都不能再对A加任何类型的锁,直到T释放A上的锁。这就保证了其他外交事务在T释放A上的锁之前不能再读取和修正A。共享锁:又称为读锁(S锁)。若外交事务T对统计数据第一类A加上S锁,则外交事务T可以读A但不能修正A,其他外交事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这就保证了其他外交事务可以读A,但在T释放A上的S锁之前不能对A做任何修正。常用XLOCK表示对A上加X锁,SLOCK表示对A加S锁,UNLOCK A表示释放A上的封锁。封锁协议
一级封锁协议:外交事务T在修改统计数据R之前必须先对其加X锁,直到外交事务结束才释放。其解决了丢失修正的问题。在一级封锁协议中,如果仅仅是读统计数据,不对统计数据展开修正,是不需要加锁的,所以它不能保证可重复读和不读“脏”统计数据。(只有在修正统计数据是才加上X锁,读统计数据时加S锁)二级封锁协议:一级封锁协议加上外交事务T在读取统计数据R之前必须现对其加S锁,读完后即可释放S锁。其解决了丢失修正和读脏统计数据。由于读完统计数据后即可释放S锁,所以它不能保证可重复读。三级封锁协议:一级封锁协议加上外交事务T在读取统计数据R之前必须先对其加S锁,直到外交事务结束才释放。其解决了丢失修正、读脏统计数据和不可重复读。mammalian调度的可串行性
多个外交事务的mammalian继续执行是正确的,当且仅当其结果与按某一次序串行地继续执行它们时的结果相同,称这种调度策略为可串行化的调度。可串行性是mammalian外交事务正确性的准则。按这个准则规定,一个给定的mammalian调度,当且仅当它是串行化的,才认为是正确调度。封锁的粒度
封锁第一类的大小称为封锁粒度。封锁的粒度越大,统计资料库所能封锁的统计数据单元越少,mammalian度就越小,控制系统开销越小。
十、统计资料库范式
统计数据依赖
是一个关系内部属性与属性之间的一种束缚关系,这种束缚关系是通过属性间值得相等与否体现出来的统计数据间相关联络。统计数据依赖中最重要的是函数依赖和多值依赖。
函数依赖
设R(U)是属性集U上的关系商业模式。X,Y是U的子集。若对于R(U)的任意一个可能的关系示例r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不能,则称X函数确定Y或者Y函数依赖于X,记作X->Y。
第一范式(1NF):如果一个关系商业模式R的所有属性都是不可分的基本统计数据项,则R为第一范式。(也就是不能出现表中表的情况,不满足用户第一范式则就不是关控制系统计资料库)。
第二范式(2NF):关系商业模式R是第一范式,并且每一个非主属性都完全函数依赖于R的码,则R为第二范式。消除了非主属性对候选码的部分依赖。
第三范式(3NF):关系商业模式R的每一个非主属性既不部分函数依赖于候选码也不传递函数依赖于候选码。显然R也属于第二范式。
BC范式(BCNF):R属于第一范式,如果对于R的每个函数依赖X->Y,并且Y不包含于X,则X必含有候选码,那么R属于BCNF(即R中的每一个决定因素都包含候选码)
BC范式既检查非主属性,又检查主属性。当只检查非主属性时,就成了第三范式。满足用户BC范式的关系都必然满足用户第三范式。符合3NF,并且,主属性不依赖于主属性。所有非主属性都完全函数依赖于每个候选码。所有主属性都完全函数依赖于每个不包含它的候选码。没有任何属性完全函数依赖于非码的任何一组属性。第四范式(4NF):消除了多值依赖。