CN111666278A - 数据存储、检索方法、电子设备及存储介质 - Google Patents
数据存储、检索方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111666278A CN111666278A CN201910167503.0A CN201910167503A CN111666278A CN 111666278 A CN111666278 A CN 111666278A CN 201910167503 A CN201910167503 A CN 201910167503A CN 111666278 A CN111666278 A CN 111666278A
- Authority
- CN
- China
- Prior art keywords
- data
- stored
- storage
- retrieval request
- partition
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 199
- 238000013500 data storage Methods 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000005192 partition Methods 0.000 claims abstract description 128
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 12
- 238000000638 solvent extraction Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
-
- 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
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及数据存储、检索方法、电子设备及存储介质。该数据存储方法包括:接收第一数据存储请求,所述第一数据存储请求用于将待存储数据存储在第一存储引擎中;若基于所述第一数据存储请求,确定所述待存储数据具有路由键,则获取所述待存储数据的路由键值;根据所述待存储数据的路由键值,确定所述待存储数据对应的第一存储引擎的分区;将所述待存储数据存储在所述待存储数据对应的第一存储引擎的分区中。本公开能够将路由键值相同的数据存储在第一存储引擎的同一个分区中,从而在通过第一存储引擎进行数据检索时,能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种数据存储、检索方法、电子设备及存储介质。
背景技术
表格存储(TableStore)是基于共享存储的高性能、低成本、易扩展且全托管的半结构化数据存储平台,支撑互联网和物联网数据的高效计算与分析。表格存储是一款分布式多模型数据库,支持多种数据模型(包括宽行、消息、时序、时空、图和文档等),满足不同应用场景的需求。
分布式数据库需要对数据进行分区,以利用分布式计算能力。分布式数据库的分区通常分为范围(Range)分区和哈希(Hash)分区。其中,范围分区是以列的值的范围作为分区的划分条件,将数据存放到列值所在的范围对应的分区中。哈希分区是将列的值先进行哈希计算,得到哈希值,再根据哈希值决定数据对应分区。哈希分区的方式可以将数据完全打散,有利于平衡访问压力。
数据库存储引擎是指数据库底层用于存储和检索数据的引擎。为了满足不同场景的需求,会有不同类型的存储引擎。例如,KeyValue引擎可以用于快速的单行查询和范围查询,Search引擎可以用于全文索引和多条件组合查询等。
通过Search引擎进行检索时,检索的范围常常是表中的所有记录,因此哈希计算的数据分布方式有利于平衡访问压力。然而,在某些情况下,用户只希望查询表中某个子维度范围下的数据。比如某文档类应用,可能将其所有用户的所有文档的信息存入一张表中,每次查询时只希望查询某个用户下的所有文档。如果采用哈希分区的方式,则一个用户的所有文档可能会分布在很多节点中,每次检索都需要检索所有节点,并对检索结果进行汇总,需要检索的数据量较大,检索效率较低。
发明内容
有鉴于此,本公开提出了一种数据存储、检索方法、电子设备及存储介质。
根据本公开的一方面,提供了一种数据存储方法,包括:
接收第一数据存储请求,所述第一数据存储请求用于将待存储数据存储在第一存储引擎中;
若基于所述第一数据存储请求,确定所述待存储数据具有路由键,则获取所述待存储数据的路由键值;
根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第一存储引擎的分区中。
在一种可能的实现方式中,根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区,包括:
根据所述待存储数据的路由键值,确定所述待存储数据对应的哈希值;
根据所述待存储数据对应的哈希值,确定所述待存储数据对应的所述第一存储引擎的分区。
在一种可能的实现方式中,所述路由键属于主键。
在一种可能的实现方式中,所述路由键不同于主键。
在一种可能的实现方式中,在接收第一数据存储请求之后,所述方法还包括:
若基于所述第一数据存储请求,确定所述待存储数据不具有路由键,则获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第一存储引擎的分区。
在一种可能的实现方式中,所述方法还包括:
接收第二数据存储请求,所述第二数据存储请求用于将所述待存储数据存储在第二存储引擎中;
基于所述第二数据存储请求,获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第二存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第二存储引擎的分区中。
根据本公开的另一方面,提供了一种数据检索方法,包括:
接收第一数据检索请求,所述第一数据检索请求用于在第一存储引擎中进行数据检索;
若所述第一数据检索请求包含路由键值,则根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区;
在所述第一数据检索请求对应的所述第一存储引擎的分区中,根据所述第一数据检索请求进行检索,得到检索结果。
在一种可能的实现方式中,根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区,包括:
根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的哈希值;
根据所述第一数据检索请求对应的哈希值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
在一种可能的实现方式中,在接收第一数据检索请求之后,所述方法还包括:
若所述第一数据检索请求不包含路由键值,则根据所述第一数据检索请求中的完整主键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
在一种可能的实现方式中,所述方法还包括:
接收第二数据检索请求,所述第二数据检索请求用于在第二存储引擎中进行数据检索;
根据所述第二数据检索请求中的完整主键值,确定所述第二数据检索请求对应的所述第二存储引擎的分区;
在所述第二数据检索请求对应的所述第二存储引擎的分区中,根据所述第二数据检索请求进行检索,得到检索结果。
根据本公开的另一方面,提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行:
接收第一数据存储请求,所述第一数据存储请求用于将待存储数据存储在第一存储引擎中;
若基于所述第一数据存储请求,确定所述待存储数据具有路由键,则获取所述待存储数据的路由键值;
根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区;
将所述待存储数据存储在所述对应的所述第一存储引擎的分区中;
接收第一数据检索请求,所述第一数据检索请求用于在所述第一存储引擎中进行数据检索;
若所述第一数据检索请求包含路由键值,则根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区;
在所述第一数据检索请求对应的所述第一存储引擎的分区中,根据所述第一数据检索请求进行检索,得到检索结果。
在一种可能的实现方式中,所述处理器被配置为执行:
根据所述待存储数据的路由键值,确定所述待存储数据对应的哈希值;
根据所述待存储数据对应的哈希值,确定所述待存储数据对应的所述第一存储引擎的分区;
根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的哈希值;
根据所述第一数据检索请求对应的哈希值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
在一种可能的实现方式中,所述路由键属于主键。
在一种可能的实现方式中,所述路由键不同于主键。
在一种可能的实现方式中,所述处理器被配置为执行:
若基于所述第一数据存储请求,确定所述待存储数据不具有路由键,则获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第一存储引擎的分区;
若所述第一数据检索请求不包含路由键值,则根据所述第一数据检索请求中的完整主键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
在一种可能的实现方式中,所述处理器被配置为执行:
接收第二数据存储请求,所述第二数据存储请求用于将所述待存储数据存储在第二存储引擎中;
基于所述第二数据存储请求,获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第二存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第二存储引擎的分区中;
接收第二数据检索请求,所述第二数据检索请求用于在所述第二存储引擎中进行数据检索;
根据所述第二数据检索请求中的完整主键值,确定所述第二数据检索请求对应的所述第二存储引擎的分区;
在所述第二数据检索请求对应的所述第二存储引擎的分区中,根据所述第二数据检索请求进行检索,得到检索结果。
根据本公开的另一方面,提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述数据存储方法或者上述数据检索方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述数据存储方法或者上述数据检索方法。
在本公开实施例中,接收第一数据存储请求,若基于第一数据存储请求,确定待存储数据具有路由键,则获取待存储数据的路由键值,根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区,并将待存储数据存储在待存储数据对应的第一存储引擎的分区中,由此能够将路由键值相同的数据存储在第一存储引擎的同一个分区中,从而在通过第一存储引擎进行数据检索时,能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的数据存储方法的流程图。
图2示出主键列和属性列的示意图。
图3示出根据本公开一实施例的数据存储方法中第一存储引擎包含多个分区的示意图。
图4示出根据本公开一实施例的数据存储方法中第二存储引擎包含多个分区的示意图。
图5示出根据本公开一实施例的数据检索方法的流程图。
图6示出根据本公开一实施例的数据存储装置的框图。
图7示出根据本公开一实施例的数据检索装置的框图。
图8是根据一示例性实施例示出的一种用于数据存储或数据检索的装置1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的数据存储方法的流程图。该数据存储方法的执行主体可以是数据存储装置。例如,该数据存储方法可以由服务器或其它处理设备执行。在一些可能的实现方式中,该数据存储方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。该数据存储方法可以应用于表格存储中。如图1所示,该数据存储方法包括步骤S11至步骤S14。
在步骤S11中,接收第一数据存储请求,第一数据存储请求用于将待存储数据存储在第一存储引擎中。
在本公开实施例中,存储引擎可以表示数据库底层用于存储和检索数据的引擎。
在一种可能的实现方式中,第一存储引擎为采用哈希分区方式的存储引擎。
作为该实现方式的一个示例,第一存储引擎为Search引擎。其中,Search引擎可以提供多条件组合检索、全文检索和地理空间检索等功能。
在该实现方式中,需要说明的是,尽管以Search引擎作为示例介绍了第一存储引擎如上,但本领域技术人员能够理解,本公开应不限于此。本领域技术人员可以根据实际应用场景需求和/或个人喜好灵活确定第一存储引擎的类型,只要是采用哈希分区方式的存储引擎即可。
在步骤S12中,若基于第一数据存储请求,确定待存储数据具有路由键(RoutingKey),则获取待存储数据的路由键值。
在一种可能的实现方式中,路由键由用户指定。基于该实现方式,用户可以自定义第一存储引擎中的数据分布方式。
在一种可能的实现方式中,路由键属于主键(PrimaryKey)。
作为该实现方式的一个示例,用户可以指定多个主键列中的一列作为路由键。
图2示出主键列和属性列的示意图。如图2所示,在本公开实施例中,数据库可以看作是一系列行(Row)的集合,每一行分为主键和多个属性列,其中,主键可以由多个主键列组成。主键用于唯一标识一行,数据存储时需要包含完整的主键值,在数据检索时通过主键可以唯一定位到一行数据。在一种可能的实现方式中,主键不可更改,在路由键属于主键的情况下,路由键也不可更改,从而能够保证路由规则不变。在图2所示的示例中,主键包含多个主键列,主键列不能为空;每行的属性列的个数不限,属性列可以为空。
在另一种可能的实现方式中,路由键不同于主键。在该实现方式中,路由键可以为额外增加的字段,路由键既不属于主键,也不属于属性列。在该实现方式中,路由键不可更改。
在步骤S13中,根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区。
在本公开实施例中,路由键值相同的数据对应的第一存储引擎中的分区相同,即,路由键值相同的行会被索引到第一存储引擎的相同的分区中。
图3示出根据本公开一实施例的数据存储方法中第一存储引擎包含多个分区的示意图。
在一种可能的实现方式中,根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区,包括:根据待存储数据的路由键值,确定待存储数据对应的哈希值;根据待存储数据对应的哈希值,确定待存储数据对应的第一存储引擎的分区。在本公开实施例中,相同的路由键值对应于相同的哈希值,相同的哈希值对应于第一存储引擎中相同的分区。
在步骤S14中,将待存储数据存储在待存储数据对应的第一存储引擎的分区中。
在本公开实施例中,接收第一数据存储请求,若基于第一数据存储请求,确定待存储数据具有路由键,则获取待存储数据的路由键值,根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区,并将待存储数据存储在待存储数据对应的第一存储引擎的分区中,由此能够将路由键值相同的数据存储在第一存储引擎的同一个分区中,从而在通过第一存储引擎进行数据检索时,能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
例如,一张表的主键由两列主键列构成,第一列为用户ID(UseID),第二列为文档ID(DocID),若用户指定用户ID为路由键,则用户ID相同的所有行就会被写入第一存储引擎的同一个分区中。
在一种可能的实现方式中,该方法还包括:若基于第一数据存储请求,确定待存储数据不具有路由键,则根据待存储数据的完整主键值,确定待存储数据对应的第一存储引擎的分区。其中,完整主键值表示所有主键列的值。在该实现方式中,若待存储数据不具有路由键,则可以根据待存储数据的完整主键值,确定待存储数据对应的哈希值,再根据待存储数据对应的哈希值,确定待存储数据对应的第一存储引擎的分区。
在一种可能的实现方式中,该方法还包括:接收第二数据存储请求,第二数据存储请求用于将待存储数据存储在第二存储引擎中;基于第二数据存储请求,获取待存储数据的完整主键值;根据待存储数据的完整主键值,确定待存储数据对应的第二存储引擎的分区;将待存储数据存储在待存储数据对应的第二存储引擎的分区中。
在一种可能的实现方式中,第二存储引擎为采用范围分区方式的存储引擎。
作为该实现方式的一个示例,第二存储引擎为KeyValue引擎。其中,KeyValue引擎具有单行查询和范围查询等功能。KeyValue引擎在数据分布上通常按照主键有序排序的方式,这种数据分布方式支持按照主键顺序进行范围查找。
在该实现方式中,需要说明的是,尽管以KeyValue引擎作为示例介绍了第二存储引擎如上,但本领域技术人员能够理解,本公开应不限于此。本领域技术人员可以根据实际应用场景需求和/或个人喜好灵活确定第二存储引擎的类型,只要是采用范围分区方式的存储引擎即可。
图4示出根据本公开一实施例的数据存储方法中第二存储引擎包含多个分区的示意图。
本公开实施例可以应用于多模型数据库中。在进行数据存储时,可以先将待存储数据写入第二存储引擎中,再由第二存储引擎将待存储数据同步给第一存储引擎。
图5示出根据本公开一实施例的数据检索方法的流程图。该数据检索方法的执行主体可以是数据检索装置。例如,该数据检索方法可以由服务器或其它处理设备执行。在一些可能的实现方式中,该数据检索方法可以通过处理器调用检索器中检索的计算机可读指令的方式来实现。本公开实施例可以应用于多模型数据库中。如图5所示,该数据检索方法包括步骤S51至步骤S53。
在步骤S51中,接收第一数据检索请求,第一数据检索请求用于在第一存储引擎中进行数据检索。
在步骤S52中,若第一数据检索请求包含路由键值,则根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区。
在一种可能的实现方式中,根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区,包括:根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的哈希值;根据第一数据检索请求对应的哈希值,确定第一数据检索请求对应的第一存储引擎的分区。
在步骤S53中,在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索,得到检索结果。
在本公开实施例中,若第一数据检索请求包含路由键值,则可以仅在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索。
在本公开实施例中,接收第一数据检索请求,若第一数据检索请求包含路由键值,则根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区,并在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索,得到检索结果,从而能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
在一种可能的实现方式中,该方法还包括:在接收第一数据检索请求之后,该方法还包括:若第一数据检索请求不包含路由键值,则根据第一数据检索请求中的完整主键值,确定第一数据检索请求对应的第一存储引擎的分区。在该实现方式中,在接收到第一数据检索请求后,判断第一数据检索请求是否包含路由键值,若第一数据检索请求不包含路由键值,则根据第一数据检索请求中的完整主键值,确定第一数据检索请求对应的第一存储引擎的至少一个分区,在该至少一个分区中进行检索。在获取来自不同分区的检索结果后,需要对来自不同分区的检索结果进行聚合,得到聚合结果。
在一种可能的实现方式中,该方法还包括:接收第二数据检索请求,第二数据检索请求用于在第二存储引擎中进行数据检索;根据第二数据检索请求中的完整主键值,确定第二数据检索请求对应的第二存储引擎的分区;在第二数据检索请求对应的第二存储引擎的分区中,根据第二数据检索请求进行检索,得到检索结果。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行:接收第一数据存储请求,第一数据存储请求用于将待存储数据存储在第一存储引擎中;若基于第一数据存储请求,确定待存储数据具有路由键,则获取待存储数据的路由键值;根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区;将待存储数据存储在对应的第一存储引擎的分区中;接收第一数据检索请求,第一数据检索请求用于在第一存储引擎中进行数据检索;若第一数据检索请求包含路由键值,则根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区;在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索,得到检索结果。
在一种可能的实现方式中,处理器被配置为执行:根据待存储数据的路由键值,确定待存储数据对应的哈希值;根据待存储数据对应的哈希值,确定待存储数据对应的第一存储引擎的分区;根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的哈希值;根据第一数据检索请求对应的哈希值,确定第一数据检索请求对应的第一存储引擎的分区。
在一种可能的实现方式中,路由键属于主键。
在一种可能的实现方式中,路由键不同于主键。
在一种可能的实现方式中,处理器被配置为执行:若基于第一数据存储请求,确定待存储数据不具有路由键,则获取待存储数据的完整主键值;根据待存储数据的完整主键值,确定待存储数据对应的第一存储引擎的分区;若第一数据检索请求不包含路由键值,则根据第一数据检索请求中的完整主键值,确定第一数据检索请求对应的第一存储引擎的分区。
在一种可能的实现方式中,处理器被配置为执行:接收第二数据存储请求,第二数据存储请求用于将待存储数据存储在第二存储引擎中;基于第二数据存储请求,获取待存储数据的完整主键值;根据待存储数据的完整主键值,确定待存储数据对应的第二存储引擎的分区;将待存储数据存储在待存储数据对应的第二存储引擎的分区中;接收第二数据检索请求,第二数据检索请求用于在第二存储引擎中进行数据检索;根据第二数据检索请求中的完整主键值,确定第二数据检索请求对应的第二存储引擎的分区;在第二数据检索请求对应的第二存储引擎的分区中,根据第二数据检索请求进行检索,得到检索结果。
本公开实施例提供的电子设备的处理器的具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
图6示出根据本公开一实施例的数据存储装置的框图。如图6所示,该装置包括:第一接收模块61,用于接收第一数据存储请求,第一数据存储请求用于将待存储数据存储在第一存储引擎中;第一获取模块62,用于若基于第一数据存储请求,确定待存储数据具有路由键,则获取待存储数据的路由键值;第一确定模块63,用于根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区;第一存储模块64,用于将待存储数据存储在待存储数据对应的第一存储引擎的分区中。
在一种可能的实现方式中,第一确定模块63用于:根据待存储数据的路由键值,确定待存储数据对应的哈希值;根据待存储数据对应的哈希值,确定待存储数据对应的第一存储引擎的分区。
在一种可能的实现方式中,路由键属于主键。
在一种可能的实现方式中,路由键不同于主键。
在一种可能的实现方式中,该装置还包括:第二获取模块,用于若基于第一数据存储请求,确定待存储数据不具有路由键,则获取待存储数据的完整主键值;第二确定模块,用于根据待存储数据的完整主键值,确定待存储数据对应的第一存储引擎的分区。
在一种可能的实现方式中,该装置还包括:第二接收模块,用于接收第二数据存储请求,第二数据存储请求用于将待存储数据存储在第二存储引擎中;第三获取模块,用于基于第二数据存储请求,获取待存储数据的完整主键值;第三确定模块,用于根据待存储数据的完整主键值,确定待存储数据对应的第二存储引擎的分区;第二存储模块,用于将待存储数据存储在待存储数据对应的第二存储引擎的分区中。
在本公开实施例中,接收第一数据存储请求,若基于第一数据存储请求,确定待存储数据具有路由键,则获取待存储数据的路由键值,根据待存储数据的路由键值,确定待存储数据对应的第一存储引擎的分区,并将待存储数据存储在待存储数据对应的第一存储引擎的分区中,由此能够将路由键值相同的数据存储在第一存储引擎的同一个分区中,从而在通过第一存储引擎进行数据检索时,能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
在一些实施例中,本公开实施例提供的数据存储装置具有的功能或包含的模块可以用于执行上文方法实施例描述的数据存储方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
图7示出根据本公开一实施例的数据检索装置的框图。如图7所示,该装置包括:第三接收模块71,用于接收第一数据检索请求,第一数据检索请求用于在第一存储引擎中进行数据检索;第四确定模块72,用于若第一数据检索请求包含路由键值,则根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区;第一检索模块73,用于在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索,得到检索结果。
在一种可能的实现方式中,第四确定模块72用于:根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的哈希值;根据第一数据检索请求对应的哈希值,确定第一数据检索请求对应的第一存储引擎的分区。
在一种可能的实现方式中,该装置还包括:第五确定模块,用于若第一数据检索请求不包含路由键值,则根据第一数据检索请求中的完整主键值,确定第一数据检索请求对应的第一存储引擎的分区。
在一种可能的实现方式中,该装置还包括:第三接收模块,用于接收第二数据检索请求,第二数据检索请求用于在第二存储引擎中进行数据检索;第六确定模块,用于根据第二数据检索请求中的完整主键值,确定第二数据检索请求对应的第二存储引擎的分区;第二检索模块,用于在第二数据检索请求对应的第二存储引擎的分区中,根据第二数据检索请求进行检索,得到检索结果。
在本公开实施例中,接收第一数据检索请求,若第一数据检索请求包含路由键值,则根据第一数据检索请求中的路由键值,确定第一数据检索请求对应的第一存储引擎的分区,并在第一数据检索请求对应的第一存储引擎的分区中,根据第一数据检索请求进行检索,得到检索结果,从而能够大大减小需要检索的数据量,提高第一存储引擎的检索效率,并能节省计算资源。
在一些实施例中,本公开实施例提供的数据检索装置具有的功能或包含的模块可以用于执行上文方法实施例描述的数据检索方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
图8是根据一示例性实施例示出的一种用于数据存储或数据检索的装置1900的框图。例如,装置1900可以被提供为一服务器。参照图8,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (18)
1.一种数据存储方法,其特征在于,包括:
接收第一数据存储请求,所述第一数据存储请求用于将待存储数据存储在第一存储引擎中;
若基于所述第一数据存储请求,确定所述待存储数据具有路由键,则获取所述待存储数据的路由键值;
根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第一存储引擎的分区中。
2.根据权利要求1所述的方法,其特征在于,根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区,包括:
根据所述待存储数据的路由键值,确定所述待存储数据对应的哈希值;
根据所述待存储数据对应的哈希值,确定所述待存储数据对应的所述第一存储引擎的分区。
3.根据权利要求1所述的方法,其特征在于,所述路由键属于主键。
4.根据权利要求1所述的方法,其特征在于,所述路由键不同于主键。
5.根据权利要求1所述的方法,其特征在于,在接收第一数据存储请求之后,所述方法还包括:
若基于所述第一数据存储请求,确定所述待存储数据不具有路由键,则获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第一存储引擎的分区。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收第二数据存储请求,所述第二数据存储请求用于将所述待存储数据存储在第二存储引擎中;
基于所述第二数据存储请求,获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第二存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第二存储引擎的分区中。
7.一种数据检索方法,其特征在于,包括:
接收第一数据检索请求,所述第一数据检索请求用于在第一存储引擎中进行数据检索;
若所述第一数据检索请求包含路由键值,则根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区;
在所述第一数据检索请求对应的所述第一存储引擎的分区中,根据所述第一数据检索请求进行检索,得到检索结果。
8.根据权利要求7所述的方法,其特征在于,根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区,包括:
根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的哈希值;
根据所述第一数据检索请求对应的哈希值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
9.根据权利要求7所述的方法,其特征在于,在接收第一数据检索请求之后,所述方法还包括:
若所述第一数据检索请求不包含路由键值,则根据所述第一数据检索请求中的完整主键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收第二数据检索请求,所述第二数据检索请求用于在第二存储引擎中进行数据检索;
根据所述第二数据检索请求中的完整主键值,确定所述第二数据检索请求对应的所述第二存储引擎的分区;
在所述第二数据检索请求对应的所述第二存储引擎的分区中,根据所述第二数据检索请求进行检索,得到检索结果。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行:
接收第一数据存储请求,所述第一数据存储请求用于将待存储数据存储在第一存储引擎中;
若基于所述第一数据存储请求,确定所述待存储数据具有路由键,则获取所述待存储数据的路由键值;
根据所述待存储数据的路由键值,确定所述待存储数据对应的所述第一存储引擎的分区;
将所述待存储数据存储在所述对应的所述第一存储引擎的分区中;
接收第一数据检索请求,所述第一数据检索请求用于在所述第一存储引擎中进行数据检索;
若所述第一数据检索请求包含路由键值,则根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区;
在所述第一数据检索请求对应的所述第一存储引擎的分区中,根据所述第一数据检索请求进行检索,得到检索结果。
12.根据权利要求11所述的电子设备,其特征在于,所述处理器被配置为执行:
根据所述待存储数据的路由键值,确定所述待存储数据对应的哈希值;
根据所述待存储数据对应的哈希值,确定所述待存储数据对应的所述第一存储引擎的分区;
根据所述第一数据检索请求中的路由键值,确定所述第一数据检索请求对应的哈希值;
根据所述第一数据检索请求对应的哈希值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
13.根据权利要求11所述的电子设备,其特征在于,所述路由键属于主键。
14.根据权利要求11所述的电子设备,其特征在于,所述路由键不同于主键。
15.根据权利要求11所述的电子设备,其特征在于,所述处理器被配置为执行:
若基于所述第一数据存储请求,确定所述待存储数据不具有路由键,则获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第一存储引擎的分区;
若所述第一数据检索请求不包含路由键值,则根据所述第一数据检索请求中的完整主键值,确定所述第一数据检索请求对应的所述第一存储引擎的分区。
16.根据权利要求11所述的电子设备,其特征在于,所述处理器被配置为执行:
接收第二数据存储请求,所述第二数据存储请求用于将所述待存储数据存储在第二存储引擎中;
基于所述第二数据存储请求,获取所述待存储数据的完整主键值;
根据所述待存储数据的完整主键值,确定所述待存储数据对应的所述第二存储引擎的分区;
将所述待存储数据存储在所述待存储数据对应的所述第二存储引擎的分区中;
接收第二数据检索请求,所述第二数据检索请求用于在所述第二存储引擎中进行数据检索;
根据所述第二数据检索请求中的完整主键值,确定所述第二数据检索请求对应的所述第二存储引擎的分区;
在所述第二数据检索请求对应的所述第二存储引擎的分区中,根据所述第二数据检索请求进行检索,得到检索结果。
17.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1至6中任意一项所述的方法,或者执行权利要求7至10中任意一项所述的方法。
18.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法,或者实现权利要求7至10中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910167503.0A CN111666278B (zh) | 2019-03-06 | 2019-03-06 | 数据存储、检索方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910167503.0A CN111666278B (zh) | 2019-03-06 | 2019-03-06 | 数据存储、检索方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111666278A true CN111666278A (zh) | 2020-09-15 |
CN111666278B CN111666278B (zh) | 2024-03-26 |
Family
ID=72382240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910167503.0A Active CN111666278B (zh) | 2019-03-06 | 2019-03-06 | 数据存储、检索方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111666278B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650759A (zh) * | 2020-12-30 | 2021-04-13 | 中国平安人寿保险股份有限公司 | 数据查询方法、装置、计算机设备及存储介质 |
CN117555968A (zh) * | 2024-01-12 | 2024-02-13 | 浙江智臾科技有限公司 | 数据处理方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460394A (zh) * | 2009-06-22 | 2012-05-16 | 思杰系统有限公司 | 用于多核系统中的分布式哈希表的系统和方法 |
CN103838770A (zh) * | 2012-11-26 | 2014-06-04 | 中国移动通信集团北京有限公司 | 一种数据逻辑分区的方法和系统 |
US20150310051A1 (en) * | 2014-04-29 | 2015-10-29 | International Business Machines Corporation | Data partitioning for high-efficiency data retrieval |
CN107689977A (zh) * | 2016-08-05 | 2018-02-13 | 厦门雅迅网络股份有限公司 | 分布式缓存和推送的路由方法及其系统 |
CN108446363A (zh) * | 2018-03-13 | 2018-08-24 | 北京奇安信科技有限公司 | 一种kv引擎的数据处理方法及装置 |
CN108920908A (zh) * | 2018-06-28 | 2018-11-30 | 北京京东尚科信息技术有限公司 | 数据存储方法、装置和计算机可读存储介质 |
US20190004863A1 (en) * | 2017-06-30 | 2019-01-03 | Microsoft Technology Licensing, Llc | Hash-based partitioning system |
-
2019
- 2019-03-06 CN CN201910167503.0A patent/CN111666278B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460394A (zh) * | 2009-06-22 | 2012-05-16 | 思杰系统有限公司 | 用于多核系统中的分布式哈希表的系统和方法 |
CN103838770A (zh) * | 2012-11-26 | 2014-06-04 | 中国移动通信集团北京有限公司 | 一种数据逻辑分区的方法和系统 |
US20150310051A1 (en) * | 2014-04-29 | 2015-10-29 | International Business Machines Corporation | Data partitioning for high-efficiency data retrieval |
CN107689977A (zh) * | 2016-08-05 | 2018-02-13 | 厦门雅迅网络股份有限公司 | 分布式缓存和推送的路由方法及其系统 |
US20190004863A1 (en) * | 2017-06-30 | 2019-01-03 | Microsoft Technology Licensing, Llc | Hash-based partitioning system |
CN108446363A (zh) * | 2018-03-13 | 2018-08-24 | 北京奇安信科技有限公司 | 一种kv引擎的数据处理方法及装置 |
CN108920908A (zh) * | 2018-06-28 | 2018-11-30 | 北京京东尚科信息技术有限公司 | 数据存储方法、装置和计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
田浪军;陈卫卫;陈卫东;李涛;: "云存储系统中动态负载均衡算法研究", 计算机工程, no. 10 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650759A (zh) * | 2020-12-30 | 2021-04-13 | 中国平安人寿保险股份有限公司 | 数据查询方法、装置、计算机设备及存储介质 |
CN112650759B (zh) * | 2020-12-30 | 2023-10-27 | 中国平安人寿保险股份有限公司 | 数据查询方法、装置、计算机设备及存储介质 |
CN117555968A (zh) * | 2024-01-12 | 2024-02-13 | 浙江智臾科技有限公司 | 数据处理方法、装置、设备及存储介质 |
CN117555968B (zh) * | 2024-01-12 | 2024-04-19 | 浙江智臾科技有限公司 | 数据处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111666278B (zh) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109614402B (zh) | 多维数据查询方法和装置 | |
US20150293958A1 (en) | Scalable data structures | |
CN109871311B (zh) | 一种推荐测试用例的方法和装置 | |
CN107480205B (zh) | 一种进行数据分区的方法和装置 | |
CN105760418B (zh) | 用于对关系数据库表进行交叉列搜索的方法和系统 | |
CN111435406A (zh) | 一种纠正数据库语句拼写错误的方法和装置 | |
CN114579561A (zh) | 数据处理方法和装置、存储介质 | |
CN111666278B (zh) | 数据存储、检索方法、电子设备及存储介质 | |
US9984108B2 (en) | Database joins using uncertain criteria | |
CN112860412B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
US9904695B2 (en) | Efficient sorting of large data set with duplicate values | |
US11250002B2 (en) | Result set output criteria | |
CN110580255A (zh) | 一种存储并检索数据的方法以及系统 | |
CN109697234B (zh) | 实体的多属性信息查询方法、装置、服务器和介质 | |
US11042578B2 (en) | Multigram index for database query | |
US10318507B2 (en) | Optimizing tables with too many columns in a database | |
CN116628010A (zh) | 数据处理方法、装置及设备 | |
CN112835932B (zh) | 业务表的批量处理方法及装置、非易失性存储介质 | |
CN113760907A (zh) | 一种数据库中数据唯一性标识方法 | |
CN111309704B (zh) | 数据库操作方法和数据库操作系统 | |
CN113742321A (zh) | 一种数据更新的方法和装置 | |
CN113704242A (zh) | 一种数据处理方法和装置 | |
CN111639099A (zh) | 全文索引方法及系统 | |
CN113495891A (zh) | 一种数据处理方法和装置 | |
CN113448957A (zh) | 一种数据查询方法和装置 |
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 |