CN110825747A - 一种信息存取方法、装置和介质 - Google Patents
一种信息存取方法、装置和介质 Download PDFInfo
- Publication number
- CN110825747A CN110825747A CN201911071443.9A CN201911071443A CN110825747A CN 110825747 A CN110825747 A CN 110825747A CN 201911071443 A CN201911071443 A CN 201911071443A CN 110825747 A CN110825747 A CN 110825747A
- Authority
- CN
- China
- Prior art keywords
- attribute information
- information
- record
- query
- fixed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种信息存取方法、装置和介质,对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域。由于各类属性信息中往往会存在数据长度较长的属性信息,影响数据的存储和检索效率。在该技术方案中,可以按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据。由于涉及数据格式的转换,因此当获取到查询指令时,需要利用转换规则将查询指令中携带的查询信息转换为目标定长数据,以便于从各存储区域中查询与目标定长数据相匹配的属性信息。通过对各类属性信息进行定长压缩处理,可以有效的降低属性信息占用的存储空间,从而提升数据的存储和检索效率。
Description
技术领域
本发明涉及分布式存储技术领域,特别是涉及一种信息存取方法、装置和计算机可读存储介质。
背景技术
HBase是一个分布式的、面向列的开源数据库,该技术来源于Fay Chang所撰写的Google论文"Bigtable:一个结构化数据的分布式存储***"。就像Bigtable利用了Google文件***(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。
HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。rowkey是HBase中用于检索信息的健,一般rowkey中都会存储比较关键的检索信息,rowkey在HBase中用于表示唯一一行记录。
HBase由于其存储和读写的高性能,在即时分析中越来越发挥重要的作用,作为Nosql数据库的一员,HBase查询只能通过其rowkey来查询。rowkey设计的优劣直接影响读写性能。
由于HBase的持久化文件是按照KeyValue存储的,如果rowkey过长比如500个字节,1000万列数据光rowkey就要占用500*1000万=50亿个字节,将近1G数据,这会极大影响持久数据的存储效率。Hbase缓存组件缓存部分数据到内存,如果rowkey字段过长,内存的有效利用率会降低,***无法缓存更多的数据,这会降低检索效率。
可见,如何提升数据的存储和检索效率,是本领域技术人员需要解决的问题。
发明内容
本发明实施例的目的是提供一种信息存取方法、装置和计算机可读存储介质,可以提升数据的存储和检索效率。
为解决上述技术问题,本发明实施例提供一种信息存取方法,包括:
对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域;
按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据;
当获取到查询指令时,利用所述转换规则将所述查询指令中携带的查询信息转换为目标定长数据;
从各所述存储区域中查询与所述目标定长数据相匹配的属性信息。
可选地,在将预处理后的各条记录中的属性信息转换为定长数据之后还包括:
将各所述定长数据以二进制形式存储;
相应的,所述从各所述存储区域中查询与所述目标定长数据相匹配的属性信息包括:
依据所述查询信息以及属性信息的类别,确定出运算规则;
根据所述目标定长数据以及所述查询信息所对应的位置信息,构建二进制查询模板;
按照所述运算规则,将所述二进制查询模板与各所述存储区域中存储的二进制形式的各条记录进行位运算,从而获取与所述查询信息相匹配的属性信息。
可选地,所述对各条记录包含的属性信息进行预处理包括:
将每条记录中的属性信息按照预先设定的属性顺序排列。
可选地,所述对各条记录包含的属性信息进行预处理包括:
在每条记录的属性信息前端添加随机字段。
可选地,所述按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据包括:
利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。
本发明实施例还提供了一种信息存取装置,包括预处理单元、转换单元和查询单元;
所述预处理单元,用于对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域;
所述转换单元,用于按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据;当获取到查询指令时,利用所述转换规则将所述查询指令中携带的查询信息转换为目标定长数据;
所述查询单元,用于从各所述存储区域中查询与所述目标定长数据相匹配的属性信息。
可选地,还包括二进制存储单元;
所述二进制存储单元,用于在将预处理后的各条记录中的属性信息转换为定长数据之后,将各所述定长数据以二进制形式存储;
相应的,所述查询单元包括确定子单元、构建子单元和位运算子单元;
所述确定子单元,用于依据所述查询信息以及属性信息的类别,确定出运算规则;
所述构建子单元,用于根据所述目标定长数据以及所述查询信息所对应的位置信息,构建二进制查询模板;
所述位运算子单元,用于按照所述运算规则,将所述二进制查询模板与各所述存储区域中存储的二进制形式的各条记录进行位运算,从而获取与所述查询信息相匹配的属性信息。
可选地,所述预处理单元具体用于将每条记录中的属性信息按照预先设定的属性顺序排列。
可选地,所述预处理单元具体用于在每条记录的属性信息前端添加随机字段。
可选地,所述转换单元具体用于利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。
本发明实施例还提供了一种信息存取装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任意一项所述信息存取方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述信息存取方法的步骤。
由上述技术方案可以看出,对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域。由于各类属性信息的数据长度不唯一,往往会存在数据长度较长的属性信息,这会影响数据的存储效率,并且导致数据的检索效率降低。因此,在该技术方案中,按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据,以降低属性信息所占用的存储空间。由于涉及数据格式的转换,因此当获取到查询指令时,需要利用转换规则将查询指令中携带的查询信息转换为目标定长数据,以便于从各存储区域中查询与目标定长数据相匹配的属性信息。通过对各类属性信息进行定长压缩处理,可以有效的降低属性信息占用的存储空间,从而提升数据的存储和检索效率。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种信息存取方法的流程图;
图2为本发明实施例提供的一种属性信息存储的流程示意图;
图3为本发明实施例提供的一种依据二进制查询模板进行信息检索的示意图;
图4为本发明实施例提供的一种信息存取装置的结构示意图;
图5为本发明实施例提供的一种信息存取装置的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种信息存取方法。图1为本发明实施例提供的一种信息存取方法的流程图,该方法包括:
S101:对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域。
本发明实施例提供的信息存取方法适用于HBase的rowkey的存储和读取。
对于一条记录而言,其包含的属性信息可以有多种。在实际应用中,用户可以根据应用可能包含的查询条件确定rowkey需要包含的属性信息。例如,应用需要根据用户名称及时间查询,那么rowkey需要包含用户名和时间这两类属性信息。
现有技术中HBase中的数据是按照rowkey的ASCII字典顺序进行全局排序的,rowkey排序时会先比对两个rowkey的第一个字节,如果相同,然后会比对第二个字节,依次类推。rowkey的排序也影响数据在HBase个节点上的分布。以时间戳为例,假如rowkey是按***时间戳的方式递增,rowkey的第一个属性信息如果是时间戳信息的话,将造成所有新数据都在一个节点上堆积的热点现象,导致单个节点机器自身负载过高,引起性能下降甚至节点不可用。
基于此,本申请在对rowkey包含的属性信息进行存储之前,会对属性信息进行预处理。
预处理主要是为了增加每条记录的随机性,从而便于将各条记录分散到不同的存储区域。
预处理的方式可以有多种,一种方式可以将每条记录中的属性信息按照预先设定的属性顺序排列。例如,在将每条记录包含的多个属性信息排序时,可以选取随机性较高的属性信息放置到前面位置。
另一种方式可以在每条记录的属性信息前端添加随机字段。例如,rowkey为abc001,abc002,abc003,那么这些数据会被存储到同一个region中造成热点数据。在实际应用中,可以在每条记录的前端分别加上a、b、c前缀,添加随机字段后rowkey为:a-abc001、b-abc002、c-abc003,这样数据就会分散到多个region中。
S102:按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据。
由于各类属性信息的数据长度不唯一,往往会存在数据长度较长的属性信息,这会影响数据的存储效率,并且导致数据的检索效率降低。因此,在本发明实施例中,对属性信息进行了格式转换,将数据长度不固定的属性信息转换为数据长度固定的数据,从而减少属性信息对存储空间的占用量。
转换规则可以用于将不定长的属性信息转换为定长数据,实现对属性信息的压缩处理。
转换规则的具体实现方式有多种,例如,可以利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。也可以按照设定的字符串与数字的对应关系,将字符串形式的属性信息转换为数字形式。为了便于介绍,后续内容中均以哈希值作为定长数据为例展开说明。
对于每种类型的属性信息可以预设其格式转换后所占用的数据存储空间,例如,可以将属性信息转换为一个字节的定长数据。
每条记录包含的属性信息的类型可以有多种,各种类型的属性信息转换后所占用的数据存储空间可以相同也可以不同。在具体实现中,可以根据各属性信息的数据特性设置其转换后所占用的数据存储空间。
如图2所示为属性信息存储的流程示意图,图2中是以一条记录为例,该条记录包含有3个属性信息分别为字段1、字段2和字段3,按照各字段随机性从高到低的顺序,排序后的顺序为字段3、字段1和字段2,将各属性信息按照转换规则转换为定长数据。图2中f(·)表示转换规则对应的函数,f(attr3)表示属性信息attr3转换后的定长数据。
通过属性转换函数f(attr_i),可以将不同类型数据转化为定长数据实现数据的压缩,以达到减少rowkey大小的目标。
其中,len(attr_i)表示属性信息attr_i占用的字节数。
属性信息转换后,假设经过属性转换及压缩可以将N个属性信息压缩成N个字节,那么N个属性占用总字节数为N,压缩比:属性信息转换后的存储效果可以用压缩比来表示,平均压缩比根据选择的属性转换函数决定,根据经验值,压缩比可以在3-5之间。
S103:当获取到查询指令时,利用转换规则将查询指令中携带的查询信息转换为目标定长数据。
在实际应用中,用户可以通过***提供的人工操作界面输入查询信息。
由于***存储的属性信息进行了格式转换,因此,为了便于获取与查询信息相匹配的数据,需要对查询信息进行格式的转换,即利用转换规则将查询指令中携带的查询信息转换为定长数据。
为了便于和***中存储的定长数据相区分,可以将查询信息转换得到的定长数据称作目标定长数据。
S104:从各存储区域中查询与目标定长数据相匹配的属性信息。
各存储区域记录的属性信息的格式与目标定长数据的格式一致,因此,可以从各存储区域中查询到与目标定长数据相匹配的属性信息。
由上述技术方案可以看出,对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域。由于各类属性信息的数据长度不唯一,往往会存在数据长度较长的属性信息,这会影响数据的存储效率,并且导致数据的检索效率降低。因此,在该技术方案中,按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据,以降低属性信息所占用的存储空间。由于涉及数据格式的转换,因此当获取到查询指令时,需要利用转换规则将查询指令中携带的查询信息转换为目标定长数据,以便于从各存储区域中查询与目标定长数据相匹配的属性信息。通过对各类属性信息进行定长压缩处理,可以有效的降低属性信息占用的存储空间,从而提升数据的存储和检索效率。
在本发明实施例中,为了进一步提高数据的检索效率,可以采用位运算的方式,从各存储区域中查询与目标定长数据相匹配的属性信息。
具体的,在将预处理后的各条记录中的属性信息转换为定长数据之后,可以将各定长数据以二进制形式存储。
为了通过位运算实现信息的检索,可以将定长数据以二进制的形式表示。需要说明的是,图2中二进制数据的具体形式仅为举例说明。
相应的,在执行数据的查询操作时,可以依据查询信息以及属性信息的类别,确定出运算规则。
例如,rowkey属性信息的类别包括用户名和时间,用户查询条件为查找用户名为A的用户记录,那么确认的查询信息为用户名A,运算规则是等值比较运算。
根据目标定长数据以及查询信息所对应的位置信息,构建二进制查询模板。
构建二进制查询模板是为了便于通过位运算的方式,实现对属性信息的查询,从而提高信息的检索效率。
位运算的类型有多种,包括与运算、或运算、异或运算等。为了便于介绍,下面内容将以与运算为例展开说明。
每条记录中包含的属性信息的类别有多个,各属性信息按照设定的顺序依次排列,因此在构建二进制查询模板时需要依赖于查询信息所对应的位置信息。
假设每条记录中各属性信息各占用一个字节,一条记录中包含有4个属性信息,其中用户名占第二个字节,用户名A经过转化后对应的目标定长数据的二进制形式为:11010101。以与运算为例,根据用户名A的目标定长数据以及用户名A位于第二个字节,构建二进制查询模板为:00000000 11111111 00000000 00000000。
按照运算规则,将二进制查询模板与各存储区域中存储的二进制形式的各条记录进行位运算,从而获取与查询信息相匹配的属性信息。
结合上述举例,在构建二进制查询模板之后,可以将该查询模板与各存储区域中存储的二进制形式的各条记录进行与运算,当运算结果与目标定长数据的二进制形式相同,则说明该条记录是与查询信息相匹配的属性信息。
如图3所示为依据二进制查询模板进行信息检索的示意图,图3中第一行数据表示查询信息进行转换之后所对应的查询条件,第二行数据表示该查询信息所对应的查询模板,左侧第三行和第四行数据表示将查询模板与存储区域中读取的一条记录进行与运算,第五行数据表示运算结果,该运算结果与查询条件相匹配,此时该条记录所对应的属性信息即为用户所需查询的属性信息。
根据上述原理,也可以同时匹配多个属性信息。例如,我们要找第一个字节是10000101第四个字节是00101011的行,那查询条件即为:10000101 00000000 0000000000101011,其对应的查询模板应该是:11111111 00000000 00000000 11111111,然后进行上述步骤就可以匹配得到满足要求的行数据。
图4为本发明实施例提供的一种信息存取装置的结构示意图,包括预处理单元41、转换单元42和查询单元43;
预处理单元41,用于对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域;
转换单元42,用于按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据;当获取到查询指令时,利用转换规则将查询指令中携带的查询信息转换为目标定长数据;
查询单元43,用于从各存储区域中查询与目标定长数据相匹配的属性信息。
可选地,还包括二进制存储单元;
二进制存储单元,用于在将预处理后的各条记录中的属性信息转换为定长数据之后,将各定长数据以二进制形式存储;
相应的,查询单元包括确定子单元、构建子单元和位运算子单元;
确定子单元,用于依据查询信息以及属性信息的类别,确定出运算规则;
构建子单元,用于根据目标定长数据以及查询信息所对应的位置信息,构建二进制查询模板;
位运算子单元,用于按照运算规则,将二进制查询模板与各存储区域中存储的二进制形式的各条记录进行位运算,从而获取与查询信息相匹配的属性信息。
可选地,预处理单元具体用于将每条记录中的属性信息按照预先设定的属性顺序排列。
可选地,预处理单元具体用于在每条记录的属性信息前端添加随机字段。
可选地,转换单元具体用于利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。
图4所对应实施例中特征的说明可以参见图1至图3所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域。由于各类属性信息的数据长度不唯一,往往会存在数据长度较长的属性信息,这会影响数据的存储效率,并且导致数据的检索效率降低。因此,在该技术方案中,按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据,以降低属性信息所占用的存储空间。由于涉及数据格式的转换,因此当获取到查询指令时,需要利用转换规则将查询指令中携带的查询信息转换为目标定长数据,以便于从各存储区域中查询与目标定长数据相匹配的属性信息。通过对各类属性信息进行定长压缩处理,可以有效的降低属性信息占用的存储空间,从而提升数据的存储和检索效率。
图5为本发明实施例提供的一种信息存取装置50的硬件结构示意图,包括:
存储器51,用于存储计算机程序;
处理器52,用于执行计算机程序以实现如上述任意一项信息存取方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项信息存取方法的步骤。
以上对本发明实施例所提供的一种信息存取方法、装置和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
Claims (10)
1.一种信息存取方法,其特征在于,包括:
对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域;
按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据;
当获取到查询指令时,利用所述转换规则将所述查询指令中携带的查询信息转换为目标定长数据;
从各所述存储区域中查询与所述目标定长数据相匹配的属性信息。
2.根据权利要求1所述的方法,其特征在于,在将预处理后的各条记录中的属性信息转换为定长数据之后还包括:
将各所述定长数据以二进制形式存储;
相应的,所述从各所述存储区域中查询与所述目标定长数据相匹配的属性信息包括:
依据所述查询信息以及属性信息的类别,确定出运算规则;
根据所述目标定长数据以及所述查询信息所对应的位置信息,构建二进制查询模板;
按照所述运算规则,将所述二进制查询模板与各所述存储区域中存储的二进制形式的各条记录进行位运算,从而获取与所述查询信息相匹配的属性信息。
3.根据权利要求1所述的方法,其特征在于,所述对各条记录包含的属性信息进行预处理包括:
将每条记录中的属性信息按照预先设定的属性顺序排列。
4.根据权利要求1所述的方法,其特征在于,所述对各条记录包含的属性信息进行预处理包括:
在每条记录的属性信息前端添加随机字段。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据包括:
利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。
6.一种信息存取装置,其特征在于,包括预处理单元、转换单元和查询单元;
所述预处理单元,用于对各条记录包含的属性信息进行预处理,以便于将预处理后的各条记录分散到不同的存储区域;
所述转换单元,用于按照预先设定的转换规则,将预处理后的各条记录中的属性信息转换为定长数据;当获取到查询指令时,利用所述转换规则将所述查询指令中携带的查询信息转换为目标定长数据;
所述查询单元,用于从各所述存储区域中查询与所述目标定长数据相匹配的属性信息。
7.根据权利要求6所述的装置,其特征在于,还包括二进制存储单元;
所述二进制存储单元,用于在将预处理后的各条记录中的属性信息转换为定长数据之后,将各所述定长数据以二进制形式存储;
相应的,所述查询单元包括确定子单元、构建子单元和位运算子单元;
所述确定子单元,用于依据所述查询信息以及属性信息的类别,确定出运算规则;
所述构建子单元,用于根据所述目标定长数据以及所述查询信息所对应的位置信息,构建二进制查询模板;
所述位运算子单元,用于按照所述运算规则,将所述二进制查询模板与各所述存储区域中存储的二进制形式的各条记录进行位运算,从而获取与所述查询信息相匹配的属性信息。
8.根据权利要求6或7所述的装置,其特征在于,所述转换单元具体用于利用哈希算法将每条记录中字符串形式的属性信息转换为固定长度的哈希值。
9.一种信息存取装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至5任意一项所述信息存取方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述信息存取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071443.9A CN110825747B (zh) | 2019-11-05 | 2019-11-05 | 一种信息存取方法、装置和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071443.9A CN110825747B (zh) | 2019-11-05 | 2019-11-05 | 一种信息存取方法、装置和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110825747A true CN110825747A (zh) | 2020-02-21 |
CN110825747B CN110825747B (zh) | 2022-09-06 |
Family
ID=69552447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911071443.9A Active CN110825747B (zh) | 2019-11-05 | 2019-11-05 | 一种信息存取方法、装置和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110825747B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117424698A (zh) * | 2023-10-07 | 2024-01-19 | 北京泰迪未来科技股份有限公司 | 大规模单向散列值的存储方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013143363A1 (en) * | 2012-03-29 | 2013-10-03 | Tencent Technology (Shenzhen) Company Limited | A method and apparatus for data storage and downloading |
CN103514201A (zh) * | 2012-06-27 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 一种非关系型数据库的数据查询方法和装置 |
US20150154073A1 (en) * | 2013-12-02 | 2015-06-04 | Fujitsu Limited | Storage control apparatus and storage control method |
CN108319665A (zh) * | 2018-01-18 | 2018-07-24 | 努比亚技术有限公司 | Hbase列值查找方法、终端及存储介质 |
CN110222048A (zh) * | 2019-05-06 | 2019-09-10 | 平安科技(深圳)有限公司 | 序列生成方法、装置、计算机设备及存储介质 |
-
2019
- 2019-11-05 CN CN201911071443.9A patent/CN110825747B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013143363A1 (en) * | 2012-03-29 | 2013-10-03 | Tencent Technology (Shenzhen) Company Limited | A method and apparatus for data storage and downloading |
CN103514201A (zh) * | 2012-06-27 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 一种非关系型数据库的数据查询方法和装置 |
US20150154073A1 (en) * | 2013-12-02 | 2015-06-04 | Fujitsu Limited | Storage control apparatus and storage control method |
CN108319665A (zh) * | 2018-01-18 | 2018-07-24 | 努比亚技术有限公司 | Hbase列值查找方法、终端及存储介质 |
CN110222048A (zh) * | 2019-05-06 | 2019-09-10 | 平安科技(深圳)有限公司 | 序列生成方法、装置、计算机设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117424698A (zh) * | 2023-10-07 | 2024-01-19 | 北京泰迪未来科技股份有限公司 | 大规模单向散列值的存储方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110825747B (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6678687B2 (en) | Method for creating an index and method for searching an index | |
US9858282B2 (en) | Information searching apparatus, information managing apparatus, information searching method, information managing method, and computer product | |
CN108205577B (zh) | 一种数组构建、数组查询的方法、装置及电子设备 | |
US11023439B2 (en) | Variable cardinality index and data retrieval | |
CN106326475B (zh) | 一种高效的静态哈希表实现方法及*** | |
CN107368527B (zh) | 基于数据流的多属性索引方法 | |
US9218394B2 (en) | Reading rows from memory prior to reading rows from secondary storage | |
CN103914483B (zh) | 文件存储方法、装置及文件读取方法、装置 | |
Conway et al. | Optimal hashing in external memory | |
CN114691721A (zh) | 图数据的查询方法、装置、电子设备及存储介质 | |
CN105912696A (zh) | 一种基于对数归并的dns索引创建方法及查询方法 | |
Chien et al. | Geometric BWT: compressed text indexing via sparse suffixes and range searching | |
CN110825747B (zh) | 一种信息存取方法、装置和介质 | |
Alam et al. | Performance of point and range queries for in-memory databases using radix trees on GPUs | |
Ferragina et al. | Distribution-aware compressed full-text indexes | |
CN110532284B (zh) | 海量数据存储和检索方法、装置、计算机设备及存储介质 | |
US11991290B2 (en) | Associative hash tree | |
CN110413724A (zh) | 一种数据检索方法和装置 | |
CN115495462A (zh) | 批量数据更新方法、装置、电子设备和可读存储介质 | |
CN114416741A (zh) | 基于多级索引的kv数据写入读取方法、装置及存储介质 | |
CN114398373A (zh) | 应用于数据库存储的文件数据存储读取方法及装置 | |
CN109657108B (zh) | 一种域名资产数据存储和查询方法和*** | |
CN108984720B (zh) | 基于列存储的数据查询方法、装置、服务器及存储介质 | |
JP2001022766A (ja) | 多次元データベースの高速処理方法および装置 | |
US10037148B2 (en) | Facilitating reverse reading of sequentially stored, variable-length data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |