CN113886434A - 基于数据库集群的查询和存储方法、装置以及设备 - Google Patents
基于数据库集群的查询和存储方法、装置以及设备 Download PDFInfo
- Publication number
- CN113886434A CN113886434A CN202111286480.9A CN202111286480A CN113886434A CN 113886434 A CN113886434 A CN 113886434A CN 202111286480 A CN202111286480 A CN 202111286480A CN 113886434 A CN113886434 A CN 113886434A
- Authority
- CN
- China
- Prior art keywords
- target
- index information
- storage
- data
- node
- 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.)
- Pending
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/24—Querying
- G06F16/245—Query processing
-
- 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/242—Query formulation
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Abstract
本公开提供了基于数据库集群的查询和存储方法、装置以及设备,涉及计算机技术领域,尤其涉及大数据以及数据库管理领域。具体实现方案为:根据查询请求的查询条件,确定目标索引信息;利用根索引服务器,从多个存储区域中确定出与目标索引信息对应的目标存储区域;从目标存储区域包括的多个存储节点中确定出与目标索引信息对应的目标存储节点;将查询请求发送至目标存储节点,得到目标数据。根据本公开的技术,提高了查询效率以及查询精准度,提高了数据库集群对计算资源的利用率。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及大数据以及数据库管理技术领域。
背景技术
现阶段物联网技术蓬勃发展,会产生大量的时序数据,大规模时序数据库集群面临的主要问题之一就是数据洪流,由于数据高速写入且不断更新的特点,不适合维护索引。在这样的背景下,为了承接大量查询,快速锁定数据在集群中的节点范围,控制大规模集群下查询扇出显得尤为重要。
发明内容
本公开提供了基于数据库集群的查询和存储方法、装置以及设备。
根据本公开的一方面,提供了一种基于数据库集群的查询方法,包括:
根据查询请求的查询条件,确定目标索引信息;
利用根索引服务器,从多个存储区域中确定出与目标索引信息对应的目标存储区域;
从目标存储区域包括的多个存储节点中确定出与目标索引信息对应的目标存储节点;
将查询请求发送至目标存储节点,得到目标数据。
根据本公开的另一方面,提供了一种基于数据库集群的存储方法,包括:
获取已存储数据的索引信息;
将已存储数据的索引信息以及存储已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
将已存储数据的索引信息以及存储已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
根据本公开的另一方面,提供了一种基于数据库集群的查询装置,包括:
目标索引信息确定模块,用于根据查询请求的查询条件,确定目标索引信息;
目标存储区域确定模块,用于利用根索引服务器,从多个存储区域中确定出与目标索引信息对应的目标存储区域;
目标存储节点确定模块,用于从目标存储区域包括的多个存储节点中确定出与目标索引信息对应的目标存储节点;
目标数据获取模块,用于将查询请求发送至目标存储节点,得到目标数据。
根据本公开的另一方面,提供了一种基于数据库集群的存储装置,包括:
索引信息获取模块,用于获取已存储数据的索引信息;
子索引信息目录存储模块,用于将已存储数据的索引信息以及存储已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
索引信息目录模块,用于将已存储数据的索引信息以及存储已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开任一实施例中的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行本公开任一实施例中的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本公开任一实施例中的方法。
根据本公开的技术,可以依次对多个存储区域以及存储区域的多个存储节点进行筛选,从而缩小数据库集群的查询范围,解决了相关技术中因网络通信成本(例如网络延时和网络故障)所导致的顺序访问吞吐无法提高和难以突破的技术问题,提高了查询效率以及查询精准度,并且使数据库集群的顺序访问吞吐不受跨IDC(Internet Data Center,互联网数据中心)以及网络拓扑的影响,大大提高了数据库集群对计算资源的利用率。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1示出根据本公开实施例的基于数据库集群的查询方法的流程图;
图2示出根据本公开实施例的基于数据库集群的查询方法的确定目标索引信息的具体流程图;
图3示出根据本公开实施例的基于数据库集群的查询方法的确定目标存储区域的具体流程图;
图4示出根据本公开实施例的基于数据库集群的查询方法的确定目标存储节点的具体流程图;
图5示出根据本公开实施例的基于数据库集群的查询方法的确定目标存储节点的具体流程图;
图6示出根据本公开实施例的基于数据库集群的查询方法的得到目标数据的具体流程图;
图7示出根据本公开实施例的基于数据库集群的存储方法的流程图;
图8示出根据本公开实施例的基于数据库集群的存储方法的获取索引信息的具体流程图;
图9示出根据本公开实施例的基于数据库集群的存储方法的存储待存储数据的具体流程图;
图10示出根据本公开实施例的基于数据库集群的查询装置的方框图;
图11示出根据本公开实施例的基于数据库集群的存储装置的方框图;
图12是用来实现本公开实施例的基于数据库集群的查询和/或存储方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
下面参照图1至图5描述根据本公开实施例的基于数据库集群的查询方法。
如图1所示,根据本公开实施例的数据库集群的查询方法具体包括以下步骤:
S101:根据查询请求的查询条件,确定目标索引信息;
S102:利用根索引服务器,从多个存储区域中确定出与目标索引信息对应的目标存储区域;
S103:从目标存储区域包括的多个存储节点中确定出与目标索引信息对应的目标存储节点;
S104:将查询请求发送至目标存储节点,得到目标数据。
本公开实施例的数据库集群的查询方法可以应用于时序数据库集群。
示例性地,数据库集群可以包括多个存储区域,每个存储区域包含有多个存储节点,各存储节点存储有一定量的时序数据。其中,存储节点可以为计算机主机设备。
其中,数据库集群可以为大规模的时序数据库集群,例如可以包括十万个以上的存储节点,该数据库集群可以存储有PB(Petabytes,拍字节)级别即2^50字节的数据量,并且每秒可以消费TB(Terabyte,太字节)级别即2^40字节的数据量,每秒钟提供上百万次的查询服务。
示例性地,在步骤S101中,查询请求可以由数据库集群的查询服务器接收,其中,查询请求的查询条件具体可以是查询字符串。目标索引信息为查询请求所请求访问的目标数据的相关信息,例如,可以为目标数据的摘要信息。目标索引信息可以通过对查询字符串经过相应的文本处理得到。
示例性地,在步骤S102中,数据库集群可以包括索引服务器集群,索引服务器集群可以包括根索引服务器。其中,根索引服务器预先存储有索引信息目录,索引信息目录包括各存储区域的区域编号以及各存储区域的存储数据的索引信息。根索引服务器用于根据目标索引信息以及索引信息目录,对所有的存储区域进行过滤筛选,从而得到索引信息目录中存储有目标索引信息的存储区域,进而得到目标存储区域。
其中,各存储区域的区域编号以及其存储数据的索引信息,可以在该存储区域的存储数据存储至存储节点之后,通过该存储区域对应的区域索引服务器发送并存储至根存储节点。
需要说明的是,在步骤S102中,确定出的目标存储区域的数量可以为一个或多个。
示例性地,在步骤S103中,索引服务器集群还包括与多个存储区域分别对应的区域索引服务器。区域索引服务器预先存储有子索引信息目录,子索引信息目录包括与区域索引服务器对应的存储区域中的各存储节点的节点编号以及各存储节点的存储数据的索引信息。区域索引服务器用于根据目标索引信息以及子索引信息目录,对目标存储区域中所有的存储节点进行过滤筛选,从而得到子索引信息目录中存储有目标索引信息的存储节点,进而得到目标存储节点。
其中,各存储节点所存储的存储数据的索引信息以及存储节点的界定编号,可以在存储数据存储至存储节点后,通过相应的存储节点发送并存储至该存储节点所在的存储区域对应的区域索引服务器。
需要说明的是,如果在步骤S102中确定出多个目标存储区域,则针对每个目标存储区域分别执行步骤S102。并且,在步骤S103中,针对每个目标存储区域,确定出的目标存储节点的数量可以为一个或多个。
示例性地,在步骤S104中,在确定出至少一个目标存储节点之后,可以利用根查询服务器将查询请求分发至目标存储区域,然后通过目标存储区域的区域查询服务器将查询请求分发至目标存储节点,目标存储节点响应于查询请求执行查询处理,得到相应的查询结果并将查询结果反馈至区域查询服务器,然后区域查询服务器将查询结果反馈至根查询服务器,最终通过根查询服务器得到目标数据。
在一个具体示例中,数据库集群的所有存储数据被拆分并存储至至少一个存储区域,且存储区域包含多个存储节点,存储数据进一步被拆分并存储至该存储区域中的至少一个存储节点。查询服务器接收查询请求,根据查询请求的查询条件得到目标索引信息,然后利用根索引服务器中预先存储的各存储区域的存储数据的索引信息以及各存储区域的区域编号,对多个存储区域进行过滤和筛选,确定出目标索引信息对应的目标存储区域。然后,查询服务器利用目标存储区域对应的区域索引服务器的各存储节点的存储数据的索引信息以及各存储节点的节点编号,从多个存储节点中确定出与目标索引信息对应的目标存储节点。最后,查询服务器将查询请求分发至目标存储节点,并接收目标存储节点的查询结果,得到查询请求所要访问的目标数据。
根据本公开实施例的基于数据库集群的查询方法,通过根据查询请求的查询条件确定目标索引信息,并基于目标索引信息利用根索引服务器对多个存储区域进行过滤筛选,从而确定出目标索引信息对应的目标存储区域,然后根据目标索引信息进一步从目标存储区域的多个存储节点中确定出目标存储节点,由此,可以依次对多个存储区域以及存储区域的多个存储节点进行筛选,从而缩小数据库集群的查询范围,解决了相关技术中因网络通信成本(例如网络延时和网络故障)所导致的顺序访问吞吐无法提高和难以突破的技术问题,提高了查询效率以及查询精准度,并且使数据库集群的顺序访问吞吐不受跨IDC(Internet Data Center,互联网数据中心)以及网络拓扑的影响,大大提高了数据库集群对计算资源的利用率。
如图2所示,在一种实施方式中,步骤S101包括:
S201:确定查询条件的字符串中包含的关键值;
S202:对关键值进行N分词的切分处理,得到目标索引信息,其中,N分词包括N个字符,且N大于或等于2。
示例性地,目标索引信息可以为查询请求所要访问的目标数据的摘要信息。具体地,可以对查询条件的字符串提取关键词,以得到关键词对应的关键值。例如,查询条件中包含关键词“service”的字符串为“service=baikalDB”,对字符串中的关键词“service”进行提取,得到关键值为“baikalDB”。然后对关键值进行N分词处理,其中,N可以为3。通过对关键值进行三分词切分处理,得到具有多个三分词的三分词组,即“^^b,^ba,bai,aik,kal,alD,DB$,B$$”,该三分词组即为查询请求对应的目标索引信息。
需要说明的是,在对数据进行存储时,可以采用与步骤S201和S202相同或相似的步骤对存储数据的日志数据进行相应处理,以得到存储数据的索引信息,然后将索引信息发送并存储至索引服务器。
例如,存储节点存储的存储数据的索引信息可以根据存储数据的日志数据获得。存储数据的日志数据包括的字段信息有“service,reqId,time,errorinfo”,提取日志数据中包含关键词“service”的字符串,并对该字符串进行三分词切分处理,得到存储数据的索引信息。
根据上述实施方式,通过对查询条件的字符串进行N分词的切分处理,即可生成查询条件的目标索引信息,并根据目标索引信息与预先存储的存储数据的索引信息进行匹配,从而高效率地确定出查询请求所要访问的目标数据所位于的目标存储区域和目标存储节点。
如图3所示,在一种实施方式中,根索引服务器包括根过滤器,根过滤器预先存储有各存储区域对应的索引信息目录,步骤S102包括:
S301:根据目标索引信息以及索引信息目录,利用根过滤器对多个存储区域进行过滤,得到目标存储区域。
示例性地,在步骤S301中,索引信息目录预先存储有各存储区域的区域编号以及各存储区域所存储的存储数据的索引信息。根过滤器通过将目标索引信息与索引信息目录中存储的各存储区域的存储数据的索引信息进行匹配,并将不包含目标索引信息的索引信息目录对应的存储区域进行过滤,从而将剩余的存储区域即包含目标索引信息的索引信息目录对应的存储区域作为目标存储区域。
通过上述实施方式,可以从多个存储区域中筛选出与目标索引信息相关联的目标存储区域,从而快速过滤排除掉针对查询请求不满足查询条件的存储区域,初步缩减查询范围,提高查询效率。
如图4所示,在一种实施方式中,步骤S103包括:
S401:利用目标存储区域对应的区域索引服务器,确定出目标存储节点。
示例性地,各存储区域分别对应有区域索引服务器。区域索引服务器预先存储有该存储区域中所有存储节点的存储数据的索引信息。目标存储区域的区域索引服务器通过对目标索引信息以及目标存储区域对应的所有存储数据的索引信息进行匹配,以对该存储区域包含的多个存储节点进行过滤,最终从目标存储区域的多个存储节点中确定出目标存储节点。
根据上述实施方式,通过利用区域索引服务器可以从目标存储区域的多个存储节点中快速高效地确定出与目标索引信息相关联的目标存储节点,从而进一步缩小查询范围,进一步提高查询效率。
如图5所示,在一种实施方式中,区域索引服务器包括节点过滤器,节点过滤器预先存储有各存储节点对应的子索引信息目录;步骤S103包括:
S501:根据目标索引信息以及子索引信息目录,利用节点过滤器对目标存储区域包括的多个存储节点进行过滤,得到目标存储节点。
示例性地,存储区域对应的子索引信息目录可以包括存储区域中所有的存储节点的存储数据的索引信息以及各存储节点的节点编号。目标存储区域对应的节点过滤器对目标索引信息以及子索引信息目录进行匹配,以对目标存储区域中的多个存储节点进行过滤,从而得到与目标索引信息相关联的目标存储节点。
可以理解的是,子索引信息目录中预先存储的各存储节点的存储数据的索引信息,可以在将存储数据存储至存储节点后,由存储节点将存储数据的索引信息反馈至区域索引服务器,然后由区域索引服务器将索引信息存储至节点过滤器。
根据上述实施方式,通过在区域索引服务器构建节点过滤器,且节点过滤器包括存储区域中所有存储节点的存储数据的索引信息,由此,可以实现对目标存储区域中的多个存储节点进行快速过滤,从而快速确定出与目标索引信息相关联的目标存储节点,提高目标存储节点的筛选效率。
如图6所示,在一种实施方式中,步骤S104包括:
S601:利用查询服务器将查询请求分发至各目标存储节点;
S602:接收各目标存储节点的查询结果,根据各查询结果得到目标数据。
示例性地,查询服务器接收查询请求后,利用根索引服务器和区域索引服务器分别确定出目标存储区域和目标存储节点后,将查询请求拆解为多个子查询请求,并将多个子查询请求分发至相应的目标存储节点。响应于子查询请求,存储节点执行查询处理并得到查询结果,并将查询结果反馈至查询服务器。查询服务器根据各目标存储节点反馈的查询结果,得到查询请求所要访问的目标数据。
通过上述实施方式,可以实现对查询请求所要访问的目标数据的快速查询,并将分别存储至各个目标存储节点的数据全部召回,无需访问数据库集群的所有存储节点,由此,降低了对数据库集群进行查询时的网络通信成本,提高了对网络资源的利用率。
根据本公开实施例,还提供了一种数据库集群的存储方法。
如图7所示,根据本公开实施例的数据库集群的存储方法具体包括以下步骤:
S701:获取已存储数据的索引信息;
S702:将已存储数据的索引信息以及存储已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
S703:将已存储数据的索引信息以及存储已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
示例性地,在步骤S701中,已存储数据的索引信息可以为已存储数据的摘要信息。例如,在待存储数据存储至存储节点后,可以由存储节点对已存储数据的日志数据的字符串进行切分处理,得到以存储数据的索引信息。
示例性地,在步骤S702中,存储节点将已存储数据的索引信息以及存储节点的节点编号发送至存储节点所在的存储区域的区域索引服务器,并存储至区域索引服务器的节点过滤器的子索引信息目录。
示例性地,在步骤S703中,区域索引服务器将已存储数据的索引信息以及区域索引服务器对应的存储区域的区域编号发送至根索引服务器,并存储至根索引服务器的根过滤器的索引信息目录。
根据本公开实施例的数据库集群的存储方法,在将数据存储至存储节点后,通过将已存储数据对应的索引信息分别存储至子索引信息目录以及索引信息目录,由此,在对数据库集群进行查询时,可以利用预先存储的索引信息目录和子索引信息目录分别筛选出目标存储区域和目标存储节点,从而缩小查询范围,实现对查询请求的快速响应,降低查询过程中的网络资源的占用,提高网络资源的利用率。
如图8所示,在一种实施方式中,获取已存储数据的索引信息,包括:
S801:获取已存储数据对应的日志数据;
S802:对日志数据进行N分词的切分处理,得到已存储数据的索引信息,其中,N分词包括N个字符,且N大于或等于2。
示例性地,在步骤S801中,已存储数据的索引信息可以根据存储数据的日志数据获得。例如,存储数据的日志数据包括的字段信息有“service,reqId,time,errorinfo”,提取日志数据中包含关键词“service”的字符串,并对该字符串进行三分词切分处理,得到存储数据的索引信息。
根据上述实施方式,通过对已存储数据对应的日志数据进行简单的切分处理,即可得到已存储数据的索引信息,有利于精简化子索引信息目录和索引信息目录。
如图9所示,在一种实施方式中,该方法还包括:
S901:利用数据接收路由器接收待存储数据,并将待存储数据发送至节点路由器;
S902:利用节点路由器,根据各存储区域的存储节点的状态信息,将待存储数据存储至对应的存储区域的存储节点,得到已存储数据。
可由理解的是,各存储区域分别对应有一个节点路由器,数据接收路由器与各存储区域对应的节点路由器分别进行数据通信。
在一个具体示例中,各存储区域还对应地设置有节点分配器。节点分配器被配置为,定期收集存储区域内各存储节点的状态信息,例如存储节点的存储数据量、处理器信息以及存储信息等,节点分配器根据各存储节点的状态信息,从多个存储节点确定出待存储数据对应的最佳存储节点,然后通过节点路由器将待存储数据存储至最佳存储节点。
通过上述实施方式,可以实现存储区域内的多个存储节点的负载均衡,实现了大规模数据库集群下的存储资源的合理分配。
根据本公开实施例,还提供了一种基于数据库集群的查询装置。
如图10所示,根据本公开实施例的基于数据库集群的查询装置包括:
目标索引信息确定模块1001,用于根据查询请求的查询条件,确定目标索引信息;
目标存储区域确定模块1002,用于利用根索引服务器,从多个存储区域中确定出与目标索引信息对应的目标存储区域;
目标存储节点确定模块1003,用于从目标存储区域包括的多个存储节点中确定出与目标索引信息对应的目标存储节点;
目标数据获取模块1004,用于将查询请求发送至目标存储节点,得到目标数据。
在一种实施方式中,目标索引信息确定模块1001包括:
关键值确定子模块,确定查询条件的字符串中包含的关键值;
目标索引信息生成子模块,用于对关键值进行N分词的切分处理,得到目标索引信息,其中,N分词包括N个字符,且N大于或等于2。
在一种实施方式中,根索引服务器包括根过滤器,根过滤器预先存储有各存储区域对应的索引信息目录;目标存储区域确定模块1002还用于:
根据目标索引信息以及索引信息目录,利用根过滤器对多个存储区域进行过滤,得到目标存储区域。
在一种实施方式中,目标存储节点确定模块1003还用于:
利用目标存储区域对应的区域索引服务器,确定出目标存储节点。
在一种实施方式中,区域索引服务器包括节点过滤器,节点过滤器预先存储有各存储节点对应的子索引信息目录;目标存储节点确定模块1003还用于:
根据目标索引信息以及子索引信息目录,利用节点过滤器从目标存储区域包括的多个存储节点进行过滤,得到目标存储节点。
在一种实施方式中,目标数据获取模块1004包括:
分发子模块,用于利用查询服务器将查询请求分发至各目标存储节点;
接收子模块,用于接收各目标存储节点的查询结果,根据各查询结果得到目标数据。
根据本公开实施例,还提供了一种数据库集群的存储装置。
如图11所示,该数据库集群的存储装置包括:
索引信息获取模块1101,用于获取已存储数据的索引信息;
子索引信息目录存储模块1102,用于将已存储数据的索引信息以及存储已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
索引信息目录模块1103,用于将已存储数据的索引信息以及存储已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
在一种实施方式中,索引信息获取模块1101包括:
日志数据获取子模块,用于获取已存储数据对应的日志数据;
切分处理子模块,用于对日志数据进行N分词的切分处理,得到已存储数据的索引信息,其中,N分词包括N个字符,且N大于或等于2。
在一种实施方式中,该装置还包括:
发送模块,用于利用数据接收路由器接收待存储数据,并将待存储数据发送至节点路由器;
数据存储模块,用于利用节点路由器,根据各存储区域的存储节点的状态信息,将待存储数据存储至对应的存储区域的存储节点,得到已存储数据。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图12所示,设备1200包括计算单元1201,其可以根据存储在只读存储器(ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM 1203中,还可存储设备1200操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如基于数据库集群的查询和/或存储方法。例如,在一些实施例中,基于数据库集群的查询和/或存储方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1202和/或通信单元1209而被载入和/或安装到设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的基于数据库集群的查询和/或存储方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于数据库集群的查询和/或存储方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种基于数据库集群的查询方法,包括:
根据查询请求的查询条件,确定目标索引信息;
利用根索引服务器,从多个存储区域中确定出与所述目标索引信息对应的目标存储区域;
对所述目标存储区域包括的多个存储节点中确定出与所述目标索引信息对应的目标存储节点;
将所述查询请求发送至所述目标存储节点,得到目标数据。
2.根据权利要求1所述的方法,其中,根据查询请求的查询条件,确定目标索引信息,包括:
确定所述查询条件的字符串中包含的关键值;
对所述关键值进行N分词的切分处理,得到所述目标索引信息,其中,所述N分词包括N个字符,且N大于或等于2。
3.根据权利要求1所述的方法,其中,所述根索引服务器包括根过滤器,所述根过滤器预先存储有各存储区域对应的索引信息目录;
利用根索引服务器,从多个存储区域中确定出与所述目标索引信息对应的目标存储区域,包括:
根据所述目标索引信息以及索引信息目录,利用所述根过滤器对多个所述存储区域进行过滤,得到所述目标存储区域。
4.根据权利要求1所述的方法,其中,对所述目标存储区域包括的多个存储节点中确定出与所述目标索引信息对应的目标存储节点,包括:
利用所述目标存储区域对应的区域索引服务器,确定出所述目标存储节点。
5.根据权利要求4所述的方法,其中,所述区域索引服务器包括节点过滤器,所述节点过滤器预先存储有各存储节点对应的子索引信息目录;
利用区域索引服务器,确定出所述目标存储节点,包括:
根据所述目标索引信息以及子索引信息目录,利用所述节点过滤器对所述目标存储区域包括的多个存储节点进行过滤,得到所述目标存储节点。
6.根据权利要求1所述的方法,其中,将所述查询请求发送至所述目标存储节点,得到目标数据,包括:
利用查询服务器将所述查询请求分发至各所述目标存储节点;
接收各所述目标存储节点的查询结果,根据各所述查询结果得到所述目标数据。
7.一种基于数据库集群的存储方法,包括:
获取已存储数据的索引信息;
将所述已存储数据的索引信息以及存储所述已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
将所述已存储数据的索引信息以及存储所述已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
8.根据权利要求7所述的方法,其中,获取已存储数据的索引信息,包括:
获取所述已存储数据对应的日志数据;
对所述日志数据进行N分词的切分处理,得到所述已存储数据的索引信息,其中,所述N分词包括N个字符,且N大于或等于2。
9.根据权利要求7所述的方法,其中,还包括:
利用数据接收路由器接收待存储数据,并将所述待存储数据发送至节点路由器;
利用所述节点路由器,根据各存储区域的存储节点的状态信息,将所述待存储数据存储至对应的存储区域的存储节点,得到所述已存储数据。
10.一种基于数据库集群的查询装置,包括:
目标索引信息确定模块,用于根据查询请求的查询条件,确定目标索引信息;
目标存储区域确定模块,用于利用根索引服务器,从多个存储区域中确定出与所述目标索引信息对应的目标存储区域;
目标存储节点确定模块,用于对所述目标存储区域包括的多个存储节点中确定出与所述目标索引信息对应的目标存储节点;
目标数据获取模块,用于将所述查询请求发送至所述目标存储节点,得到目标数据。
11.根据权利要求10所述的装置,其中,所述目标索引信息确定模块包括:
关键值确定子模块,确定所述查询条件的字符串中包含的关键值;
目标索引信息生成子模块,用于对所述关键值进行N分词的切分处理,得到所述目标索引信息,其中,所述N分词包括N个字符,且N大于或等于2。
12.根据权利要求10所述的装置,其中,所述根索引服务器包括根过滤器,所述根过滤器预先存储有各存储区域对应的索引信息目录;
所述目标存储区域确定模块还用于:
根据所述目标索引信息以及索引信息目录,利用所述根过滤器对多个所述存储区域进行过滤,得到所述目标存储区域。
13.根据权利要求10所述的装置,其中,所述目标存储节点确定模块还用于:
利用所述目标存储区域对应的区域索引服务器,确定出所述目标存储节点。
14.根据权利要求13所述的装置,其中,所述区域索引服务器包括节点过滤器,所述节点过滤器预先存储有各存储节点对应的子索引信息目录;
所述目标存储节点确定模块还用于:
根据所述目标索引信息以及子索引信息目录,利用所述节点过滤器对所述目标存储区域包括的多个存储节点进行过滤,得到所述目标存储节点。
15.根据权利要求10所述的装置,其中,所述目标数据获取模块包括:
分发子模块,用于利用查询服务器将所述查询请求分发至各所述目标存储节点;
接收子模块,用于接收各所述目标存储节点的查询结果,根据各所述查询结果得到所述目标数据。
16.一种基于数据库集群的存储装置,包括:
索引信息获取模块,用于获取已存储数据的索引信息;
子索引信息目录存储模块,用于将所述已存储数据的索引信息以及存储所述已存储数据的存储节点的节点编号相关联,并存储至区域索引服务器的子索引信息目录;以及,
索引信息目录模块,用于将所述已存储数据的索引信息以及存储所述已存储数据的存储区域的区域编号相关联,并存储至根索引服务器的索引信息目录。
17.根据权利要求16所述的装置,其中,所述索引信息获取模块包括:
日志数据获取子模块,用于获取所述已存储数据对应的日志数据;
切分处理子模块,用于对所述日志数据进行N分词的切分处理,得到所述已存储数据的索引信息,其中,所述N分词包括N个字符,且N大于或等于2。
18.根据权利要求16所述的装置,其中,还包括:
发送模块,用于利用数据接收路由器接收待存储数据,并将所述待存储数据发送至节点路由器;
数据存储模块,用于利用所述节点路由器,根据各存储区域的存储节点的状态信息,将所述待存储数据存储至对应的存储区域的存储节点,得到所述已存储数据。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至9中任一项所述的方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111286480.9A CN113886434A (zh) | 2021-11-02 | 2021-11-02 | 基于数据库集群的查询和存储方法、装置以及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111286480.9A CN113886434A (zh) | 2021-11-02 | 2021-11-02 | 基于数据库集群的查询和存储方法、装置以及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113886434A true CN113886434A (zh) | 2022-01-04 |
Family
ID=79015315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111286480.9A Pending CN113886434A (zh) | 2021-11-02 | 2021-11-02 | 基于数据库集群的查询和存储方法、装置以及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113886434A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114911830A (zh) * | 2022-05-12 | 2022-08-16 | 平安科技(深圳)有限公司 | 基于时序数据库的索引缓存方法、装置、设备及存储介质 |
CN115712684A (zh) * | 2022-11-24 | 2023-02-24 | 南京鼎山信息科技有限公司 | 一种物联网中物品动态信息的存储方法及系统 |
CN116932555A (zh) * | 2023-08-14 | 2023-10-24 | 合芯科技有限公司 | 一种目标对象切片位置确定方法、装置、设备及存储介质 |
WO2023237120A1 (zh) * | 2022-06-10 | 2023-12-14 | 华为技术有限公司 | 一种数据处理系统及装置 |
CN116932555B (zh) * | 2023-08-14 | 2024-04-30 | 合芯科技有限公司 | 一种目标对象切片位置确定方法、装置、设备及存储介质 |
-
2021
- 2021-11-02 CN CN202111286480.9A patent/CN113886434A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114911830A (zh) * | 2022-05-12 | 2022-08-16 | 平安科技(深圳)有限公司 | 基于时序数据库的索引缓存方法、装置、设备及存储介质 |
CN114911830B (zh) * | 2022-05-12 | 2024-04-05 | 平安科技(深圳)有限公司 | 基于时序数据库的索引缓存方法、装置、设备及存储介质 |
WO2023237120A1 (zh) * | 2022-06-10 | 2023-12-14 | 华为技术有限公司 | 一种数据处理系统及装置 |
CN115712684A (zh) * | 2022-11-24 | 2023-02-24 | 南京鼎山信息科技有限公司 | 一种物联网中物品动态信息的存储方法及系统 |
CN115712684B (zh) * | 2022-11-24 | 2023-10-24 | 南京鼎山信息科技有限公司 | 一种物联网中物品动态信息的存储方法及系统 |
CN116932555A (zh) * | 2023-08-14 | 2023-10-24 | 合芯科技有限公司 | 一种目标对象切片位置确定方法、装置、设备及存储介质 |
CN116932555B (zh) * | 2023-08-14 | 2024-04-30 | 合芯科技有限公司 | 一种目标对象切片位置确定方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113886434A (zh) | 基于数据库集群的查询和存储方法、装置以及设备 | |
CN109614402B (zh) | 多维数据查询方法和装置 | |
CN109933585B (zh) | 数据查询方法和数据查询系统 | |
CN108733790B (zh) | 数据排序方法、装置、服务器和存储介质 | |
US10747773B2 (en) | Database management system, computer, and database management method | |
KR102172138B1 (ko) | 분산 컴퓨팅 프레임워크 및 분산 컴퓨팅 방법 | |
CN116521816A (zh) | 一种数据处理方法、检索方法、装置、设备以及存储介质 | |
CN114491253B (zh) | 观测信息处理方法、装置、电子设备及存储介质 | |
CN114968950A (zh) | 任务的处理方法、装置、电子设备和介质 | |
CN114995719A (zh) | 列表渲染方法、装置、设备以及存储介质 | |
CN112579897B (zh) | 信息搜索方法和装置 | |
CN114218266A (zh) | 一种数据查询方法、装置、电子设备和存储介质 | |
CN114443772A (zh) | 一种分布式数据的处理方法、装置、设备及介质 | |
KR20220154228A (ko) | 데이터 처리 방법, 장치, 설비 및 저장매체 | |
CN112328807A (zh) | 反作弊方法、装置、设备以及存储介质 | |
CN108984431B (zh) | 用于清空过期缓存的方法和装置 | |
CN113495891A (zh) | 一种数据处理方法和装置 | |
CN112507100B (zh) | 一种问答系统的更新处理方法和装置 | |
US20220309112A1 (en) | Building a base index for search | |
JP7451697B2 (ja) | データ記憶方法、装置、クエリ方法、電子機器および可読媒体 | |
CN113687846B (zh) | 用于处理数据的方法、装置、设备和可读存储介质 | |
CN113360689B (zh) | 图像检索系统、方法、相关装置及计算机程序产品 | |
US20230342352A1 (en) | System and Method for Matching into a Complex Data Set | |
US20210319044A1 (en) | Shuffle-less Reclustering of Clustered Tables | |
CN115525659A (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 |