数据库扩展方法和系统技术方案

技术编号:33304905 阅读:11 留言:0更新日期:2022-05-06 12:14
本发明专利技术公开一种数据库扩展方法和系统,其中方法包括:分析用户的功能扩展需求,确定与所述功能扩展需求对应的至少一个项目以及所述至少一个项目对应的各属性表,所述属性表包括多类元数据的基础属性表和其中至少一类元数据的扩展属性表,所述多类元数据包括:自然人元数据、组织元数据、地址元数据、物元数据和事元数据;当所述至少一个项目为新项目时,在数据库中增加与所述新项目对应的所述多类元数据的基础属性表和其中至少一类元数据的扩展属性表。通过先分析确定与五种元数据的基础属性表和扩展属性表的关系,然后在数据库中增加相应的基础属性表和扩展属性表即可,扩展比较简单。较简单。较简单。

【技术实现步骤摘要】
数据库扩展方法和系统


[0001]本专利技术属于数据库
,尤其涉及一种数据库扩展方法和系统。

技术介绍

[0002]现有技术中,关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。
[0003]1.存储方式:传统的关系型数据库采用表格的储存方式,数据以行和列的方式进行存储,要读取和查询都十分方便。
[0004]2.存储结构:关系型数据库按照结构化的方法存储数据,每个数据表都必须对各个字段定义好(也就是先定义好表的结构),再根据表的结构存入数据,这样做的好处就是由于数据的形式和内容在存入数据之前就已经定义好了,所以整个数据表的可靠性和稳定性都比较高,但带来的问题就是一旦存入数据后,如果需要修改数据表的结构就会十分困难。
[0005]3.存储规范:关系型数据库为了避免重复、规范化数据以及充分利用好存储空间,把数据按照最小关系表的形式进行存储,这样数据管理的就可以变得很清晰、一目了然,当然这主要是一张数据表的情况。如果是多张表情况就不一样了,由于数据涉及到多张数据表,数据表之间存在着复杂的关系,随着数据表数量的增加,数据管理会越来越复杂。
[0006]4.扩展方式:由于关系型数据库将数据存储在数据表中,数据操作的瓶颈出现在多张数据表的操作中,而且数据表越多这个问题越严重,如果要缓解这个问题,只能提高处理能力,也就是选择速度更快性能更高的计算机,这样的方法虽然可以一定的拓展空间,但这样的拓展空间一定有非常有限的,也就是关系型数据库只具备纵向扩展能力。
[0007]5.查询方式:关系型数据库采用结构化查询语言(即SQL)来对数据库进行查询,SQL早已获得了各个数据库厂商的支持,成为数据库行业的标准,它能够支持数据库的CRUD(增加,查询,更新,删除)操作,具有非常强大的功能,SQL可以采用类似索引的方法来加快查询操作。
[0008]6.规范化:在数据库的设计开发过程中开发人员通常会面对同时需要对一个或者多个数据实体(包括数组、列表和嵌套数据)进行操作,这样在关系型数据库中,一个数据实体一般首先要分割成多个部分,然后再对分割的部分进行规范化,规范化以后再分别存入到多张关系型数据表中,这是一个复杂的过程。好消息是随着软件技术的发展,相当多的软件开发平台都提供一些简单的解决方法,例如,可以利用ORM层(也就是对象关系映射)来将数据库中对象模型映射到基于SQL的关系型数据库中去以及进行不同类型系统的数据之间的转换。
[0009]7.事务性:关系型数据库强调ACID规则(原子性(Atomicity)、一致性
(Consistency)、隔离性(Isolation)、持久性(Durability)),可以满足对事务性要求较高或者需要进行复杂数据查询的数据操作,而且可以充分满足数据库操作的高性能和操作稳定性的要求。并且关系型数据库十分强调数据的强一致性,对于事务的操作有很好的支持。关系型数据库可以控制事务原子性细粒度,并且一旦操作有误或者有需要,可以马上回滚事务。
[0010]8.读写性能:关系型数据库十分强调数据的一致性,并为此降低读写性能付出了巨大的代价,虽然关系型数据库存储数据和处理数据的可靠性很不错,但一旦面对海量数据的处理的时候效率就会变得很差,特别是遇到高并发读写的时候性能就会下降的非常厉害。
[0011]9.授权方式:关系型数据库常见的有Oracle,SQLServer,DB2,Mysql,除了Mysql大多数的关系型数据库如果要使用都需要支付一笔价格高昂的费用,即使是免费的Mysql性能也受到了诸多的限制。
[0012]关系型数据库设计的过程可大体分为四个时期七个阶段。
[0013](1)用户需求分析时期,主要是了解和分析用户对数据的功能需求和应用需求,是整个设计过程的基础,事关整个数据库应用系统设计的成败。
[0014](2)数据库设计时期,主要是将用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的数据模型,可用实体—联系模型来表示,然后将其转换为已选好的关系型数据库管理系统RDBMS所支持的一组关系模式并为其选取一个适合应用环境的物理结构,包括存储结构和存取方法。
[0015](3)数据库实现时期,包括数据库结构创建阶段和应用行为设计与实现阶段,是根据数据库的物理模型创建数据库、创建表、创建索引、创建聚簇等。
[0016](4)数据库运行与维护阶时期,最后一个阶段则是数据库应用系统经过试运行后即可投入正式运行。
[0017]在进行关系型数据库的设计过程中,要遵循以下几个原则,借此可以提高数据库的存储效率、数据完整性和可扩展性。
[0018]1.命名规范化
[0019]在概念模型设计中,对于出现的实体、属性及相关表的结构要统一。例如在数据库设计中,指定学生Sstudent,专指本科生,相关的属性有:学号、姓名、性别、出生年月等,及每个属性的类型、长度、取值范围等都要进行确定,这样就能保证在命名时不会出现同名异义或异名同义、属性特征及结构冲突等问题。
[0020]2.数据的一致性和完整性
[0021]在关系型数据库中可以采用域完整性、实体完整性和参照完整性等约束条件来满足其数据的一致性和完整性,用check、default、null、主键和外键约束来实现。
[0022]3.数据冗余
[0023]数据库中的数据应尽可能地减少冗余,这就意味着重复数据应该减少到最少。例如:若一个部门职员的电话存储在不同的表中,假设该职员的电话号码发生变化时,冗余数据的存在就要求对多个表进行更新操作,若某个表不幸被忽略了,那么就会造成数据不一致的情况。所以在数据库设计中一定要尽可能存在少地冗余。
[0024]4.范式理论
[0025]在关系数据库设计时,一般是通过设计满足某一范式来获得一个好的数据库模式,通常认为3NF在性能、扩展性和数据完整性方面达到了最好的平衡,因此,一般数据库设计要求达到3NF,消除数据依赖中不合理的部分,最终实现使一个关系仅描述一个实体或者实体间一种联系的目的。
[0026]专利技术人发现:上述数据管理模式至少存在以下缺陷:可扩展性差。当已确定的业务需求改变时,传统信息化方式在建设时会提前预留空间备用,但预留的空间总是有限的,永远也无法解决现实中无限变化的业务需求。一旦业务需求发生新的变化,对现有信息系统的改造会造成大量的混乱和错误,必须对信息系统重新设计,推倒重来才能适应新的业务需求。这导致传统信息系统的数据管理模式扩展性极差。

技术实现思路

[0027]本专利技术实施例旨在至少解决上述技术问题之一。
[0028]第一方面,本专利技术实施例提供一种数据库扩展方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库扩展方法,包括:分析用户的功能扩展需求,确定与所述功能扩展需求对应的至少一个项目以及所述至少一个项目对应的各属性表,所述属性表包括多类元数据的基础属性表和其中至少一类元数据的扩展属性表,所述多类元数据包括:自然人元数据、组织元数据、地址元数据、物元数据和事元数据;当所述至少一个项目为新项目时,在数据库中增加与所述新项目对应的所述多类元数据的基础属性表和其中至少一类元数据的扩展属性表,其中,所述数据库由各项目及对应的所述基础属性表和所述扩展属性表构成。2.根据权利要求1所述的方法,还包括:当所述至少一个项目为所述数据库中的旧项目时,比较所述至少一个项目与所述旧项目的各基础属性表和对应的各扩展属性表;将所述至少一个项目中的、未包含在所述旧项目的基础属性表和/或扩展属性表增加至所述数据库中。3.根据权利要求2所述的方法,其中,所述基础属性表和所述扩展属性表具有数据库时间戳,用于记录表中各条数据的更新时间。4.根据权利要求3所述的方法,其中,在比较所述至少一个项目与所述旧项目的各基础属性表和对应的各扩展属性表之后,所述方法还包括:若所述至少一个项目与所述旧项目中存在彼此记录数据不同的基础属性表和/或扩展属性表,在数据库中仅保留所述至少一个项目的时间戳最新的数据对应的基础属性表和/或扩展属性表。5.根据权利要求1

4中任一项所述的方法,其中,所述分析用户的功能扩展需求包括:获取用户的功能扩展需求的文字表述,对所述文字表述进行语义分析,基于语义分析的结果确定待扩展的至少一个项目以及与所述至少一个项目对应的各属性表。6.一种数据库扩展系统...

【专利技术属性】
技术研发人员:娄健
申请(专利权)人:北京华成智云软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1