实体的多属性信息存储、查询方法、装置、服务器和介质与流程

文档序号:17548595发布日期:2019-04-30 18:03阅读:241来源:国知局
实体的多属性信息存储、查询方法、装置、服务器和介质与流程

本发明实施例涉及信息存储领域,尤其涉及一种实体的多属性信息存储、查询方法、装置、服务器和介质。



背景技术:

在计算机系统中,通常需要用到信息存储系统。随着网络应用的迅速发展,对信息存储具有访问量大、信息量大、高并发等要求,为应对突然剧增的访问量,需要在短时间内迅速扩大信息存储系统规模。

当前的信息存储方法,主要通过把属性以文本的形式保存到数据库中或建立一个对应关系表,以保存实体和属性值之间的对应关系。但是,通过把属性以文本的形式保存到数据库中,没法精确查询,也难以进行信息汇总分析;建立一个对应关系表,以保存实体和属性值之间的对应关系,所需存储空间大,性能非常差,查询分析速度极慢,不适用于大信息量的保存和分析。并且上述两种存储方法不适用于当信息含有多种属性的时候。



技术实现要素:

本发明实施例提供一种实体的多属性信息存储、查询方法、装置、服务器和介质,通过根据实体的各属性项取值,确定相对应的各属性类取值,并将属性类取值以字段形式存入数据表中,实现了减少存储空间,并且后期查询多属性存储信息时,查询效率更高,同时降低脚本的复杂度的效果。

第一方面,本发明实施例提供了一种实体的多属性信息存储方法,所述方法包括:

获取实体具有的各属性项以及各属性项取值;

根据各属性项所属的属性类,以及各属性项取值,确定实体的各属性类取值;

将实体的各属性类取值存储到以各所述属性类为字段的数据表中。

第二方面,本发明实施例提供了一种多属性信息查询方法,所述方法包括:

根据查询指令,确定每一目标属性类中包括的目标属性项数量;

根据所述目标属性类中包括的目标属性项数量,从目标属性类所在字段中选择候选单元格;

根据目标属性类中各目标属性项取值,从所述候选单元格中选择目标单元格;

根据所述目标属性类对应的目标单元格所属记录中的实体,确定目标实体。

第三方面,本发明实施例提供了一种实体的多属性信息存储装置,所述装置包括:

属性项取值获取模块,用于获取实体具有的各属性项以及各属性项取值;

属性类取值确定模块,用于根据各属性项所属的属性类,以及各属性项取值,确定实体的各属性类取值;

属性类取值存储模块,用于将实体的各属性类取值存储到以各所述属性类为字段的数据表中。

第四方面,本发明实施例提供了一种多属性信息查询装置,所述装置包括:

目标属性项数量确定模块,用于根据查询指令,确定每一目标属性类中包括的目标属性项数量;

候选单元格选择模块,用于根据所述目标属性类中包括的目标属性项数量,从目标属性类所在字段中选择候选单元格;

目标单元格选择模块,用于根据目标属性类中各目标属性项取值,从所述候选单元格中选择目标单元格;

目标实体确定模块,用于根据所述目标属性类对应的目标单元格所属记录中的实体,确定目标实体。

第五方面,本发明实施例提供了一种服务器,所述服务器包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例中任一所述的实体的多属性信息存储方法,和/或实现如本发明实施例中任一所述的实体的多属性信息查询方法。

第六方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本发明实施例中任一所述的实体的多属性信息存储方法,和/或实现如本发明实施例中任一所述的实体的多属性信息查询方法。

本发明实施例通过根据实体的各属性项取值,确定相对应的各属性类取值,并将属性类取值以字段形式存入数据表中,实现了减少存储空间的效果;通过从目标属性类所在字段中选择候选单元格,从所述候选单元格中选择目标单元格,最终确定目标实体,实现了查询多属性存储信息时,查询效率更高,同时降低脚本的复杂度的效果。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1a为本发明实施例一提供的一种实体的多属性信息存储方法的流程图;

图1b为本发明实施例一提供的一种数据表的界面图;

图1c为本发明实施例一提供的一种属性项取值的界面图;

图2为本发明实施例二提供的一种实体的多属性信息查询方法的流程图;

图3为本发明实施例三提供的一种实体的多属性信息存储装置的结构示意图;

图4为本发明实施例四提供的一种实体的多属性信息查询装置的结构示意图;

图5为本发明实施例五提供的一种服务器的结构示意图。

具体实施方式

下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。

实施例一

图1a为本发明实施例一提供的一种实体的多属性信息存储方法的流程图,图1b为本发明实施例一提供的一种数据表的界面图,图1c为本发明实施例一提供的一种属性项取值的界面图。本实施例用于实体具有多属性时,将多属性信息数据存入存储服务器中的情况。该方法可以由本发明实施例提供的实体的多属性信息存储装置来执行,该装置可以集成于用于存储数据的服务器中。参见图1,该方法具体包括:

s101、获取实体具有的各属性项以及各属性项取值。

其中,任一实体具有至少一种属性类,并且在各个属性类下还会有至少一种属性项,根据业务需要可以赋值给各属性项。示例性的,图1c为一种属性项取值的界面图,其中第一列为各属性项的编号,首字符相同的编号代表所属同一属性类;第二列为各属性项的名称;第三列为各属性项的取值。通过将各属性项按预设规律赋值,方便后期对存储的信息进行查询。

s102、根据各属性项所属的属性类,以及各属性项取值,确定实体的各属性类取值。

具体的,根据各属性类下各属性项的取值,来确定各属性类的取值。

在本实施例一种具体实施例中,将实体的每一属性类中包括的各属性项取值之和,作为每一属性类取值。各属性项取值均是2的n次幂。若任一数值是2的n次幂之和,则该数值对应有至少两个固定的2的n次幂。例如,若从查找到某一属性类取值为7(1+2+4)的实体,则可以确定该实体在该属性类下具有取值是1,2,4的属性项;若从查找到某一属性类取值为6(2+4)的实体,则可以确定该实体在该属性类下具有取值是2,4对应的属性项。

s103、将实体的各属性类取值存储到以各所述属性类为字段的数据表中。

具体的,建立数据存储数据库,将各属性类存储到数据表中,其中每个属性类对应一个整数类型的字段。示例性的,图1b为一种数据表的界面图,其中第一列为各实体的编号;第二列为各实体的名称;第三列为各实体对应的第一属性类的取值;第四列为各实体对应的第二属性类的取值;第五列为各实体对应的第三属性类的取值。

本发明实施例提供的技术方案,通过根据实体的各属性项取值,确定相对应的各属性类取值,并将属性类取值以字段形式存入数据表中,实现了减少存储空间,同时降低脚本的复杂度的效果。

实施例二

图2为本发明实施例二提供的一种实体的多属性信息查询方法的流程图。本实施例用于在存储服务器中,查询多属性信息数据的情况。该方法可以由本发明实施例提供的实体的多属性信息查询装置来执行,该装置可以集成于用于存储数据的服务器中。参见图2,该方法具体包括:

s201、根据查询指令,确定每一目标属性类中包括的目标属性项数量。

具体的,根据查询指令,确定至少一种目标属性类,进而确定目标属性类中至少一种目标属性项,最后得到各目标属性类中目标属性项的数量。

s202、根据所述目标属性类中包括的目标属性项数量,从目标属性类所在字段中选择候选单元格。

其中,根据目标属性项的数量以及相对应的属性项的取值,得到目标属性类所在字段中选择候选单元格。所述候选单元格用于确定目标单元格,进而最终确定与查询指令相关联的目标实体。

在本发明实施例的一种具体实施方式中,s202可以包括:若所述目标属性类中包括至少两个目标属性项,则在所述目标属性类所在字段中,将取值是至少两个属性项取值之和的单元格作为候选单元格;若所述目标属性类中包括一个目标属性项,则在所述目标属性类所在字段中,将取值非至少两个属性项取值之和的单元格作为候选单元格。

可选的,在s202中,从目标属性类所在字段中选择候选单元格步骤之前,还可以包括:将所述目标属性类所在字段中各单元格取值,以及各单元格取值减1得到的辅助值均转换为二进制格式,得到各单元格二进制取值和各单元格二进制辅助值;针对所述字段中每一单元格,若该单元格二进制取值和该单元格二进制辅助值作与运算的结果是1,则确定该单元格取值是至少两个属性项值之和;否则,确定该单元格取值非至少两个属性项值之和。示例性的,某个目标属性类所在字段中某个单元格取值为8,则该单元格的辅助值为7,进而该单元格取值转换为二进制的结果为1000,辅助值取值转化为二进制的结果为111,将该单元格取值的二进制结果与辅助值取值的二进制结果进行sql对位与运算,即1000&0111=0000,则确定该单元格取值非至少两个属性项值之和。通过将单元格取值转换为二进制后与辅助值的二进制进行与运算,可以判断单元格中的取值是至少两个属性项值之和,或者非至少两个属性项值之和。

s203、根据目标属性类中各目标属性项取值,从所述候选单元格中选择目标单元格。

具体的,根据查询指令相关联的各目标属性项的取值,从候选单元格中选择与所述各目标属性项的取值按预设规则计算后,相同取值的候选单元格为目标单元格。可选的,将取值等于所述目标属性类中各目标属性项取值之和的候选单元格作为目标单元格。

s204、根据所述目标属性类对应的目标单元格所属记录中的实体,确定目标实体。

具体的,根据目标单元格涉及的目标属性项所属记录中的实体,来确定目标实体。可选的,若根据查询指令确定至少两个目标属性类,则对各目标属性类对应的目标单元格所属记录中的实体求交集,得到各目标实体。

本发明实施例提供的技术方案,通过根据目标属性类中包括的目标属性项数量以及取值,从目标属性类所在字段中确定目标单元格,并根据目标单元格与目标实体的映射关系,最终确定目标实体,实现了查询多属性存储信息时,查询效率更高的效果。

实施例三

图3为本发明实施例三提供的一种实体的多属性信息存储装置的结构示意图,该装置可执行本发明任意实施例所提供的实体的多属性信息存储方法,具备执行方法相应的功能模块和有益效果。如图3所示,该装置可以包括:

属性项取值获取模块31,用于获取实体具有的各属性项以及各属性项取值;

属性类取值确定模块32,用于根据各属性项所属的属性类,以及各属性项取值,确定实体的各属性类取值;

属性类取值存储模块33,用于将实体的各属性类取值存储到以各所述属性类为字段的数据表中。

在上述实施例的基础上,所述属性类取值确定模块32,具体用于:将实体的每一属性类中包括的各属性项取值之和,作为每一属性类取值。

在上述实施例的基础上,各属性项取值均是2的n次幂。

上述实施例所述实体的多属性信息存储装置用于执行上述实施例所述任一的实体的多属性信息存储方法,其技术原理和产生的技术效果类似,这里不再赘述。

实施例四

图4为本发明实施例四提供的一种实体的多属性信息查询装置的结构示意图,该装置可执行本发明任意实施例所提供的实体的多属性信息查询方法,具备执行方法相应的功能模块和有益效果。如图4所示,该装置可以包括:

目标属性项数量确定模块41,用于根据查询指令,确定每一目标属性类中包括的目标属性项数量;

候选单元格选择模块42,用于根据所述目标属性类中包括的目标属性项数量,从目标属性类所在字段中选择候选单元格;

目标单元格选择模块43,用于根据目标属性类中各目标属性项取值,从所述候选单元格中选择目标单元格;

目标实体确定模块44,用于根据所述目标属性类对应的目标单元格所属记录中的实体,确定目标实体。

在上述实施例的基础上,所述候选单元格选择模块42,具体用于:若所述目标属性类中包括至少两个目标属性项,则在所述目标属性类所在字段中,将取值是至少两个属性项取值之和的单元格作为候选单元格;若所述目标属性类中包括一个目标属性项,则在所述目标属性类所在字段中,将取值非至少两个属性项取值之和的单元格作为候选单元格。

在上述实施例的基础上,所述候选单元格选择模块42,具体用于:将所述目标属性类所在字段中各单元格取值,以及各单元格取值减1得到的辅助值均转换为二进制格式,得到各单元格二进制取值和各单元格二进制辅助值;针对所述字段中每一单元格,若该单元格二进制取值和该单元格二进制辅助值作与运算的结果是1,则确定该单元格取值是至少两个属性项值之和;否则,确定该单元格取值非至少两个属性项值之和。

在上述实施例的基础上,所述目标单元格选择模块43,具体用于:将取值等于所述目标属性类中各目标属性项取值之和的候选单元格作为目标单元格。

在上述实施例的基础上,所述目标实体确定模块44,具体用于:若根据查询指令确定至少两个目标属性类,则对各目标属性类对应的目标单元格所属记录中的实体求交集,得到各目标实体。

上述实施例所述实体的多属性信息查询装置用于执行上述实施例所述任一的实体的多属性信息查询方法,其技术原理和产生的技术效果类似,这里不再赘述。

实施例五

图5为本发明实施例五提供的一种服务器的结构示意图,如图5所示,该服务器包括处理器50、存储器51、输入装置52和输出装置53;服务器中处理器50的数量可以是一个或多个,图5中以一个处理器50为例;服务器中的处理器50、存储器51、输入装置52和输出装置53可以通过总线或其他方式连接,图5中以通过总线连接为例。

存储器51作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的实体的多属性信息存储和/或实体的多属性信息查询方法对应的程序指令/模块(例如,属性项取值获取模块31、属性类取值确定模块32、属性类取值存储模块33和/或目标属性项数量确定模块41、候选单元格选择模块42、目标单元格选择模块43、目标实体确定模块44)。处理器50通过运行存储在存储器51中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的实体的多属性信息存储和/或实体的多属性信息查询方法。

存储器51可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器51可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器51可进一步包括相对于处理器50远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置52可用于接收多属性信息存储数据,输出装置53可包括显示屏等显示服务器。

实施例六

本发明实施例六还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种实体的多属性信息存储和/或实体的多属性信息查询方法。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的实体的多属性信息存储和/或实体的多属性信息查询方法中的相关操作.

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机服务器(可以是个人计算机,服务器,或者网络服务器等)执行本发明各个实施例所述的方法。

值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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