CN106095863B - 一种多维度数据查询和存储系统和方法 - Google Patents
一种多维度数据查询和存储系统和方法 Download PDFInfo
- Publication number
- CN106095863B CN106095863B CN201610390832.8A CN201610390832A CN106095863B CN 106095863 B CN106095863 B CN 106095863B CN 201610390832 A CN201610390832 A CN 201610390832A CN 106095863 B CN106095863 B CN 106095863B
- Authority
- CN
- China
- Prior art keywords
- inquiry request
- data
- database unit
- class
- inquiry
- 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.)
- Active
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Abstract
本发明公开了一种多维度数据查询和存储系统,其包括:接口、缓存单元、分析前置单元、搜索引擎、数据库单元以及多维度键值路由,其中,分析前置单元对查询请求进行分类,并根据分类结果按照查询匹配规则制定查询数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;其中,存储数据存储在数据库单元中;多维度键值路由内存储有路由数据;存储数据中需要文本检索和/或匹配查询的字段被存储到搜索引擎中;经常访问的存储数据被存储到缓存单元中。此外,本发明还公开了相应的查询、存储方法。本发明可对存储数据尤其是互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
Description
技术领域
本发明涉及一种数据查询和存储系统和方法,尤其涉及一种多维度数据查询和存储系统和方法。
背景技术
当今互联网处在海量数据的时代,数据存储和查询的方法和工具也越来越多样。目前,作为数据查询、存储的工具种类繁多,各有优劣。
传统关系型数据库,作为主要的高可靠高容错的存储单元,相对成本便宜。对于分布式数据储存上,我们将传统的单张表,选取特定的字段作为分库分表的主键,将大批量的数据存储到不同的数据库单元,不同的数据库表中。分库分表以后,通过分库分表的主键,可以准确命中数据所属的数据存储单元,有效查询到表中所需的数据。而对于不包含分库分表主键的查询,则会进行多表扫描,效率低,资源占用高。
缓存,作为热点数据的存储单元。对于经常访问到的数据,加载到处于内存上的缓存中,提供最快速的查询访问服务。缓存价格昂贵,容量有限。大数据下,数据查询很容易不在缓存中命中,而落到数据库中进行查询,导致如上数据库查询的弱点暴露,以至于查询结果不能有效返回。
搜索引擎,提供了高效的全文检索和多字段查询功能。搜索引擎中,会为需要查询的字段,全量建立索引,来提高数据查询的速度。缺点也很明显,无法做到数据库中跨表级联数据来进行查询,往往会将需要级联的表,构造成一张超大的宽表,来进行查询,占用空间大,代价高;每次新建索引,需要做全量构建,随着数据量的增大,全量构建会花费大量的时间,期间的查询不能保障。
多维度键值路由,分布式的新一代非关系型数据库,能组合多个维度的查询条件来进行查询,效率高并且不会因为维度的不同而有明显折损,同时数据导入速度快。缺点,不具备传统数据库的ACID高可靠的事务性;不具备字段匹配,文本检索功能;无法级联多张表来查询数据。
无论单独采用哪种技术手段,都无法同时提供准实时、可级联、可拓展、可多维度的查询。
随着电子商务的便利性提升,越来越多的用户选择在线购买保险类服务,由此催生了互联网保险业务。由于互联网保险业务的存储数据(即互联网保险业务中产生的需要进行存储的数据)的数据量庞大,查询和存储的实时性要求高,查询条件还包括多维度特征,因此对于提供互联网保险业务的服务商来说,希望获得一种多维度数据查询和存储系统和方法。
发明内容
本发明的目的之一是提供一种多维度数据查询和存储系统,该系统作为数据查询和存储的工具可对存储数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
该系统用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
根据上述目的,本发明提出了一种多维度数据查询和存储系统,其包括:
接口,其接收查询请求和存储数据;
缓存单元,其与所述接口数据连接;
分析前置单元,其与所述接口数据连接;
搜索引擎,其与所述分析前置单元数据连接;
数据库单元,其与所述分析前置单元数据连接,所述存储数据存储在数据库单元中;
多维度键值路由,其与所述分析前置单元数据连接,所述多维度键值路由内存储有路由数据;
其中,所述分析前置单元对查询请求进行分类,并根据分类结果按照查询匹配规则制定查询数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;
其中,所述存储数据中需要文本检索和/或匹配查询的字段被存储到搜索引擎中;经常访问的存储数据被存储到缓存单元中。
本发明所述的多维度数据查询和存储系统通过数据库单元对所有存储数据进行存储。本发明所述的多维度数据查询和存储系统通过缓存单元优先查询经常访问的存储数据;通过分析前置单元对查询请求进行分类,并根据分类结果按照查询匹配规则制定查询数据流向,从而将搜索引擎、数据库单元以及多维度键值路由进行整合,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询,从而将缓存单元、搜索引擎、数据库单元以及多维度键值路由各自的优点发挥出来,弥补各自局限性,实现同时提供准实时、可级联、可拓展、可多维度的查询。
本发明所述的多维度数据查询和存储系统中,所述查询请求的分类结果通常包括可直接应用搜索引擎进行查询的查询请求、可直接应用数据库单元进行查询的查询请求以及其它查询请求。所述查询匹配规则通常包括按照所述分类结果中是否可直接应用进行查询制定查询数据流向,具体来说,可直接应用搜索引擎进行查询的查询请求的查询数据流向是经搜索引擎到数据库单元,可直接应用数据库单元进行查询的查询请求的查询数据流向是直接到数据库单元,其它查询请求的查询数据流向是经多维度键值路由到搜索引擎再到数据库单元,或者经多维度键值路由到数据库单元。此外,通常通过所述接口返回查询结果。
本发明所述的多维度数据查询和存储系统中,将存储数据中需要文本检索和/或匹配查询的关键字段存入搜索引擎中,通常还为可能进行查询的字段建立索引,可以减少宽表的构建。多维度键值路由可以是分布式的新一代非关系型数据库,其作用主要是根据所述其它查询请求(通常包含多维度的查询条件)基于路由数据找出数据库单元中的主键,或者搜索引擎中索引字段上的值,再转入相应数据源进行查询,从而有效避免搜索引擎宽表的构建,提高查询速度,并且降低搜索引擎更新索引的频率,提高查询系统的稳定性。其中,路由数据通常包括数据库单元分库分表主键和/或落在搜索引擎索引上的值。
本发明所述的多维度数据查询和存储系统用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
进一步地,本发明所述的多维度数据查询和存储系统中,所述数据库单元为分布式数据库单元。
上述方案中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
本发明的另一目的是提供一种多维度数据查询方法,通过该方法可提供准实时、可级联、可拓展、可多维度的查询。该方法用于互联网保险业务时,可提供对互联网保险业务的业务数据进行准实时、可级联、可拓展、可多维度的查询。
根据上述目的,本发明提出了一种多维度数据查询方法,其包括步骤:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;其中,查询可以单/多次访问上述三个组件;
(4)输出查询结果。
本发明所述的多维度数据查询方法,其可基于本发明所述的多维度数据查询和存储系统实现,相关原理前已描述,在此不再赘述。
本发明所述的多维度数据查询方法用于互联网保险业务时,可提供对互联网保险业务的业务数据进行准实时、可级联、可拓展、可多维度的查询。
进一步地,本发明所述的多维度数据查询方法中,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。
上述方案中,A类查询请求可直接应用数据库单元进行查询,B类查询请求可直接应用搜索引擎进行查询。A类查询请求的查询数据流向是直接到数据库单元,B类查询请求的查询数据流向是经搜索引擎到数据库单元,C类查询请求的查询数据流向是经多维度键值路由到搜索引擎再到数据库单元,或者经多维度键值路由到数据库单元。
进一步地,本发明所述的多维度数据查询方法中,所述数据库单元为分布式数据库单元。
上述方案中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
本发明的又一目的是提供一种多维度数据存储方法,该方法可对存储数据进行存储,并且基于该方法可提供准实时、可级联、可拓展、可多维度的查询。该方法用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且基于该方法可提供准实时、可级联、可拓展、可多维度的查询。
根据上述目的,本发明提出了一种多维度数据存储方法,其包括步骤:
接收存储数据;
将接收的所有存储数据存储在数据库单元中,选定特定的字段作为数据库单元分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段存储到搜索引擎中,为可能进行查询的字段建立搜索引擎索引;将经常访问的存储数据存储到缓存单元中;采用多维度键值路由存储路由数据,所述路由数据包括数据库单元分库分表主键和/或落在搜索引擎索引上的值。
本发明所述的多维度数据存储方法,其可用于本发明所述的多维度数据查询和存储系统,相关原理前已描述,在此不再赘述。
本发明所述的多维度数据存储方法用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且基于该方法可提供准实时、可级联、可拓展、可多维度的查询。
进一步地,本发明所述的多维度数据存储方法中,所述数据库单元为分布式数据库单元。
上述方案中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
本发明的再一目的是提供一种多维度数据存储和查询方法,该方法可对存储数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。该方法用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
根据上述目的,本发明提出了一种多维度数据存储和查询方法,其包括存储步骤和查询步骤,其中:
所述存储步骤包括:
接收存储数据;
将接收的所有存储数据存储在数据库单元中,选定特定的字段作为数据库单元分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段存储到搜索引擎中,为可能进行查询的字段建立搜索引擎索引;将经常访问的存储数据存储到缓存单元中;采用多维度键值路由存储路由数据,所述路由数据包括数据库单元分库分表主键和/或落在搜索引擎索引上的值;
所述查询步骤包括:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;其中,查询可以单/多次访问上述三个组件;
(4)输出查询结果。
本发明所述的多维度数据存储和查询方法,其可基于本发明所述的多维度数据查询和存储系统实现,相关原理前已描述,在此不再赘述。
本发明所述的多维度数据查询和存储方法用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
进一步地,本发明所述的多维度数据存储和查询方法中,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。
上述方案中,A类查询请求可直接应用数据库单元进行查询,B类查询请求可直接应用搜索引擎进行查询。A类查询请求的查询数据流向是直接到数据库单元,B类查询请求的查询数据流向是经搜索引擎到数据库单元,C类查询请求的查询数据流向是经多维度键值路由到搜索引擎再到数据库单元,或者经多维度键值路由到数据库单元。
进一步地,本发明所述的多维度数据存储和查询方法中,所述数据库单元为分布式数据库单元。
上述方案中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
本发明所述的多维度数据查询和存储系统,其与现有的数据查询和存储系统相比,具有以下优点和有益效果:
(1)涉及到缓存单元的操作,只会查询经常访问的存储数据。
(2)涉及到数据库单元的操作,只会通过分库分表主键来进行直接查询,或者级联查询。
(3)涉及到搜索引擎的操作,只会落在建立好的索引上面,同时提供文本检索和匹配查询,不会大量制造超大宽表,不会频繁更新索引和重新构建。
(4)涉及到多维度键值路由的操作,不会有文本检索,级联和匹配查询。
(5)优先通过缓存单元来查询经常访问的存储数据,同时整合了搜索引擎、数据库单元以及多维度键值路由,从而将缓存单元、搜索引擎、数据库单元以及多维度键值路由各自的优点发挥出来,弥补各自局限性,实现同时提供准实时、可级联、可拓展、可多维度的查询。
(6)可满足互联网保险业务的存储数据的数据量庞大,查询和存储的实时性要求高,查询条件还包括多维度特征的要求,非常适合互联网保险业务。
本发明所述的多维度数据查询方法,由于其可基于本发明所述的多维度数据查询和存储系统实现,因此同样具有上述优点和有益效果。
本发明所述的多维度数据存储方法,由于其可用于本发明所述的多维度数据查询和存储系统,因此同样具有上述优点和有益效果。
本发明所述的多维度数据存储和查询方法,由于其可基于本发明所述的多维度数据查询和存储系统实现,因此同样具有上述优点和有益效果。
附图说明
图1为本发明所述的多维度数据查询和存储系统在一种实施方式下的结构示意图。
图2为本发明所述的多维度数据查询方法的流程示意图。
图3为本发明所述的多维度数据存储方法的流程示意图。
图4为本发明所述的多维度数据存储和查询方法的流程示意图。
具体实施方式
下面将结合说明书附图和具体的实施例来对本发明所述的多维度数据查询和存储系统和方法进行进一步地详细说明,但是该详细说明不构成对本发明的限制。
图1显示了本发明所述的多维度数据查询和存储系统在一种实施方式下的结构。如图1所示,该多维度数据查询和存储系统包括:接口1,其接收查询请求和存储数据;缓存单元2,其与接口1数据连接;分析前置单元3,其与接口1数据连接;搜索引擎4,其与分析前置单元3数据连接;数据库单元5,其与分析前置单元3数据连接,上述存储数据存储在数据库单元5中;多维度键值路由6,其与分析前置单元3数据连接,多维度键值路由6内存储有路由数据;其中,分析前置单元3对查询请求进行分类,并根据分类结果按照查询匹配规则制定查询数据流向,以采用搜索引擎4、数据库单元5和多维度键值路由6针对不同类的查询请求分别进行查询;存储数据中需要文本检索和/或匹配查询的字段被存储到搜索引擎4中;经常访问的存储数据被存储到缓存单元2中。在某些实施方式中,数据库单元5为分布式数据库单元,选择特定字段作为数据库单元5分库分表主键来进行数据的分布式存储。
上述方案中,查询请求的分类包括A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元5分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎4索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;上述匹配规则包括:A类查询请求采用数据库单元5进行查询;B类查询请求采用搜索引擎4进行查询;C类查询请求先被发送给多维度键值路由6,以得到数据库单元5分库分表主键或落在搜索引擎4索引上的值,然后与得到的数据库单元5分库分表主键对应的查询请求采用数据库单元5进行查询,与得到的落在搜索引擎4索引上的值对应的查询请求采用搜索引擎4进行查询。其中,包括是否多次发送给多维度键值路由6,来获取需要的值。
上述方案中,将存储数据中需要文本检索和/或匹配查询的关键字段存入搜索引擎4中,还为可能进行查询的字段建立索引。多维度键值路由6是分布式的新一代非关系型数据库,其作用主要是根据查询条件(通常包含多维度的查询条件)基于路由数据找出数据库单元5中的主键,或者搜索引擎4中索引字段上的值,再转入相应数据源进行查询。其中,路由数据通常包括数据库单元分库分表主键和/或落在搜索引擎索引上的值。
上述方案中,缓存单元2通常基于计算机内存单元及计算机上运行的相应软件实现,搜索引擎4、数据库单元5和多维度键值路由6通常基于计算机存储单元及计算机上运行的相应软件实现,接口1和分析前置单元3通常基于计算机及计算机上运行的相应软件实现。接口1接入统一格式的查询请求和返回统一格式的查询结果,格式可以是JSON对象。
上述多维度数据查询和存储系统的一种工作流程包括对存储数据的存储和查询,其中:存储步骤包括:通过接口1接收存储数据;将接收的所有存储数据存储在数据库单元5中,选定特定的字段作为数据库单元5分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段同步存储到搜索引擎4中,为可能进行查询的字段建立搜索引擎4索引;将经常访问的存储数据存储到缓存单元2中;采用多维度键值路由6存储路由数据,该路由数据包括数据库单元5分库分表主键和/或落在搜索引擎4索引上的值。查询步骤包括:(1)通过接口1接收查询请求。(2)在缓存单元2中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3)。(3)通过分析前置单元3对查询请求按上述分类规则分为A类查询请求、B类查询请求和C类查询请求,并根据分类结果按照上述匹配规则制定数据流向,以采用搜索引擎4、数据库单元5和多维度键值路由6针对不同类的查询请求分别进行查询。其中,A类查询请求直接应用数据库单元5进行查询,B类查询请求直接应用搜索引擎4进行查询,C类查询请求通过多维度键值路由6间接应用数据库单元5或搜索引擎4进行查询。A类查询请求的查询数据流向是直接到数据库单元5,B类查询请求的查询数据流向是经搜索引擎4到数据库单元5,C类查询请求的查询数据流向是经多维度键值路由6到搜索引擎4再到数据库单元5,或者经多维度键值路由6到数据库单元5。(4)通过接口1输出查询结果。
图2显示了本发明所述的多维度数据查询方法的流程。如图2所示,该多维度数据查询方法包括步骤:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;其中,查询可以单/多次访问上述三个组件;
(4)输出查询结果。
在某些实施方式中,在上述步骤(3)中,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。其中,包括是否多次发送给多维度键值路由,来获取需要的值。其中,A类查询请求的查询数据流向是直接到数据库单元,B类查询请求的查询数据流向是经搜索引擎到数据库单元,C类查询请求的查询数据流向是经多维度键值路由到搜索引擎再到数据库单元,或者经多维度键值路由到数据库单元。
在某些实施方式中,上述数据库单元为分布式数据库单元。其中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
图3显示了本发明所述的多维度数据存储方法的流程。如图3所示,该多维度数据存储方法包括步骤:
接收存储数据;
将接收的所有存储数据存储在数据库单元中,选定特定的字段作为数据库单元分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段存储到搜索引擎中,为可能进行查询的字段建立搜索引擎索引;将经常访问的存储数据存储到缓存单元中;采用多维度键值路由存储路由数据,该路由数据包括数据库单元分库分表主键和/或落在搜索引擎索引上的值。
在某些实施方式中,上述数据库单元为分布式数据库单元。其中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
图4显示了本发明所述的多维度数据存储和查询方法的流程。如图4所示,该多维度数据存储和查询方法包括步骤:
存储步骤包括:
接收存储数据;
将接收的所有存储数据存储在数据库单元中,选定特定的字段作为数据库单元分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段存储到搜索引擎中,为可能进行查询的字段建立搜索引擎索引;将经常访问的存储数据存储到缓存单元中;采用多维度键值路由存储路由数据,该路由数据包括数据库单元分库分表主键和/或落在搜索引擎索引上的值;
查询步骤包括:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;其中,查询可以单/多次访问上述三个组件;
(4)输出查询结果。
在某些实施方式中,在上述步骤(3)中,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。其中,包括是否多次发送给多维度键值路由6,来获取需要的值。其中,A类查询请求的查询数据流向是直接到数据库单元,B类查询请求的查询数据流向是经搜索引擎到数据库单元,C类查询请求的查询数据流向是经多维度键值路由到搜索引擎再到数据库单元,或者经多维度键值路由到数据库单元。
在某些实施方式中,上述数据库单元为分布式数据库单元。其中,可以选择特定字段作为数据库单元分库分表主键来进行数据的分布式存储。
上述多维度数据查询和存储方法和系统用于互联网保险业务时,可对互联网保险业务的业务数据进行存储,并且同时提供准实时、可级联、可拓展、可多维度的查询。
需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
Claims (8)
1.一种多维度数据查询和存储系统,其特征在于,包括:
接口,其接收查询请求和存储数据;
缓存单元,其与所述接口数据连接;
分析前置单元,其与所述接口数据连接;
搜索引擎,其与所述分析前置单元数据连接;
数据库单元,其与所述分析前置单元数据连接,所述存储数据存储在数据库单元中;
多维度键值路由,其与所述分析前置单元数据连接,所述多维度键值路由内存储有路由数据;
其中,所述分析前置单元对查询请求进行分类,并根据分类结果按照查询匹配规则制定查询数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;
其中,所述存储数据中需要文本检索和/或匹配查询的字段被存储到搜索引擎中;经常访问的存储数据被存储到缓存单元中。
2.如权利要求1所述的多维度数据查询和存储系统,其特征在于,所述数据库单元为分布式数据库单元。
3.一种多维度数据查询方法,其特征在于,包括步骤:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;
(4)输出查询结果。
4.如权利要求3所述的多维度数据查询方法,其特征在于,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。
5.如权利要求3或4所述的多维度数据查询方法,其特征在于,所述数据库单元为分布式数据库单元。
6.一种多维度数据存储和查询方法,其包括存储步骤和查询步骤,其特征在于:
所述存储步骤包括:
接收存储数据;
将接收的所有存储数据存储在数据库单元中,选定特定的字段作为数据库单元分库分表主键;将存储数据中需要文本检索和/或匹配查询的字段存储到搜索引擎中,为可能进行查询的字段建立搜索引擎索引;将经常访问的存储数据存储到缓存单元中;采用多维度键值路由存储路由数据,所述路由数据包括数据库单元分库分表主键和/或落在搜索引擎索引上的值;
所述查询步骤包括:
(1)接收查询请求;
(2)在缓存单元中进行查询,若得到查询结果,则转至步骤(4);若未得到查询结果,则转至步骤(3);
(3)对查询请求进行分类,并根据分类结果按照匹配规则制定数据流向,以采用搜索引擎、数据库单元和多维度键值路由针对不同类的查询请求分别进行查询;
(4)输出查询结果。
7.如权利要求6所述的多维度数据存储和查询方法,其特征在于,将查询请求分为A类查询请求、B类查询请求和C类查询请求,其中,A类查询请求为包含数据库单元分库分表主键的查询请求和级联查询请求;B类查询请求为包括文本检索和匹配查询,并且查询条件已经落在搜索引擎索引的查询请求;C类查询请求为除了A类查询请求和B类查询请求以外的查询请求;所述匹配规则包括:A类查询请求采用数据库单元进行查询;B类查询请求采用搜索引擎进行查询;C类查询请求先被发送给多维度键值路由,以得到数据库单元分库分表主键或落在搜索引擎索引上的值,然后与得到的数据库单元分库分表主键对应的查询请求采用数据库单元进行查询,与得到的落在搜索引擎索引上的值对应的查询请求采用搜索引擎进行查询。
8.如权利要求6或7所述的多维度数据存储和查询方法,其特征在于,所述数据库单元为分布式数据库单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610390832.8A CN106095863B (zh) | 2016-06-03 | 2016-06-03 | 一种多维度数据查询和存储系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610390832.8A CN106095863B (zh) | 2016-06-03 | 2016-06-03 | 一种多维度数据查询和存储系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106095863A CN106095863A (zh) | 2016-11-09 |
CN106095863B true CN106095863B (zh) | 2019-09-10 |
Family
ID=57447615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610390832.8A Active CN106095863B (zh) | 2016-06-03 | 2016-06-03 | 一种多维度数据查询和存储系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106095863B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169009B (zh) * | 2017-03-31 | 2020-03-27 | 北京奇艺世纪科技有限公司 | 一种分布式存储系统的数据分裂方法及装置 |
CN110020063B (zh) * | 2017-07-18 | 2021-09-03 | 北京京东尚科信息技术有限公司 | 垂直搜索方法和系统 |
CN110580255A (zh) * | 2018-06-08 | 2019-12-17 | 深圳艾派网络科技股份有限公司 | 一种存储并检索数据的方法以及系统 |
CN109656958B (zh) * | 2018-12-18 | 2021-11-16 | 北京小米移动软件有限公司 | 数据查询方法以及系统 |
CN111414403B (zh) * | 2020-03-20 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 数据访问方法和装置、数据存储方法和装置 |
CN111782719B (zh) * | 2020-08-20 | 2024-04-12 | 支付宝(杭州)信息技术有限公司 | 数据处理方法及装置 |
CN113448966B (zh) * | 2021-07-17 | 2022-06-21 | 绿漫科技有限公司 | 一种订单类数据多维度分表系统 |
CN114925118B (zh) * | 2022-06-09 | 2023-05-16 | 北京百度网讯科技有限公司 | 跨表搜索方法、装置、设备以及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101395602A (zh) * | 2005-12-29 | 2009-03-25 | 亚马逊科技公司 | 用于分布式文件存储和索引服务的方法和装置 |
CN103246659A (zh) * | 2012-02-06 | 2013-08-14 | 阿里巴巴集团控股有限公司 | 键值数据查询的方法和装置 |
CN105009111A (zh) * | 2012-12-13 | 2015-10-28 | 微软技术许可有限责任公司 | 使用键值存储系统的分布式sql查询处理 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819076B2 (en) * | 2010-08-05 | 2014-08-26 | Wavemarket, Inc. | Distributed multidimensional range search system and method |
-
2016
- 2016-06-03 CN CN201610390832.8A patent/CN106095863B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101395602A (zh) * | 2005-12-29 | 2009-03-25 | 亚马逊科技公司 | 用于分布式文件存储和索引服务的方法和装置 |
CN103246659A (zh) * | 2012-02-06 | 2013-08-14 | 阿里巴巴集团控股有限公司 | 键值数据查询的方法和装置 |
CN105009111A (zh) * | 2012-12-13 | 2015-10-28 | 微软技术许可有限责任公司 | 使用键值存储系统的分布式sql查询处理 |
Also Published As
Publication number | Publication date |
---|---|
CN106095863A (zh) | 2016-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095863B (zh) | 一种多维度数据查询和存储系统和方法 | |
Zhang et al. | Inverted linear quadtree: Efficient top k spatial keyword search | |
CN103729471B (zh) | 数据库查询方法和装置 | |
US6438562B1 (en) | Parallel index maintenance | |
CN103064890B (zh) | 一种gps海量数据处理方法 | |
CN101727465B (zh) | 分布式列存储数据库索引建立、查询方法及装置与系统 | |
CN103049521B (zh) | 可实现多属性复合条件查询的虚拟表索引系统及方法 | |
US20080201296A1 (en) | Partitioning of nested tables | |
US10733172B2 (en) | Method and computing device for minimizing accesses to data storage in conjunction with maintaining a B-tree | |
CN105243169B (zh) | 一种数据查询方法及系统 | |
US9946752B2 (en) | Low-latency query processor | |
CN100458784C (zh) | 在数字图书馆中所采用的检索系统和检索方法 | |
CN102722553A (zh) | 基于用户日志分析的分布式倒排索引组织方法 | |
CN107943952A (zh) | 一种基于Spark框架进行全文检索的实现方法 | |
CN103353901B (zh) | 基于Hadoop分布式文件系统的表数据的有序管理方法以及系统 | |
CN102819586A (zh) | 一种基于高速缓存的url分类方法和设备 | |
CN102968456B (zh) | 一种栅格数据读取处理方法和装置 | |
CN106484694B (zh) | 基于分布式数据库的全文搜索方法及系统 | |
JP4758429B2 (ja) | 共有メモリ型マルチプロセッサシステム及びその情報処理方法 | |
CN106156171B (zh) | 一种面向虚拟资产数据的查询优化方法 | |
US7725468B2 (en) | Improving efficiency in processing queries directed to static data sets | |
CN109726219A (zh) | 数据查询的方法及终端设备 | |
JP5464017B2 (ja) | 分散メモリデータベースシステム、データベースサーバ、データ処理方法およびそのプログラム | |
CN108733781A (zh) | 基于内存计算的集群时态数据索引方法 | |
CN104391931A (zh) | 一种云计算中海量数据高效索引方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |