《第1章 数据库概论.ppt》由会员分享,可在线阅读,更多相关《第1章 数据库概论.ppt(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1数据库原理与应用数据库原理与应用(基于(基于MySQL)赵明渊赵明渊 主编主编清华大学出版社清华大学出版社 数据库原理与应用(基于MySQL)2第第1章章 数据库概论数据库概论1.1 数据库基本概念数据库基本概念1.2 数据模型数据模型1.3 数据库系统结构数据库系统结构1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)31.1 数据库基本概念数据库基本概念1.1.1 数据库数据库1.数据数据数据(Data)是事物的符号表示,数据的种类有数字、文字、图像、声音等,可以用数字化后的二进制形式存入计算机来进行处理。2.数据库数据库数据库(Database,DB)是长期存放在计算机内的
2、有组织的可共享的数据集合,数据库中的数据按一定的数据模型组织、描述和储存,具有尽可能小的冗余度、较高的数据独立性和易扩张性。数据库原理与应用(基于MySQL)41.1 数据库基本概念数据库基本概念1.1.2 数据库管理系统数据库管理系统数据库管理系统(Data Base Management System,DBMS)是数据库系统的核心组成部分,它是在操作系统支持下的系统软件,是对数据进行管理的大型系统软件,用户在数据库系统中的一些操作都是由数据库管理系统来实现的。数据定义功能:提供数据定义语言定义数据库和数据库对象。数据操纵功能:提供数据操纵语言对数据库中数据进行查询、插入、修改、删除等操作。
3、数据控制功能:提供数据控制语言进行数据控制,即提供数据的安全性、完整性、并发控制等项功能 数据库建立维护功能:包括数据库初始数据的装入、转储、恢复和系统性能监视、分析等项功能。数据库原理与应用(基于MySQL)51.1 数据库基本概念数据库基本概念1.1.3 数据库系统数据库系统数据库系统(Database System,DBS)是在计算机系统中引入数据库后的系统构成,数据库系统由数据库、操作系统、数据库管理系统、应用程序、用户、数据库管理员(DataBase Administrator,DBA)组成,如图1.1所示,数据库系统在整个计算机系统中的地位如图1.2所示。数据库原理与应用(基于My
4、SQL)61.1 数据库基本概念数据库基本概念数据库应用系统分为客户/服务器架构和浏览器/服务器架构。1.客户客户/服务器服务器(C/S)架构的应用系统架构的应用系统当应用程序需要处理数据库中的数据时,首先向数据库管理系统发送一个数据请求,数据库管理系统接收到这一请求后,对其进行分析,然后执行数据库操作,并把处理结果返回给应用程序。数据库原理与应用(基于MySQL)图1.3 客户/服务器(C/S)架构71.1 数据库基本概念数据库基本概念2.浏览器浏览器/服务器服务器(B/S)架构的应用系统架构的应用系统浏览器/服务器(Browser/Server,B/S)架构是一种基于Web应用的客户/服务
5、器架构,又称为三层客户-服务器架构(浏览器/Web服务器/数据库服务器),如图1.4所示。数据库原理与应用(基于MySQL)图1.4 浏览器/服务器(B/S)架构81.1 数据库基本概念数据库基本概念1.1.4 数据管理技术的发展数据管理技术的发展1.人工管理阶段人工管理阶段20世纪50年代中期以前,人工管理阶段的数据是面向应用程序的,一个数据集只能对应一个程序,应用程序与数据之间的关系如图1.5所示。数据库原理与应用(基于MySQL)图1.5 人工管理阶段应用程序与数据之间的关系91.1 数据库基本概念数据库基本概念2.文件系统阶段文件系统阶段20世纪50年代后期到60年代中期,计算机不仅用
6、于科学计算,也开始用于数据管理。数据处理的方式不仅有批处理,还有联机实时处理。应用程序和数据之间的关系如图1.6所示。数据库原理与应用(基于MySQL)图1.6 文件系统阶段应用程序与数据之间的关系101.1 数据库基本概念数据库基本概念3.数据库系统阶段数据库系统阶段20世纪60年代后期开始,数据管理对象的规模越来越大,应用越来越广泛,数据量快速增加。为了实现数据的统一管理,解决多用户、多应用共享数据的需求,数据库技术应运而生,出现了统一管理数据的专门软件-数据库管理系统。数据库系统阶段应用程序和数据之间的关系如图1.7所示。数据库原理与应用(基于MySQL)图1.7 数据库系统阶段应用程序
7、与数据之间的关系111.2 数据模型数据模型1.2.1 数据模型概述数据模型概述1.数据模型的概念数据模型的概念数据模型(Data Model)是对现实世界数据特征的抽象,它是用来描述数据、组织数据和对数据进行操作的。数据模型是数据库系统的核心和基础。数据库管理系统的实现都是建立在某种数据模型基础上的。现实世界中的数据要转换成为抽象的数据库数据,需要经过以下三个阶段:现实世界、信息世界和计算机世界阶段,如图1.8所示。数据库原理与应用(基于MySQL)121.2 数据模型数据模型 数据库原理与应用(基于MySQL)2.数据模型的分类数据模型的分类数据模型按应用层次可分为三类:概念模型、逻辑模型
8、、物理模型。3.数据模型的组成要素数据模型的组成要素数据模型是现实世界数据特征的抽象,一般由数据结构、数据操作、数据完整性约束三部分组成。131.2 数据模型数据模型 数据库原理与应用(基于MySQL)1.2.2 概念模型概念模型1.概念模型的基本概念概念模型的基本概念概念模型是对现实世界的第一层抽象,又称信息模型,是数据库设计人员和用户之间交流的工具,仅需考虑领域实体属性和联系,要求有较强的语义表达能力,且简单清晰、易于理解,其基本概念如下:(1)实体(2)属性(3)实体型(4)实体集(5)联系141.2 数据模型数据模型 数据库原理与应用(基于MySQL)2.实体之间的联系实体之间的联系实
9、体之间的联系,可分为一对一的联系、一对多的联系、多对多的联系。(1)一对一的联系(1:1)例如,一个班只有一个正班长,而一个正班长只属于一个班,班级与正班长两个实体间具有一对一的联系。(2)一对多的联系(1:n)例如,一个班可有若干学生,一个学生只能属于一个班,班级与学生两个实体间具有一对多的联系。(3)多对多的联系(m:n)例如,一个学生可选多门课程,一门课程可被多个学生选修,学生与课程两个实体间具有多对多的联系。151.2 数据模型数据模型 数据库原理与应用(基于MySQL)3.概念模型的表示方法概念模型的表示方法概念模型的表示方法很多,其中最著名和最常用的方法是P.P.S.Chen在19
10、76年提出的实体-联系方法(Entity-Relationship Approach),该方法用E-R图描述现实世界的概念模型,并从中抽象出实体和实体之间的联系,在E-R图中:(1)实体用矩形框表示,框内为实体名。(2)属性采用椭圆框表示,框内为属性名,并用无向边与其相应实体连接。(3)实体间的联系采用菱形框表示,联系以适当的含义命名,名字写在菱形框中,用无向边将参加联系的实体矩形框分别与菱形框相连,并在连线上标明联系的类型,即11、1n或mn。如果联系也具有属性,则将属性与菱形也用无向边连上。实体之间的三种联系如图1.9所示。161.2 数据模型数据模型 数据库原理与应用(基于MySQL)【
11、例1.1】设有学生、课程实体如下:学生:学号、姓名、性别、出生日期、籍贯、专业、总学分、选修课程号课程:课程号、课程名、学分、开课学院、任课教师号上述实体中存在如下联系:一个学生可选修多门课程,一门课程可为多个学生选修。试设计学生选课E-R图。171.2 数据模型数据模型 数据库原理与应用(基于MySQL)解:解:学生选课E-R图如图1.10所示。数据库原理与应用(基于MySQL)181.2.3 逻辑模型逻辑模型1.层次模型层次模型用树状层次结构组织数据,树状结构每一个结点表示一个记录类型,记录类型之间的联系是一对多的联系。层次模型有且仅有一个根结点,位于树状结构顶部,其它结点有且仅有一个父结
12、点。某大学按层次模型组织数据的示例如图1.11所示。层次模型简单易用,但现实世界很多联系是非层次性的,如多对多联系等,表达起来比较笨拙且不直观。1.2 数据模型数据模型数据库原理与应用(基于MySQL)192.网状模型网状模型采用网状结构组织数据,网状结构每一个结点表示一个记录类型,记录类型之间可以有多种联系,按网状模型组织数据的示例如图1.12所示。网状模型可以更直接地描述现实世界,层次模型是网状模型特例,但网状模型结构复杂,用户不易掌握。图1.12 网状模型示例1.2 数据模型数据模型数据库原理与应用(基于MySQL)203.关系模型关系模型采用关系的形式组织数据,一个关系就是一张二维表,
13、二维表由行和列组成,按关系模型组织数据的示例如图1.13所示学生关系框架学号姓名性别出生日期专业总学分成绩关系框架学号课程号成绩学生关系学号姓名性别专业总学分191001刘清泉男计算机52191002张慧玲女计算机50成绩关系学号课程号成绩191001100495191002100487191001120192关系模型建立在严格的数学概念基础上,数据结构简单清晰,用户易懂易用,关系数据库是目前应用最为广泛、最为重要的一种数学模型。1.2 数据模型数据模型数据库原理与应用(基于MySQL)211.3 数据库系统结构数据库系统结构从数据库管理系统内部系统结构看,数据库系统通常采用三级模式结构。1.
14、3.1 数据库系统的三级模式结构数据库系统的三级模式结构模式(Schema)指对数据的逻辑结构或物理结构、数据特征,数据约束的定义和描述,它是对数据的一种抽象,模式反映数据的本质、核心或型的方面。数据库系统的标准结构是三级模式结构,它包括外模式、模式和内模式,如图1.14所示。数据库原理与应用(基于MySQL)221.外模式外模式 外模式(External Schema)又称子模式或用户模式,位于三级模式的最外层,对应于用户级,它是某个或某几个用户所看到的数据视图,是与某一应用有关的数据的逻辑表示。外模式通常是模式的子集,一个数据库可以有多个外模式,同一外模式也可以为某一用户的多个应用系统所用
15、,但一个应用程序只能使用一个外模式,它是由外模式描述语言(外模式DDL)来描述和定义的。2.模式模式模式(Schema)又称概念模式,也称逻辑模式,位于三级模式的中间层,对应于概念级,它是由数据库设计者综合所有用户的数据,按照统一观点构造的全局逻辑结构,是所有用户的公共数据视图(全局视图)。一个数据库只有一个模式,它是由模式描述语言(模式DDL)来描述和定义的。1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)233,内模式内模式内模式(Internal Schema)又称为存储模式,位于三级模式的底层,对应于物理级,它是数据物理结构和存储方式的描述,是数据在数据库内部的表
16、示方式。一个数据库只有一个内模式,它是由内模式描述语言(内模式DDL)来描述和定义的。1.3.2 数据库的二级映像功能和数据独立性数据库的二级映像功能和数据独立性为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两级映象:外模式/模式映象,模式/内模式映象。1.外模式外模式/模式映象模式映象 模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。数据库系统都有一个外模式/模式映象,它定义了该外模式与模式之间的对应关系。1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)24当模式改变时,由数据库管理员对各个外模式/模式映象作相应改变
17、,可以使外模式保持不变。应用程序是依据数据的外模式编写的,保证了数据与程序的逻辑独立性,简称为数据逻辑独立性。2.模式模式/内模式映象内模式映象 数据库中只有一个模式,也只有一个内模式,所以模式/内模式映象是唯一的,它定义了数据库全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变了,由数据库管理员对模式/内模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称为数据物理独立性。在数据库的三级模式结构中,数据库模式即全局逻辑结构是数据库的中心与关键,它独立于数据库的其他层次。1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL
18、)25数据库的内模式依赖于它的全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。数据库的外模式面向具体的应用程序,它定义在逻辑模式之上,但独立于内模式和存储设备。数据库的二级映象保证了数据库外模式的稳定性,从而根本上保证了应用程序的稳定性,使得数据库系统具有较高的数据与程序的独立性。数据库的三级模式与二级映象使得数据的定义和描述可以从应用程序中分离出去。1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)261.3.3 数据库管理系统的工作过程数据库管理系统的工作过程数据库管理系统控制的数据操作过程基于数据库系统的三级模式结构与二级映象功能,下面通过读取
19、一个用户记录的过程反映数据库管理系统的工作过程,如图1.15所示。图1.15 应用程序从数据库中读取一条记录的过程1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)27(1)应用程序A向DBMS发出从数据库中读用户数据记录的命令;(2)DBMS对该命令进行语法检查、语义检查,并调用应用程序A对应的子模式,检查A的存取权限,决定是否执行该命令。如果拒绝执行,则转(10)向用户返回错误信息(3)在决定执行该命令后,DBMS调用模式,依据子模式/模式映象的定义,确定应读入模式中的哪些记录;(4)DBMS调用内模式,依据模式/内模式映象的定义,决定应从哪个文件、用什么存取方式、读入
20、哪个或哪些物理记录;(5)DBMS向操作系统发出执行读取所需物理记录的命令;(6)操作系统执行从物理文件中读数据的有关操作;(7)操作系统将数据从数据库的存储区送至系统缓冲区;1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)28(8)DBMS依据内模式/模式、模式/子模式映象的定义(仅为模式/内模式、子模式/模式映象的反方向,并不是另一种新映象),导出应用程序A所要读取的记录格式;(9)DBMS将数据记录从系统缓冲区传送到应用程序A的用户工作区;(10)DBMS向应用程序A返回命令执行情况的状态信息。以上为DBMS一次读用户数据记录的过程,DBMS向数据库写一个用户数据记
21、录的过程与此类似,只是过程基本相反而已。由DBMS控制的用户数据的存取操作,就是由很多读或写的基本过程组合完成的。1.3 数据库系统结构数据库系统结构数据库原理与应用(基于MySQL)291.4 大数据简介大数据简介1.4.1 大数据的基本概念大数据的基本概念由于人类的日常生活已经与数据密不可分,科学研究数据量急剧增加,各行各业也越来越依赖大数据手段来开展工作,而数据产生越来越自动化,人类进入”大数据”时代。2004年,全球数据总量是30EB(1EB=1024PB=260Byte),2005年达到了50EB,2006年达到了161EB,到2015年达到了惊人的7900EB,预计2020年将达到
22、35000EB。数据库原理与应用(基于MySQL)301.大数据的基本概念大数据的基本概念目前在学术界和工业界对于大数据的定义,尚未形成标准化的表述,比较流行的提法如下。维基百科(Wikipedia)定义大数据为”数据集规模超过了目前常用的工具在可接受的时间范围内进行采集、管理及处理的水平“。美国国家标准技术研究院(NIST)定义大数据为”具有巨量(Volume)、多样(Variety)、快速(Velocity)、和多变(Variability)特性,需要具备可扩展性的计算架构来进行有效存储、处理和分析的大规模数据集”。概况上述情况和定义可以得出:大数据(Big Data)指海量数据或巨量数据
23、,需要以新的计算模式为手段,获取、存储、管理、处理并提炼数据以帮助使用者决策。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)312.大数据的特点大数据的特点大数据具有4V+1C的特点:(1)巨量(Volume):存储和处理的数据量巨大,超过了传统的GB(1GB=1024MB)或TB(1TB=1024GB)规模,达到了PB(1PB=1024TB)甚至EB(1EB=1024PB)量级,PB级别已是常态。(2)多样(Variety):数据的来源及格式多样,数据格式除了传统的结构化数据外,还包括半结构化或非结构化数据,比如用户上传的音频和视频内容。而随着人类活动的进一步拓宽,数据的来源
24、更加多样。(3)快速(Velocity):数据增长速度快,而且越新的数据价值越大,这就要求对数据的处理速度也要快,以便能够从数据中及时地提取知识,发现价值。(4)价值(Value):需要对大量数据进行处理,挖掘其潜在的价值。(5)复杂(Complexity):对数据的处理和分析的难度增大。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)321.4.2 大数据的处理过程大数据的处理过程大数据的处理过程包括数据的采集和预处理,大数据分析,数据可视化。1)数据的采集和预处理大数据的采集一般采用多个数据库来接收终端数据,包括智能终端、移动APP应用端、网页端、传感器端等。数据预处理包括数
25、据清理、数据集成、数据变换和数据归约等方法。(1)数据清理目标是达到数据格式标准化,清除异常数据和重复数据、纠正数据错误。(2)数据集成将多个数据源中的数据结合起来并统一存储,建立数据仓库。(3)数据变换通过平滑聚集、数据泛化、规范化等方式将数据转换成适用于数据挖掘的形式。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)33(4)数据归约寻找依赖于发现目标的数据的有用特征,缩减数据规模,最大限度地精简数据量。2)大数据分析大数据分析包括统计分析、数据挖掘等方法。(1)统计分析统计与分析使用分布式数据库或分布式计算集群,对存储于其内的海量数据进行分析和分类汇总。统计分析、绘图的语言
26、和操作环境通常采用R语言,它是一个用于统计计算和统计制图的、免费和源代码开放的优秀软件,(2)数据挖掘数据挖掘与统计分析不同的是一般没有预先设定主题。数据挖掘通过对提供的数据进行分析,查找特定类型的模式和趋势,最终形成模型。数据挖掘常用方法有分类、聚类、关联分析、预测建模等。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)34 分类:根据重要数据类的特征向量值及其他约束条件,构造分类函数或分类模型,目的是根据数据集的特点把未知类别的样本映射到给定类别中。聚类:目的在于将数据集内具有相似特征属性的数据聚集成一类,同一类中的数据特征要尽可能相似,不同类中的数据特征要有明显的区别。关联
27、分析:搜索系统中的所有数据,找出所有能把一组事件或数据项与另一组事件或数据项联系起来的规则,以获得预先未知的和被隐藏的信息。预测建模:一种统计或数据挖掘的方法,包括可以在结构化与非结构化数据中使用以确定未来结果的算法和技术,可为预测、优化、预报和模拟等许多业务系统所使用。3)数据可视化通过图形、图像等技术直观形象和清晰有效地表达数据,从而为发现数据隐含的规律提供技术手段。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)351.4.3 大数据的技术支撑大数据的技术支撑大数据的技术支撑有:计算速度的提高、存储成本的下降和对人工智能的需求,如图1.16所示。1.4 大数据简介大数据简介
28、数据库原理与应用(基于MySQL)36(1)计算速度的提高在大数据的发展过程中,计算速度是关键的因素。分布式系统基础架构Hadoop的高效性,基于内存的集群计算系统Spark的快速数据分析,HDFS为海量的数据提供了存储,MapReduce为海量的数据提供了并行计算,从而大幅度地提高了计算效率。大数据需要强大的计算能力支撑,中国国家工信部电子科技情报所所做的大数据需求调查表明:实时分析能力差、海量数据处理效率低等是目前中国企业数据分析处理面临的主要难题。(2)存储成本的下降新的云计算数据中心的出现,降低了企业的计算和存储成本,例如,建设企业网站,通过租用硬件设备的方式,不需要购买服务器,也不需
29、要雇用技术人员维护服务器,并可长期保留历史数据,为大数据做好基础工作。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)37(3)对人工智能的需求大数据让机器具有智能,例如,Google的AlphaoGo战胜世界围棋冠军李世石,阿里云小Ai成功预测出”我是歌手”的总决赛歌王。1.4.4 NoSQL数据库数据库在大数据和云计算时代,很多信息系统需要对海量的非结构化数据进行存储和计算,NoSQL数据库应运而生。1.传统关系数据库存在的问题传统关系数据库存在的问题随着互联网应用的发展,传统关系数据库在读写速度、支撑容量、扩展性能、管理和运营成本方面存在以下问题。(1)读写速度慢关系数据库
30、由于其系统逻辑复杂,当数据量达到一定规模时,读写速度快速下滑,即使能勉强应付每秒上万次SQL查询,硬盘I/O也无法承担每秒上万次SQL写数据的要求。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)38(2)支撑容量有限Facebook和Twitter等社交网站,每月能产生上亿条用户动态,关系数据库在一个有数亿条记录的表中进行查询,效率极低,致使查询速度无法忍受。(3)扩展困难当一个应用系统的用户量和访问量不断增加时,关系数据库无法通过简单添加更多的硬件和服务节点来扩展性能和负载能力,该应用系统不得不停机维护以完成扩展工作。(4)管理和运营成本高企业级数据库的License价格高,
31、加上系统规模不断上升,系统管理维护成本无法满足上述要求。同时,关系数据库一些特性,例如,复杂的SQL查询、多表关联查询等,在云计算和大数据中却往往无用武之地,所以,传统关系数据库已难以独立满足云计算和大数据时代应用的需要。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)392.NoSQL2.NoSQL的基本概念的基本概念NoSQL数据库泛指非关系型的数据库,NoSQL(Not Only SQL)指其在设计上和传统的关系数据库不同,常用的数据模型有Cassandra、Hbase、BigTable、Redis、MongoDB、CouchDB、Neo4j等。NoSQL数据库具有以下特点
32、:(1)读写速度快、数据容量大。具有对数据的高并发读写和海量数据的存储。(2)易于扩展。可以在系统运行的时候,动态增加或者删除节点,不需要停机维护。(3)一致性策略。遵循BASE(Basically Available,Soft state,Eventual consistency)原则,即Basically Available(基本可用),指允许数据出现短期不可用;Soft state(柔性状态),指状态可以有一段时间不同步;Eventual consistency(最终一致),指最终一致,而不是严格的一致。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)40(4)灵活的数据模
33、型。不需要事先定义数据模式,预定义表结构。数据中的每条记录都可能有不同的属性和格式,当插入数据时,并不需要预先定义它们的模式。(5)高可用性。NoSQL数据库将记录分散在多个节点上,对各个数据分区进行备份(通常是3份),应对节点的失败。3.NoSQL3.NoSQL的种类的种类随着大数据和云计算的发展,出现了众多的NoSQL数据库,常用的NoSQL数据库根据其存储特点及存储内容可以分为以下4类:(1)键值(Key-Value)模型一个关键字(Key)对应一个值(Value),简单易用的数据模型,能够提供快的查询速度、海量数据存储和高并发操作,适合通过主键对数据进行查询和修改工作,例如Redis模
34、型。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)41(2)列存储模型按列对数据进行存储,可存储结构化和半结构化数据,对数据进行查询有利,适用于数据倉库类的应用,代表模型有Cassandra、Hbase、BigTable。(3)文档型模型该类模型也是一个关键字(Key)对应一个值(Value),但这个值是以Json或XML等格式的文档进行存储,常用的模型有MongoDB、CouchDB。(4)图(Graph)模型将数据以图形的方式进行存储,记为G(V,E),V为结点(node)的结合,E为边(edge)的结合,该模型支持图结构的各种基本算法,用于直观地表达和展示数据之间的联系,
35、如Neo4j模型。1.4 大数据简介大数据简介数据库原理与应用(基于MySQL)424.NewSQL4.NewSQL的兴起的兴起现有NoSQL数据库产品大多是面向特定应用的,缺乏通用性,其应用具有一定的局限性,已有一些研究成果和改进的NoSQL数据存储系统,但它们都是针对不同应用需求而提出的相应解决方案,还没有形成系列化的研究成果,缺乏强有力的理论、技术、标准规范的支持,缺乏足够的安全措施。NoSQL数据库以其读写速度快、数据容量大、扩展性能好,在大数据和云计算时代取得迅速发展,但NoSQL不支持SQL,使应用程序开发困难,不支持应用所需ACID特性,新的NewSQL数据库将SQL和NoSQL的优势结合起来,代表的模型有VoltDB、Spanner等。1.4 大数据简介大数据简介