用于在RDBMS中的记录上创建用户自定义可变大小标签的装置和方法制造方法及图纸

技术编号:16049005 阅读:18 留言:0更新日期:2017-08-20 08:43
本发明专利技术公开了一种在RDBMS中的记录上创建用户自定义可变大小标签。在一个实施方式中,当创建一个表时,我们可以创建具有“TAG”数据类型的一列。所述称为“TAG”的新数据类型存储非单记录的单列内的各种值。

【技术实现步骤摘要】
【国外来华专利技术】用于在RDBMS中的记录上创建用户自定义可变大小标签的装置和方法
本文描述的主题大体上涉及数据库管理系统,更具体地涉及一种在关系数据库管理系统(relationaldatabasemanagementsystem,RDBMS)中的记录上创建用户自定义可变大小标签的装置和方法。
技术介绍
数据库系统通常用于应答请求所存储的数据库中信息的查询。一个查询可定义为对数据库中表示的数据和数据关系的一个逻辑表达,并且能够确定数据库中子集。在最新发展中,数据库系统使单个查询执行能够并行运行。目前存在两种占主导地位的数据库技术,即模式绑定关系存储和非模式绑定非关系存储(还大致称为nosql,键值(Key-Value,KV)存储)。NoSQL(通常解释为非关系SQL)数据库提供一种数据存储和检索的机制,这种机制通过方法而不是关系数据库中使用的表格关系来建模。NoSQL数据库所用的数据结构(例如键值、图形或文档)不同于关系数据库中所用的数据结构,使得一些操作在NoSQL中执行得快,而一些操作在关系数据库中执行得快。随着互联网、数据库和计算机技术使用的进步,RDBMS的关键需求之一是给记录加标签的能力。典型用例可以存储标签、时间轴信息、图片等等。历史/时间轴信息对安全性考虑非常有用,其中必须根据历史信息,如在历史使用标准的基础上提示动态密码,采取某安全性措施。类似地,特定人的不同资格/习惯对记录关于一个人/员工的详细信息可能非常有用。这种情况下的主要挑战在于,标签的数量对于不同的记录来说是不同的,数据库模式无法确定这个最大数量。因此,提供可由SQL操作的“tag”机制的能力是有待解决的关键问题。为了实现上述提及的需要并解决现有技术中上述提及的问题,提供了各种方案,其中一些包括但不限于:如果单列需要存储多个数据条目,有一种称为BLOB(如上所述)的数据类型。该数据类型存储可变长度二进制字符串格式的值。为了存储任何用途的任何种类的信息,RDBMS允许创建具有列字段集合的‘关系/表’。各个列字段按照该表存储某类特定值。根据待存储的值的类型,每列应声明具有对应数据类型。然而,在一些情况下,键值(key-value,KV)存储的某些特性对RDBMS技术有用。RDBMS通过提供“BLOB”(或者称为二进制大对象、基本大对象(binarylargeobject,basiclargeobject,BLOB)、二进制Blob或BLOb)技术来解决该问题。Blob是作为单个实体存储在数据库管理系统中的二进制数据的集合。Blob通常是图像、音频或其它多媒体对象,但是二进制可执行代码有时也存储为blob。然而,关键局限性是其缺乏查询能力。提供另一方案是为了使数组数据类型存储单列内的多个数据。然而,现有技术中的上述提及的方案和其它现有方案具有至少两个下面提及的主要问题,包括但不限于:BLOB数据类型的主要局限性是其缺乏查询能力;以及使用数组数据类型,不存在直接可能的方法来维护记录的唯一性(如果需要)或移除记录的任何部分。
技术实现思路

技术实现思路
的提供是为了引入与一种在RDBMS中的记录上创建用户自定义可变大小标签的装置和方法有关的概念,这在下文的具体实施方式中进一步描述。本
技术实现思路
不旨在确定所要求保护得主题的基本特征,也不旨在确定或限制所要求保护得主题的范围中使用。技术问题:需要提供一种能力来提供可由SQL操作的有效加标签机制。此外,还需要提供一种能够存储任何用途的任何种类的信息并且具有灵活的查询能力的新数据类型。所提供的数据类型必须处理由任何传统数据类型执行的所有不同类型的操作,所述操作可包括但不限于更新、删除、添加等。在一个示例中,技术问题可通过以下示例得到最好解释。CREATETABLEPERSON(IDINT;NAMECHAR[100];BOOKS_READINTARRAY[];)现在,考虑以下一些问题语句:1.现在,假设用户已经插入值为(100,“xyz”,“A”)的记录。现在,如果又需要为同一个人“xyz”添加新书“B”,那么需要更新字段BOOKS_READ。2.现在,考虑将许多书添加给人“xyz”,这些书包括“A”。现在,如果未来又试图添加相同的书,则无法避免需要对唯一性进行维护。3.如果未来需要从数组数据类型列中移除一些书,则同样没有办法维护唯一性。鉴于上述提及的问题,需要一种机制来支持新数据类型,所述机制可以无缝地对列内的可变元素执行所有种类的操作,像普通数据类型一样应用,包括新元素添加、现有元素移除、避免重复条目等等。技术方案:为了解决现有技术中上述提及的问题和其它问题,公开了一个用以存储非单记录的单列内的各种值的称为“TAG”的新数据类型的新概念。此外,新数据类型创建数据类型为TAG的列以存储可变数量的元素字段并且分别通过指定“NONUNIQUE”约束或省略约束允许将非唯一或唯一记录保存在单记录的TAG列中。为了响应接收到的查询,所提供的数据类型处理或能够处理由任何传统数据类型执行的所有不同类型的操作,所述操作可包括但不限于更新、删除、添加等等。本专利技术提供了一种技术方案并且通过使数据库能够处理可变长度属性以实现更快且高效访问数据库中存在的数据来获得技术效果,而且还提供了用户友好查询语法以实现上述技术方案。多个方面提供了一种使用集群缓存执行数据库查询的并行优化的系统和方法。技术方案如下所述。一方面,公开了一种数据处理装置,用以为了响应至少一个数据库查询而在运行时动态地创建称为“TAG”或“tag”的新数据类型,以便对数据库执行至少一个操作。所述数据类型在模式绑定关系存储和/或非模式绑定非关系存储中使用。所述数据处理装置包括处理器和耦合至所述处理器的存储器,所述处理器用于执行存在于所述存储器中的多个指令,当执行所述多个指令时,所述处理器可用于接收所述数据查询;所述数据处理装置用于创建所述称为“TAG”/“tag”的新数据类型,所述新数据类型用于生成一列以将多个值存储在非单记录的单列内,从而使查询能力在数据库内实现。另一方面,公开了一种由数据处理装置执行的要在模式绑定关系存储和/或非模式绑定非关系存储中使用的方法,用以为了响应至少一个数据库查询而在运行时动态地创建称为“TAG”或“tag”的新数据类型,以便对数据库执行至少一个操作。所述方法包括:接收所述数据库查询;以及创建所述称为“TAG”/“tag”的新数据类型,所述新数据类型用于生成一列以将多个值存储在非单记录的单列内,从而使查询能力在所述数据库内实现。在本专利技术的再一方面,当创建一个表时,所述提出的机制创建“TAG”数据类型的一列。在一个实施方式中,通过使用上述提及的技术方案,本专利技术提供一种基于用户请求的操作的机制,用以在内部将所述查询转换为TAG数据类型的合适句柄。在一个实施形式中,通过使用上述提及的技术方案,本专利技术提供了一种机制,允许所有其它种类的操作和任何种类的查询以无缝方式进行,像任何其它数据类型一样。附图说明该详细描述是参考附图描述的。在附图中,参考编号最左边的数字表示所述参考编号在该附图中首次出现。在附图中使用相同符号来指代相同特征和组件。图1示出了根据本主题一实施例的数据处理装置,所述数据处理装置用于为了响应至少一个数据库查询而在运行时动态地创建称为“本文档来自技高网
...
用于在RDBMS中的记录上创建用户自定义可变大小标签的装置和方法

【技术保护点】
一种数据处理装置,所述数据处理装置在运行时动态地启用称为“TAG”或“tag”的新数据类型,以及为了响应至少一个数据库查询,指定所述新数据类型对数据库执行至少一个操作,所述新数据类型要在模式绑定关系存储和/或非模式绑定非关系存储中使用,其特征在于,所述数据处理装置包括:处理器;以及耦合至所述处理器的存储器,所述处理器用于执行存在于所述存储器的多个指令,当执行所述多个指令时,所述处理器用于:接收所述数据库查询;在创建数据库表期间,指定所述数据库表中的数据库列具有所述新数据类型“TAG”或“tag”;由此在执行数据库查询期间,指定所述数据库列,所述新数据类型用于生成一列用于将多个值存储在非单记录的单列内,从而使查询能力在所述数据库内实现。

【技术特征摘要】
【国外来华专利技术】2015.03.28 IN 1604/CHE/20151.一种数据处理装置,所述数据处理装置在运行时动态地启用称为“TAG”或“tag”的新数据类型,以及为了响应至少一个数据库查询,指定所述新数据类型对数据库执行至少一个操作,所述新数据类型要在模式绑定关系存储和/或非模式绑定非关系存储中使用,其特征在于,所述数据处理装置包括:处理器;以及耦合至所述处理器的存储器,所述处理器用于执行存在于所述存储器的多个指令,当执行所述多个指令时,所述处理器用于:接收所述数据库查询;在创建数据库表期间,指定所述数据库表中的数据库列具有所述新数据类型“TAG”或“tag”;由此在执行数据库查询期间,指定所述数据库列,所述新数据类型用于生成一列用于将多个值存储在非单记录的单列内,从而使查询能力在所述数据库内实现。2.根据权利要求1所述的数据处理装置,其特征在于,所述值是元素字段。3.根据权利要求1所述的数据处理装置,其特征在于,创建数据类型作为TAG/tag的至少一个列以存储非单记录的至少一个元素字段。4.根据权利要求1所述的数据处理装置,其特征在于,所述处理器还用于通过指定“NONUNIQUE”约束或通过省略所述约束将非唯一或唯一记录保存/存储在为单记录创建的所述列中。5.根据权利要求1所述的数据处理系统,其特征在于,所述处理器还用于从所述记录中移除至少一个现有元素。6.根据权利要求1所述的数据处理装置,其特征在于,所述查询能力实现所述操作和至少一个查询,其中:所述至少操作从包括插入操作、添加元素的更新记录、添加已经存在于所述元素字段的元素的更新记录、移除其中一个现有元素的更新记录,或它们的任意组合的一组操作中选择;以及所述至少一个查询是所述数据库支持的一个常规查询。7.根据权利要求6所述的数据处理装置,其特征在于,基于所述操作,所述数据处理装置自动将所述查询转换为TAG数据类型的合适句柄。8.根据权利要求1所述的数据处理装置,其特征在于,如果新元素要添加到所述元素字段,所述数据处理装置用于在验证重复条目之后将所述新元素附加在所述元素字段的末尾,其中,如果发现重复条目,那么拒绝添加新元素。9.根据权利要求1所述的数据处理装置,其特征在于,如果任何元素...

【专利技术属性】
技术研发人员:普拉森纳·文卡特斯·拉玛穆尔蒂库马尔·拉吉夫·拉丝拓吉迪尼普·库马尔
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1