用传统数据库系统管理空间数据,存在什么不足之处

作者&投稿:鲍居 (若有异议请与网页底部的电邮联系)
使用数据库系统的优点和缺点是什么~

  一、关系数据库系统的优点
  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.很多情况下,并非每条记录的图片都不一样,有时很多记录重复使用同一个图片,这时,可以单独对图片做一个数据库表,该表中设立一个ID字段,将每一个图片做唯一性的索引和存储。之后,在你要存放图片的数据表中存储图片的字段类型由Image改为int类型,在BCB设计中,将该int字段用LookUp的组合框查找来自存放图片的ID字段即可,这样,会减少因为图片的重复引用带来的问题。
另外,为了管理的方便,应该将图片放在数据库中,而不要放在文件中。

01、效率低

传统的数仓大多构建在Hadoop之上。这位传统的数仓带来了近乎无限的横向扩展能力,同时也造成了传统的数仓技术效率低的缺陷。效率低主要体现在以下几个方面。

  • 部署效率低:在部署Hive/HBase/Kylin之前,必须部署好Hadoop集群。和传统数据库相比,这个部署效率是非常低效的。

  • 运维效率低:Hive/HBase/Kylin基于Hadoop,Hadoop生态会带来一个非常严重的单点故障问题,即Hadoop体系中任何一个组件出现问题,都可能引起整个系统的不可用。使用传统的数仓对运维的要求非常高。

  • 计算效率低:主要体现在Hive和Kylin上,这两个数仓没有自己的存储引擎和计算引擎,这导致Hive和Kylin只能依靠堆机器实现复杂查询,而无法从数据本身下手。在大数据后期,一些以数据快速查询为目标而特殊设计的数据存储格式成为标准,这个现象才有所改观。而HBase的优化核心就是重新设计的存储引擎,使得HBase可以对数据本身进行查询速度的优化。

02、延迟高

构建在Hadoop之上的数仓引擎,除了效率低的缺点之外,还面临着高延迟的挑战。高延迟主要体现在以下几个方面。

  • 查询延迟高:使用Hive作为数仓,受限于HDFS的性能瓶颈,Hive的查询速度比较慢,难以支撑低延迟场景,无法应用在实时计算的场景中。

  • 写入数据延迟高:同样受限于HDFS,Hive的数据写入延迟也很高,这意味着数据无法实时写入Hive,从而无法支撑实时分析场景。

03、成本高

传统的数仓数仓引擎还会带来成本高的挑战,主要体现在以下几个方面.

  • 部署成本高:由于Hadoop的计算逻辑是通过堆计算资源的方式来摊销复杂查询的时间,因此如果需要达到一个比较理想的性能,必须要求集群中节点的数量达到一定的规模,否则因为计算效率低的特点,单机很容易成为性能瓶颈。这导致了Hive等基于Hadoop的数仓部署成本高的缺陷。

  • 运维成本高:集群服务器达到一定规模后,运维成本会指数级上升。同时,由于Hadoop中组件太多,任何一个组件的失效都有可能导致整个服务的不可用,因此运维团队必须包含所有组件的运维人员,否则运维团队有可能很好地执行任务。这也极大地提高了运维团队的人力成本。

  • 存储成本高:Hadoop的HDFS为了避免集群中服务器故障从而导致的不可用的情况,默认使用三副本策略存储数据,即数据会保存三份。这会极大地提高存储成本。即使是新一代的Hadoop采用了EC纠删码技术降低了副本数量,但使用场景有限只适合在冷数据存储中使用,对于经常需要查询的热数据,并不适合采用该方案。

  • 决策成本高:传统的大数据由于部署成本高,导致企业在做决策时面临比较大的决策成本,一方面是前期投入太大,短期内看不到效果,长期以来效果如何也很难说清楚。另一方面是即使企业下定决心来建设数仓,昂贵的基础设施和专业技术人员的缺乏也会造成很长的建设周期,长的建设周期又会带来很多不可预知的变数,最终影响企业的决策。



早期的数据库管理都是采用文件系统。在文件系统中,数据按其内容、结构和用途组成若干命名的文件。文件一般为某个用户或用户组所有,但可供其他用户共享。用户可以通过操作系统对文件进行打开、读、写和关闭等操作。

文件系统有明显的缺点:
(1).编写应用程序很不方便。
应用程序的设计者必须对所用的文件的逻辑及物理结构有清楚的了解。操作系统 只能打开、关 闭、读、写等几个低级的文件操作命令,对文件的查询修改等处理都须在应用程序内解决。应用程序还 不可避免地在功能上有所重复。在文件系统上编写应用程序的效率不高。
(2).文件的设计很难满足多种应用程序的不同要求,数据冗余经常是不可避免的。
为了兼顾各种应用程序的要求,在设计文件系统时,往往不得不增加冗余的数据。数据冗余不仅浪费空间,而且会带来数据的不一致性(inconsistency).在文件系统中没有维护数据一致性的监控机制,数据的一致性完全有用户负责维护。在简单的系统中勉强能应付,但在大型复杂的系统中几乎是不可能完成的。
(3).文件结构的修改将导致应用程序的修改,应用程序的维护量将很大。
(4).文件系统不支持对文件的并发访问(concurrent access)。
(5).数据缺少统一管理,在数据的结构、编码、表示格式、命名以及输出格式等方面不容易做到规范化、标准化;数据安全和保密方面,也难以采取有效的办法。

1)空间数据记录是变长的,而传统的关系模型只存储定长记录2)空间数据的表达 需要相应的空间数据类型,传统的DBMS难以支持3)对空间数据的关联、连通、包含、叠加等基本操作,关系模型一般都难以实现。4)传统DBMS 的B或B+树索引,对空间数据索引效率低下:5) GHS数据需要更复杂的安全维护、数据完整性(如几何完整性)维护,一般的DBMS难以保证;6) 传统的封锁机制,不能满足空间数据的长事务处理。


数据库管理系统的主要功能有哪些?
数据库管理系统的主要功能如下:数据定义:提供数据定义语言DDL,可以定义数据库的三级模式结构、两级映像以及完整性约束和保密限制等约束。数据操作:提供数据操作语言DML,实现对数据的追加、删除、更新、查询等操作。数据库的运行管理:包括多用户环境下的并发控制、安全性检查和存取限制控制、完整性检查和...

常见的数据库管理系统
3、Informix Informix是IBM公司出品的关系数据库管理系统。作为个集成解决方案,它被定位为作为IBM在线事务处理旗舰数据服务系统。IBM对Informix和DB2都有长远的规划,两个数据库产品互相吸取对方的技术优势。4、Microsoft SQL Server Microsoft SQL Server是Microsoft公司推出的关系型数据库管理系统。具有使用方便...

简述传统的数据储存与管理技术有哪些?
数据库存储:数据库是一种组织和管理数据的软件系统,它可以存储和管理大规模的数据,并提供数据查询、分析和报告等功能。文件系统:文件系统是一种组织和管理文件的软件系统,它可以对文件进行创建、读取、更新和删除等操作。文件系统通常用于管理计算机中的文件和数据。这些传统的数据储存与管理技术已经得到...

数据库管理系统的功能是什么?
其软件主要包括操作系统、各种宿主语言,实用程序以及数据库管理系统。数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这些数据为多个应用服务,独立于具体的应用程序。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据库管理系统是一种系统软件,它的...

数据库管理系统的主要功能有
1、数据定义功能:DBMS提供了数据定义语言(DDL),用户可以通过它方便地定义数据库中的数据对象。2、数据操作功能:DBMS还提供数据操作语言(DML),用户可以使用DML操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改。3、数据库的运行和管理:数据库在建立、使用和维护时,由数据库管理系统统一管理...

数据库管理系统的特点有哪些
本教程操作环境:windows7系统、DELL G3电脑。数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的...

什么是数据库管理系统?
数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。 数据库管理系统的功能简介: 1 . 主要是对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它可使多个应用程序和用户用不同的方法...

试述数据 数据库 数据库管理系统 数据库系统的概念以及四者之间的关系...
当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。三、数据库管理系统 1、数据库管理系统(Database Management System)是一种操纵和管理数据...

什么是数据库管理系统
词语解释数据库管理系统(database management system)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它提供多种功能,可使多个...

什么是数据库管理系统?它的主要功能是什么
数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它可使多个应用程序和用户用不同的...

清水河县14744095126: 用传统数据库系统管理空间数据,存在什么不足之处 -
嵇待福路: 早期的数据库管理都是采用文件系统.在文件系统中,数据按其内容、结构和用途组成若干命名的文件.文件一般为某个用户或用户组所有,但可供其他用户共享.用户可以通过操作系统对文件进行打开、读、写和关闭等操作. 文件系统有明...

清水河县14744095126: 用传统数据库储存和管理多媒体数据,如音频、视频、图像等,存在哪些主要的问题? -
嵇待福路: 用数据库管理图片非常好,我一直这样用,但是考虑数据库可能会因此变的庞大,但是,有几点减少空间的方法可以考虑一下: 1.将图片处理的小一点; 2.很多情况下,并非每条记录的图片都不一样,有时很多记录重复使用同一个图片,这时,可以单独对图片做一个数据库表,该表中设立一个ID字段,将每一个图片做唯一性的索引和存储.之后,在你要存放图片的数据表中存储图片的字段类型由Image改为int类型,在BCB设计中,将该int字段用LookUp的组合框查找来自存放图片的ID字段即可,这样,会减少因为图片的重复引用带来的问题.另外,为了管理的方便,应该将图片放在数据库中,而不要放在文件中.

清水河县14744095126: 4、空间数据库中,矢量数据的管理方式有哪些,各有什么优缺点? -
嵇待福路: 1、文件-关系数据库混合管理方式 不足: ①属性数据和图形数据通过ID联系起来,使查询运算,模型操作运算速度慢; ② 数据分布和共享困难; ③属性数据和图形数据分开存储,数据的安全性、一致性、完整性、并发控制以及数据损坏后的...

清水河县14744095126: ARCGIS 可以打开的文件格式有哪些 -
嵇待福路: ArcGIS有三种文件格式: 1、Shapefile数据ShapeFile是ArcView GIS 3的原生数据格式. 属于简单特征类.它使用点、线和多边形来存储特征的形状,但不能存储拓扑关系.它具有显示简单快速的优点.ShapeFile由几个文件组成.空间信息和...

清水河县14744095126: 空间数据库与GIS的区别 -
嵇待福路: 空间数据库指的是地理信息系统在计算机物理存储介质上存储的与应用相关的地理空间数据的总和,一般是以一系列特定结构的文件的形式组织在存储介质之上的.空间数据库的研究始于20 世纪 70年代的地图制图与遥感图像处理领域,其目的是为了有效地利用卫星遥感资源迅速绘制出各种经济专题地图.由于传统的关系数据库在空间数据的表示、存储、管理、检索上存在许多缺陷,从而形成了空间数据库这一数据库研究领域.而传统数据库系统只针对简单对象,无法有效的支持复杂对象(如图形、图像).GIS中使用的数据库多数为空间数据库,GIS和空间数据库是两个不同的概念,没有区别,它们之间有一定的联系.

清水河县14744095126: 传统关系型数据库在处理空间问题时的局限性主要体现在哪些方面 -
嵇待福路: 先写一个并发控制子系统.里面要提供各种各样的闩锁.包括具有不同相容性矩阵的,有优先队列或者没有的,能指数后退或者不能的,全局可追踪的或者不可追踪的,等等等等.然后写一个存储管理子系统.在这里你可以决定你的数据库的外...

清水河县14744095126: 5 - 氟尿嘧啶是哪种碱基的结构类似物 - 上学吧找答案
嵇待福路: SQL> conn sys/xin as sysdba 已连接. SQL> set wrap off SQL> set linesize 100 1. 一些基本的操作 (1) 查看表空间: SQL> select * from v$tablespace; (2) 查看数据文件: SQL> select * from v$datafile; (3) 查看tablespace 和data files之间的对...

清水河县14744095126: 空间数据和地理数据的区别 -
嵇待福路: 非空间数据即属性数据. 数据是一个GIS应用系统的最基础的组成部分.空间数据是GIS的操作对象,是现实世界经过模型抽象的实质性内容确良.图3展示了GIS对现实世界的信息表达与分层. 一个GIS应用系统必须建立在准确合理的地理数据...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网