一种对数据库对象集合schema信息的处理方法、装置及管理系统与流程

文档序号:11155389阅读:192来源:国知局
一种对数据库对象集合schema信息的处理方法、装置及管理系统与制造工艺

本发明涉及通信技术领域,特别是涉及一种对数据库对象集合schema信息的处理方法、装置及管理系统。



背景技术:

现有的一些非关系型数据库,例如MongoDB等,在每条记录中同时保存这条记录中包含的各个字段的名称和各个字段对应的值。通常情况下,每个表中的字段都是固定不变或者变化很少的,因此在每条记录中保存字段名称信息会产生很大的冗余。并且在记录中直接保存字段名称会占用较大的系统资源。对于每一条记录,不仅要保存数据本身,还要保存数据中包含的各个字段的名称,而字段名称等占用的空间可能会比数据本身还要大。这不仅会占用更大的内存以及磁盘空间,同时也会对磁盘I/O和网络I/O造成不必要的压力。



技术实现要素:

本发明提供了一种对数据库对象集合schema信息的处理方法、装置及管理系统,以解决现有技术中数据库对象集合schema信息的存储占用空间较大的问题。

本发明一方面提供了一种对数据库对象集合schema信息的处理方法,包括:预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系;当接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换。

进一步地,预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,具体包括:将数据库对象集合schema信息的字段名称转换为该字段名称对应的字段ID,建立字段名称和字段ID之间的双向映射关系,并对建立双向映射关系的字段ID与各个字段的值进行序列化存储。

进一步地,当接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,具体包括:当接收到读指令时,将所述字段ID转换为该字段ID对应的字段名称,根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端;

当接收到写指令时,将所述字段名称转换为该字段名称对应的字段ID,并将该字段ID以及与该字段ID对应的各个字段的值进行序列化存储。

进一步地,根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端具体包括:根据所述字段名称获取该字段名称对应的字段的值,并对序列化存储的字段的值进行反序列化,该字段的值反馈给发出读指令的终端。

进一步地,该方法还包括:对发出读指令和写指令的终端进行校验,并在校验通过后,对所述字段名称和所述字段ID进行双向转换。

本发明另一方面提供了一种对数据库对象集合schema信息的处理装置,包括:设置单元,用于预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系;转换单元,用于当接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换。

进一步地,所述设置单元还用于,将数据库对象集合schema信息的字段名称转换为该字段名称对应的字段ID,建立字段名称和字段ID之间的双向映射关系,并对建立双向映射关系的字段ID与各个字段的值进行序列化存储。

进一步地,所述转换单元还用于,当接收到读指令时,将所述字段ID转换为该字段ID对应的字段名称,根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端;当接收到写指令时,将所述字段名称转换为该字段名称对应的字段ID,并将该字段ID以及与该字段ID对应的各个字段的值进行序列化存储。

进一步地,所述转换单元还用于,根据所述字段名称获取该字段名称对应的字段的值,并对序列化存储的字段的值进行反序列化,该字段的值反馈给发出读指令的终端。

本发明再一方面提供了一种设有上述任意一种装置的管理系统。

本发明有益效果如下:

本发明通过预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,并在接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,从而降低了数据存储占用的内存和磁盘空间,节省了存储成本,并降低了磁盘I/O和网络I/O,提升了系统的性能,有效解决了现有技术中数据库对象集合schema信息的存储占用空间较大的问题。

附图说明

图1是本发明实施例的一种对数据库对象集合schema信息的处理方法的流程示意图;

图2是本发明实施例的另一种对数据库对象集合schema信息的处理方法的流程示意图;

图3是本发明实施例的一种对数据库对象集合schema信息的处理装置的结构示意图。

具体实施方式

为了解决现有技术中数据库对象集合schema信息的存储占用空间较大的问题,本发明提供了一种对数据库对象集合schema信息的处理方法、装置及管理系统,本发明通过预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,并在接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,从而降低了数据存储占用的内存和磁盘空间,节省了存储成本,并降低了磁盘I/O和网络I/O,提升了系统的性能,大大提升了用户体验。。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

方法实施例

本发明实施例提供了一种对数据库对象集合schema信息的处理方法,参见图1,该方法包括:

S101、预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系;

S102、当接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换。

也就是说,本发明通过预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,并在接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,从而降低了数据存储占用的内存和磁盘空间,节省了存储成本,并降低了磁盘I/O和网络I/O,提升了系统的性能,有效解决了现有技术中数据库对象集合schema信息的存储占用空间较大的问题。

即,本发明通过给数据库中的各个字段分配一个字段ID,并在字段名称和字段ID之间建立双向的映射关系,从而实现字段名称和字段ID的双向转换,最终降低了数据存储占用的内存和磁盘空间,节省了存储成本。

需要说明的是,schema信息为数据库对象的集合,一个用户一般对应一个schema。

具体实施时,本发明可在管理系统中设置一个schema信息的管理模块,通过该管理模块给数据库中的各个字段分配一个字段ID,并在字段名称和字段ID之间建立双向的映射关系,从而实现字段名称和字段ID的双向转换,以降低数据存储占用的内存和磁盘空间,节省存储成本。

具体实施时,本发明实施例所述步骤S101具体包括:

将数据库对象集合schema信息的字段名称转换为该字段名称对应的字段ID,建立字段名称和字段ID之间的双向映射关系,并对建立双向映射关系的字段ID与各个字段的值进行序列化存储。

具体而言,本发明实施例是通过引入Schema管理模块,将schema信息中的字段名称映射到字段ID,用占用空间更小的字段ID代替字段名称,从而达到降低存储成本,提升系统性能的目的。

具体实施时,本发明实施例所述步骤S102具体包括:

当接收到读指令时,将所述字段ID转换为该字段ID对应的字段名称,根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端;

当接收到写指令时,将所述字段名称转换为该字段名称对应的字段ID,并将该字段ID以及与该字段ID对应的各个字段的值进行序列化存储。

具体的,本发明实施例根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端具体包括:

根据所述字段名称获取该字段名称对应的字段的值,并对序列化存储的字段的值进行反序列化,该字段的值反馈给发出读指令的终端。

图2是本发明实施例的另一种对数据库对象集合schema信息的处理方法的流程示意图,如图2所示,本发明通过在管理系统中设置schema信息管理模块,管理系统是其配套的基于Web的管理工具,管理员可以通过管理系统添加、查看和修改schema信息。schema信息管理模块中保存了所有的schema信息,包括每个数据库中有哪些表,每个表中有哪些字段,每个字段的名称和类型,以及每个字段对应的ID。其中,字段名称和字段类型是管理员通过管理系统添加的,而字段ID是由schema信息管理模块分配的,对于使用方透明,只在系统内部有效。schema信息管理模块中保存了字段名称和字段ID的双向映射,可以将字段名称转换成字段ID,也可以将字段ID转换成字段名称。

写接口是系统中负责处理用户的写请求的模块。写请求中包含了要写入到数据库中的字段名称和各个字段的具体值,写接口收到写请求后通过schema信息管理模块将字段名称转换成对应的字段ID,如果所有的字段名称都可以找到对应的ID,则将字段ID与各个字段的具体值按照特定的方式进行序列化,并将序列化后的结果保存到底层的存储系统中。此时保存在底层存储系统中的只有各个字段的ID和字段的具体值,没有字段名称。如果字段名称无法找到对应的字段ID,则说明请求非法,写操作失败,需要将错误信息返回给请求方。

读接口是系统中负责处理用户的读请求的模块。读接口收到读请求后,首先根据请求条件从底层存储系统中读取相应的数据,并按照特定的方式进行反序列化。由于保存在底层存储系统中的只有字段ID和字段的具体值,因此需要通过schema信息管理模块将字段ID转换成对应的字段名称,最后将字段名称和各个字段的具体值一起返回给请求方,完成整个读操作。

进一步地,本发明实施例所述的方法还包括对发出读指令和写指令的终端进行校验,并在校验通过后,对所述字段名称和所述字段ID进行双向转换。

也就是说,本发明只对校验通过的终端发出的读指令和写指令进行处理,以更好的维护管理系统的安全性。

装置实施例

本发明实施例提供了一种对数据库对象集合schema信息的处理装置,参见图3,该装置包括:设置单元,用于预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系;转换单元,用于当接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换。

也就是说,本发明通过预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,并在接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,从而降低了数据存储占用的内存和磁盘空间,节省了存储成本,并降低了磁盘I/O和网络I/O,提升了系统的性能,有效解决了现有技术中数据库对象集合schema信息的存储占用空间较大的问题。

即,本发明通过给数据库中的各个字段分配一个字段ID,并在字段名称和字段ID之间建立双向的映射关系,从而实现字段名称和字段ID的双向转换,最终降低了数据存储占用的内存和磁盘空间,节省了存储成本。

具体实施时,本发明可在管理系统中设置一个schema信息的管理模块(具体包括设置单元和转换单元),通过该管理模块给数据库中的各个字段分配一个字段ID,并在字段名称和字段ID之间建立双向的映射关系,从而实现字段名称和字段ID的双向转换,以降低数据存储占用的内存和磁盘空间,节省存储成本。

进一步地,所述设置单元还用于,将数据库对象集合schema信息的字段名称转换为该字段名称对应的字段ID,建立字段名称和字段ID之间的双向映射关系,并对建立双向映射关系的字段ID与各个字段的值进行序列化存储。

具体而言,本发明实施例是通过引入Schema管理模块,将schema信息中的字段名称映射到字段ID,用占用空间更小的字段ID代替字段名称,从而达到降低存储成本,提升系统性能的目的。

进一步地,本发明实施例的所述转换单元还用于,当接收到读指令时,将所述字段ID转换为该字段ID对应的字段名称,根据所述字段名称获取该字段名称对应的字段的值,并将该字段的值反馈给发出读指令的终端;当接收到写指令时,将所述字段名称转换为该字段名称对应的字段ID,并将该字段ID以及与该字段ID对应的各个字段的值进行序列化存储。

具体实施时,本发明实施的所述转换单元还用于,根据所述字段名称获取该字段名称对应的字段的值,并对序列化存储的字段的值进行反序列化,该字段的值反馈给发出读指令的终端。

图2是本发明实施例的另一种对数据库对象集合schema信息的处理方法的流程示意图,如图2所示,本发明通过在管理系统中设置schema信息管理模块,管理系统是其配套的基于Web的管理工具,管理员可以通过管理系统添加、查看和修改schema信息。schema信息管理模块中保存了所有的schema信息,包括每个数据库中有哪些表,每个表中有哪些字段,每个字段的名称和类型,以及每个字段对应的ID。其中,字段名称和字段类型是管理员通过管理系统添加的,而字段ID是由schema信息管理模块分配的,对于使用方透明,只在系统内部有效。schema信息管理模块中保存了字段名称和字段ID的双向映射,可以将字段名称转换成字段ID,也可以将字段ID转换成字段名称。

写接口是系统中负责处理用户的写请求的模块。写请求中包含了要写入到数据库中的字段名称和各个字段的具体值,写接口收到写请求后通过schema信息管理模块将字段名称转换成对应的字段ID,如果所有的字段名称都可以找到对应的ID,则将字段ID与各个字段的具体值按照特定的方式进行序列化,并将序列化后的结果保存到底层的存储系统中。此时保存在底层存储系统中的只有各个字段的ID和字段的具体值,没有字段名称。如果字段名称无法找到对应的字段ID,则说明请求非法,写操作失败,需要将错误信息返回给请求方。

读接口是系统中负责处理用户的读请求的模块。读接口收到读请求后,首先根据请求条件从底层存储系统中读取相应的数据,并按照特定的方式进行反序列化。由于保存在底层存储系统中的只有字段ID和字段的具体值,因此需要通过schema信息管理模块将字段ID转换成对应的字段名称,最后将字段名称和各个字段的具体值一起返回给请求方,完成整个读操作。

进一步地,本发明实施例所述的装置还包括校验单元,通过校验单元对发出读指令和写指令的终端进行校验,并在校验通过后,对所述字段名称和所述字段ID进行双向转换。

也就是说,本发明只对校验通过的终端发出的读指令和写指令进行处理,以更好的维护管理系统的安全性。

本发明实施例中的相关内容可参照方法实施例部分进行理解,在此不再赘述。

管理系统实施例

本发明实施例提供了一种管理系统,该管理系统包括装置实施例中所述的任意一种装置。

本发明实施例中的相关内容可参照装置实施例和方法实施例部分进行理解,在此不再赘述。

本发明可以至少可以达到以下的有益效果:

本发明通过预设数据库对象集合schema信息的字段名称和字段ID之间的双向映射关系,并在接收到读指令或者写指令时,对所述字段名称和所述字段ID进行双向转换,从而降低了数据存储占用的内存和磁盘空间,节省了存储成本,并降低了磁盘I/O和网络I/O,提升了系统的性能,有效解决了现有技术中数据库对象集合schema信息的存储占用空间较大的问题。

尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1