Ⅰ 数据库关系模型的主要优点有
两种典型的GIS数据模型
1、拓扑关系数据模型
拓扑关系数据模型以拓扑关系为基础组织和存储各个几何要素,其特点是以点、线、面间的拓扑连接关系为中心,它们的坐标存贮具有依赖关系。该模型的主要优点是数据结构紧凑,拓扑关系明晰,系统中预先存储的拓扑关系可以有效提高系统在拓扑查询和网络分析方面的效率,但也有不足:
对单个地理实体的操作效率不高。由于拓扑数据模型面向的是整个空间区域,强调的是各几何要素之间的连接关系,在另一方面对具有完整、独立意义的地理实体作为个体存在的事实没有足够的重视,因此增加、删除、修改某一地理实体时,将会牵涉到一系列文件和关系数据库表格,这样不仅使程序管理工作变得复杂,而且会降低系统的执行效率。
难以表达复杂的地理实体。由于拓扑关系组织的要求,一个完整的简单实体在拓扑关系模型中有时需要被分解为多个几何要素(比如一条公路本是一个完整的实体,但为了记录其拓扑邻接信息,只有对其在与其它公路实体邻接的地方进行分段,这样一个完整的实体就被分成多个几何要素。所有的实体都进行如此处理,所以我们说拓扑数据模型是面向整个区域、面向不被分割的几何要素的,而不是面向用户眼中的地理实体)。复杂地理实体由多个简单实体组合而成,自然也常常被分解,拓扑数据模型的整体组织特性注定了它不可能有效地表达这一由多个独立实体构成的有机集合体。
难以实现快速查询和复杂的空间分析。由于在拓扑数据模型中,地理实体被分解为点、线、面基本几何要素存储在不同的文件和关系表中,因而凡涉及到独立地理实体的操作、查询和分析都将花费较多的CPU时间,在大区域的复杂空间分析方面表现尤为明显。
局部更新困难,系统难于维护与扩充。由于地理空间的数据组织和存储是以基本几何要素(点、弧段和多边形)为单元进行的,系统中存储的复杂拓扑关系是GIS工作的数据基础,当局部一些实体发生变动时,整层拓扑关系将不得不随之重建,这样的系统牵一发而动全身,在维护和扩充方面需要更多的精力,并且容易出错。
值得说明的是,拓扑关系数据模型也能以面向对象的方式实现,但此时面向的对象是不被其它要素从中间分割的几何要素,往往是一个独立地理实体的一部分,而不是一个完整的、独立的地理实体。这一点是拓扑关系数据模型与下一节面向实体数据模型本质不同的重要表现之一。
2、面向实体的数据模型
里称为“面向实体”,是为了强调这种数据模型是以单个空间地理实体为数据组织和存储的基本单位的。
与上述拓扑模型相反,该模型以独立、完整、具有地理意义的实体为基本单位对地理空间进行表达。在具体组织和存储时,可将实体的坐标数据和属性数据(如建立了部分拓扑,拓扑关系也放在表中保存)分别存放在文件系统和关系数据库中,也可以将二者统一存放在关系数据库中(可以将坐标数据和属性数据放在同一个表中,也可以将二者分成两个表,ESRI公司SDE的存贮模式是分成四个表格,它还增加了一个Layers表和一个空间索引表。Layers表位于服务器端,用于层的管理和维护;空间索引表(服务器端)采用网格索引,用于实体的快速搜索)。
面向实体的数据模型在具体实现时采用的是完全面向对象的软件开发方法,每个对象(独立的地理实体)不仅具有自己独立的属性(含坐标数据),而且具有自己的行为(操作),能够自己完成一些操作。虽然面向实体的数据模型在内部组织上可以按照拓扑关系进行,但是作者这里所说的模型强调对象的坐标存贮之间(尤其是面与线的坐标存贮)不具有依赖关系,这是它与拓扑关系模型的本质不同点。该模型能够很好地克服拓扑关系数据模型的几个缺点,具有实体管理、修改方便,查询检索、空间分析容易的优点,更重要的是它能够方便地构造用户需要的任何复杂地理实体,而且这种模式符合人们看待客观世界的思维习惯,便于用户理解和接受。同时,面向实体的数据模型自然地具有系统维护和扩充方便的优点。
这种模型是当今流行GIS软件采用的最新数据模型,但也有一些缺点:
拓扑关系需临时构建。由于面向实体的数据模型是以地理实体为中心的,并未以拓扑关系为基础组织、存储地理实体,表达地理空间,因此拓扑关系并不是一开始就存在,而是在需要时才临时导出各种拓扑关系,这需要消耗一定的系统资源。也许有观点认为,以实体为单位组织数据时,也可以将拓扑关系一开始就保存在实体的属性表中,拓扑关系并不一定是临时构建出来的。但仔细分析便可发现,这种方案对由多个几何要素组成的实体(如一条组成要素不同的河流)不可行,因为拓扑关系不能有效准确地记录。实际上这种方案只对由一个几何要素组成的实体适用,但其本质上仍是拓扑关系数据模型,其缺点表征与上面2.1节描述的完全相同,因而不是真正的面向实体数据模型。
动态分段、网络分析效率降低。在结点---弧段---多边形拓扑关系链中,显式的拓扑表有四个:结点---弧段表,弧段---结点表,弧段---多边形表和多边形---弧段表。有了这四个关系表,我们就能直接查找任意结点、弧段和多边形的拓扑属性,便于进行动态分段和网络分析等其它与拓扑关系有关的拓扑分析,基于拓扑数据模型的GIS可以很方便地做到这一点。但由于将四个拓扑表全部存贮会使系统的空间开销成倍增大,因此一些软件只存贮其中2个(如早期的System 9版本)或将弧段—结点、弧段—多边形表合二为一(Arc/Info 8.0以前版本),被隐含的表可由显示存在的表导出。即便这样,基于拓扑数据模型的GIS在涉及拓扑关系的查询和分析上仍然有较高的效率,而面向实体的数据模型由于要根据需要临时构建拓扑关系,自然会使拓扑查询和分析的效率降低。当然构建好的拓扑关系可存放起来,供以后使用。
实体间的公共点和公共边重复存贮。由于面向实体的数据模型是以地理实体为基本单位进行数据组织和空间表达的,对每一个地理实体都进行完整存贮(存贮到点一级),在存贮坐标时是各对象独立存贮,不再依赖其它对象,那么就必然会导致实体间共有的公共点和公共边重复存贮。
难以将管理、分析和处理定位到几何要素一级。几何要素是指点、弧段和多边形等简单图形,有时构成同一实体的各个几何要素之属性差别较大(例如组成一块宗地的各边之面积不一样,某一交通闭合环路的组成道路类型不一样等),需要在地理实体的下一级---几何要素一级上进行处理,拓扑数据模型可以直接进行处理,而面向实体的数据模型则需要首先对相关地理实体进行定位、分解,因而降低系统在这方面的性能。从本质上分析,我们不难得到,由于该种模型认为组成同一实体的几何要素之属性相同,因而忽略了几何要素间的属性差异,从而导致在系统存贮和处理机制上难以定位到几何要素一级。
难以实现跨图层的拓扑查询和分析。如果这个问题放在拓扑关系模型中,则比较容易解决,因为各个要素的邻接要素已事先存在,不仅已经是分层的,而且具有实际的地理属性,因此只要顺藤摸瓜查找邻接要素并取得其地理属性即可。但对于面向实体的数据模型,则不能有效地解决,因为临时生成拓扑关系时其中的几何要素一般属于同一层,不可能自动生成跨图层的地理属性,必须做进一步的处理方才有可能解决。显然,这种方法的效率不高。
Ⅱ 简述使用数据库应用系统的优势
1、读取和查询都十分方便
传统的关系型数据库采用表格的储存方式, 数据以行和列的方式进行存储,要读取和查询都十分方便。而非关系型数据不适合这样的表格存储方式,通常以数据集的方式,大量的数据集中存储在一起,类似于键值对、图结构或者文档。
2、存储结构稳定
关系型数据库按照结构化的方法存储数据, 每个数据表都必须对各个字段定义好(也就是先定义好表的结构),再根据表的结构存入数据,这样做的好处就是由于数据的形式和内容在存入数据之前就已经定义好了,所以整个数据表的可靠性和稳定性都比较高。
3、存储规范
关系型数据库为了避免重复、规范化数据以及充分利用好存储空间,把数据按照最小关系表的形式进行存储,这样数据管理的就可以变得很清晰、一目了然,当然这主要是一张数据表的情况。
如果是多张表情况就不一样了,由于数据涉及到多张数据表,数据表之间存在着复杂的关系,随着数据表数量的增加,数据管理会越来越复杂。而Nosql数据库的数据存储方式是用平面数据集的方式集中存放,虽然会存在数据被重复存储,从而造成存储空间被浪费的问题。
4、存储资源
NoSQL数据库由于使用的是数据集的存储方式,它的存储方式一定是分布式的,它可以采用横向的方式来开展数据库,也就是可以添加更多数据库服务器到资源池,然后由这些增加的服务器来负担数据量增加的开销。
5、实现了数据共享
数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。
6、减少了数据的冗余度
同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。
Ⅲ 数据库关系模型有哪些优缺点
关系模型数据库的优点:
1、关系模型和格式化模型不同,它是简历在严格的数学概念的基础上的。
2、关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据库的检索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。
3、关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
关系模型数据库的缺点:
1、由于存取路径岛屿用户是隐蔽的,查询效率往往不如格式化数据模型。
2、为了提高性能,数据库管理系统必须到用户的查询请求进行优化,因此增加了开发数据库管理系统的难度。
(3)关系数据库的优势介绍扩展阅读:
其他数据库的优缺点:
层次数据库的优点:
1、数据结构比较简单清晰。
2、层次数据库的查询效率高。因为层次模型中记录之间的联系用有向边表示,这种练习在DBMS中常常用指针来实现,因此这种练习也就是记录之间的存取路径。当药存取某个节点的记录值,DBMS就沿着这一条路径很快找到该记录值,所以层次数据库的性能优于关系数据库,不低于网状数据库。
3、层次数据模型提供了良好的完整性支持。
层次数据库的缺点:
1、现实世界中很多联系都是非层次性的。
2、对插入和产出操作的限制比较多,因此应用程序的编写比较复杂、
3、由于结构严密,层次命令趋于程序化。
Ⅳ 关系数据库有什么优点呢
操作方便,
通过应用程序和后台联结,方便了用户的对数据的操作,特别是没有编程基础的人
易于维护
丰富的完整性:实体完整性、参照完整性和用户定义的完整性,大大降低了数据的冗余,和数据不一致的概率
便于访问数据
提供了诸如视图,存储过程,触发器,索引等对象,
更安全,更快捷
权限的分配,使其较以往的数据库在安全性上要高的多,
Ⅳ 关系数据库的介绍
关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。每个表格(有时被称为一个关系)包含用列表示的一个或更多的数据种类。 每行包含一个唯一的数据实体,这些数据是被列定义的种类。当创造一个关系数据库的时候,你能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。而SQL语言是标准用户和应用程序到关系数据库的接口。其优势是容易扩充,且在最初的数据库创造之后,一个新的数据种类能被添加而不需要修改所有的现有应用软件。目前主流的关系数据库有oracle、db2、sqlserver、sybase、mysql等。
Ⅵ 使用数据库系统有什么好处
一、关系数据库系统的优点
a.灵活性和建库的简单性:从软件开发的前景来看,用户与关系数据库编程之间的接口是灵活与友好的。目前在多数RDDMS产品中使用标准查询语言SQL,允许用户几乎毫无差别地从一个产品到另一个产品存取信息。与关系数据库接口的应用软件具有相似的程序访问机制,提供大量标准的数据存取方法。
b.结构简单:从数据建模的前景看,关系数据库具有相当简单的结构(元组),可为用户或程序提供多个复杂的视图。数据库设计和规范化过程也简单易行和易于理解。由于关系数据库的强有力的、多方面的功能,已经有效地支持许多数据库纳应用。
二、关系数据库系统的缺点
a.数据类型表达能力差:从下一代应用软件的发展角度来看,关系数据库的根本缺陷在于缺乏直接构造与这些应用有关的信息的类型表达能力,缺乏这种能力将产生以下有害的影响,例如:大多数RDBMS产品所采用的简单类型在重构复杂数据的过程中将会出现性能问题;数据库设计过程中的额外复杂性;RDBMS产品和编程语言在数据类型方面的不协调。
大多数现代的RDBMS产品已成熟地用于商务和财政方面,而这些领域不要求很高和很复杂的数据模型。虽然这些产品多多少少克服了一些以上所述的缺点,但从理论上看关系数据模型不直接支持复杂的数据类型,这是由于第一范式的要求,所有的数据必须转换为简单的类型,如整数、实数、双精度数和字符串。
对于工程应用来说,这种不能支持复杂数据类型的典型结果就是需要额外地分解数据结构工作,这些被分解的结构不能直接表示应用数据,且从基本成分重构时也非常繁琐和费时间。
b.复杂查询功能差:关系数据库系统的某些优点也同时是它的不足之处。虽然SQL语言为数据查询提供了很好的定义方法,但当用于复杂信息的查询时可能是非常繁琐的。此外,在工程应用时规范化的过程通常会产生大量的简单表。在这种环境下由存取信息产生的查询必须处理大量的表和复杂的码联系以及连接运算。
除非这些查询以固定的例行程序方式提供,否则用户就必须对SQL非常熟悉,以便适当地浏览数据库,查出所需的信息。然而,一旦查询方式按固定例行程序方式进行,用户最终就进行应用软件的常规维护。但应用或人机接口软件的变化又可能要求经常修改例行的查询,数据库结构的变化也可能导致例行查询程序以及应用或人机接口软件的失效。由于这些原因,关系数据库系统的维护开销可能是很大的。
由于关系数据库不能提供足够的构造能力及性能方面的原因,在进行较复杂的数据库设计过程中,不可能将许多工程问题直接分解成一些简单的部分。由于缺乏直接指针存取方法,所以查询有关的信息需要花费时间。
c.支持长事务能力差;由于RDBMS记录锁机制的颗粒度限制,对于支持多种记录类型的大段数据的登记和检查来说,简单的记录级的锁机制是不够的,但基于键值关系的较复杂的锁机制来说却很难推广也难以实现。
d.环境应变能力差:在要求系统频繁改变的环境下,关系系统的成本高且修改困难。在工程应用中支持"模式演变"(schema evolution)的功能是很重要的,而RDBMS不容易支持这种功能。另外,关系数据库和编程语言所提供的数据类型的不一致,使得从一个环境转换到另一个环境时需要多至30%的附加代码。
三、面向对象数据库系统的优点
a.能有效地表达客观世界和有效地查询信息:面向对象方法综合了在关系数据库中发展的全部工程原理、系统分析、软件工程和专家系统领域的内容。面向对象的方法符合一般人的思维规律、即将现实世界分解成明确的对象,这些对象具有属性和行为。系统设计人员用ODBMS创建的计算机模型能更直接反映客观世界,最终用户不管是否是计算机专业人员,都可以通过这些模型理解和评述数据库系统。
工程中的一些问题对关系数据库来说显得太复杂,不采取面向对象的方法很难实现。从构造复杂数据的前景看,信息不再需要手工地分解为细小的单元。ODBMS扩展了面向对象的编程环境,该环境可以支持高度复杂数据结构的直接建模。
b.可维护性好:在耦合性和内聚性方面,面向对象数据库的性能尤为突出。这使得数据库设计者可在尽可能少影响现存代码和数据的条件下修改数据库结构,在发现有不能适合原始模型的特殊情况下,能增加一些特殊的类来处理这些情况而不影响现存的数据。如果数据库的基本模式或设计发生变化,为与模式变化保持一致,数据库可以建立原对象的修改版本。这种先进的耦合性和内聚性也简化了在异种硬件平台的网络上的分布式数据库的运行。
c.能很好地解决"阻抗不匹配"(impedance mismatch)问题。面向对象数据库还解决了一个关系数据库运行中的典型问题:应用程序语言与数据库管理系统对数据类型支持的不一致问题,这一问题通常称之为阻抗不匹配问题。
四、面向对象数据库系统的缺点
a.技术还不成熟。面向对象数据库技术的根本缺点是这项技术还不成熟,还不广为人知。与许多新技术一样,风险就在于应用。从事面向对象数据库产品和编程环境的销售活动的公司还不令人信服,因为这些公司的历史还相当短暂,就该十几年前关系数据库的情况一样。ODBMS如今还存在着标准化问题,由于缺乏标准化,许多不同的ODBMS之间不能通用。此外,是否修改SQL以适应面向对象的程序,还是用新的对象查询语言来代替它,目前还没有解决,这些因素表明随着标准化的出现,ODBMS还会变化。
b.面向对象技术需要一定的训练时间:有面向对象系统开发经验的公司的专业人员认为,要成功地开发这种系统的关键是正规的训练,训练之所以重要是由于面向对象数据库的开发是从关系数据库和功能分解方法转化而来的,人们还需要学习一套新的开发方法使之与现有技术相结合。此外,面向对象系统开发的有关原理才刚开始具有雏形,还需一段时间在可靠性、成本等方面令人可接受。
c.理论还需完善:从正规的计算机科学方面看,还需要设计出坚实的演算或理论方法来支持ODBMS的产品。此外,既不存在一套数据库设计方法学,也没有关于面向对象分析的一套清晰的概念模型,怎样设计独立于物理存储的信息还不明确。
面向对象数据库和关系数据库系统之间的争论不同于70年代关系数据库和网状数据库的争论,那时的争论是在同一主要领域(即商业事务应用)中究竟是谁代替谁的问题。现在是肯定关系数据库系统基本适合商业事务处理的前提下,对非传统的应用,特别是工程中的应用用面向对象数据库来补充不足的问题。面向对象数据库系统将成为下一代数据库的典型代表,并和关系数据库系统并存(而不是替代)。它将在不同的应用领域支持不同的应用需求。
Ⅶ 关系数据模型具有哪些优点
(1)关系模型与非关系模型不同,它有严格的数学理论根据。
(2)数据结构简单、清晰,用户易懂易用,不仅用关系描述实体,而且用关系描述实体间的联系,此外,对数据的操作结果也是关系。(3)关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库建立和开发的工作。
Ⅷ 什么是关系数据库 带你深入了解关系数据库
1、关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。
2、关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。每个表格(有时被称为一个关系)包含用列表示的一个或更多的数据种类。 每行包含一个唯一的数据实体,这些数据是被列定义的种类。
3、当创造一个关系数据库的时候,你能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。而SQL语言是标准用户和应用程序到关系数据库的接口。其优势是容易扩充,且在最初的数据库创造之后,一个新的数据种类能被添加而不需要修改所有的现有应用软件。主流的关系数据库有oracle、db2、sqlserver、sybase、mysql等。