CN107451142B - 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质 - Google Patents

在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质 Download PDF

Info

Publication number
CN107451142B
CN107451142B CN201610374476.0A CN201610374476A CN107451142B CN 107451142 B CN107451142 B CN 107451142B CN 201610374476 A CN201610374476 A CN 201610374476A CN 107451142 B CN107451142 B CN 107451142B
Authority
CN
China
Prior art keywords
dimension
data
database
dimensions
query
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
Application number
CN201610374476.0A
Other languages
English (en)
Other versions
CN107451142A (zh
Inventor
何刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201610374476.0A priority Critical patent/CN107451142B/zh
Publication of CN107451142A publication Critical patent/CN107451142A/zh
Application granted granted Critical
Publication of CN107451142B publication Critical patent/CN107451142B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP

Abstract

提供了一种在数据库中写入数据的方法和装置、查询数据的方法和装置、以及数据库管理系统,其中数据库包括根据多个维度划分出的多个维度库。所述系统包括:维度管理模块,配置为对多个维度进行管理并存储每个维度的信息;写入分发模块,配置为当向数据库写入数据时,获取多个维度的信息;根据所述信息,确定数据是否含有各维度的关联数据部分;以及响应于确定数据含有关联数据部分,至少将关联数据部分分发到所述至少一个维度的维度库;查询解析模块,配置为根据查询请求确定查询维度和查询条件,并获取所确定的维度的信息;路由模块,配置为根据所述信息,路由到对应维度库;以及执行模块,配置为根据查询条件,在所述对应维度库内执行查询。

Description

在数据库中写入和查询数据的方法与装置及其管理系统和计 算机可读存储介质
技术领域
本申请涉及信息技术领域,具体地,涉及一种在数据库中写入和数据的方法与装置、一种在数据库中写入和数据的方法与装置以及一种数据库管理系统。
背景技术
在互联网应用中,伴随着业务飞速发展,导致业务数据量猛增,使得单表查询越来越慢,从而无法满足使用要求。因此,常见的改进方法是采用各种切分处理,但是现有系统的数据查询方法往往选择单个维度以便进行单维度切分。单维度切分需要根据业务特点找出合适的切分维度,使得在用户查询的维度中刚好包含切分维度的情况下,可以快速的定位分表,并从分表中查询出数据。然而,在用户查询的维度中不包含切分维度的情况下,无法实现快速定位分表,因此需要把查询分发到所有的分表中,然后合并所有分表内的查询结果,这样使得整个查询效率就会降低,且无法减轻数据库负载。此外,如果并发很高的话,不能做到流量分担,因为每个库,每个表都需要查询到。
也就是说,在单维度切分和查询中,非切分维度只能支持少量的查询,且无法在多个维度都需要高并发的访问的情况下使用。此外,由于在用户查询的维度中不包括切分维度的情况下需要将查询分发到各个分表以及合并结果数据,如果结果数据中存在排序分组等,则合并结果数据就变得非常复杂,使得实际项目实施成本高昂。附加地,现有单维度切分和查询的解决方案不能减轻数据库负担,资源利用率低,在非划分维度查询的情况下,每个分表都要被查询,使得每个数据库资源都需要提供服务。
因此,本公开提出一种在数据库中写入数据的方法与装置、一种在数据库中查询数据的方法与装置、以及一种数据库管理系统,从而解决海量数据在切分时不能多维度切分且在查询时不能多维度查询的问题,使得能够支持多个维度高并发的查询。
发明内容
为了至少解决上述问题,本发明提供了一种在数据库中写入数据的方法与装置、一种在数据库中查询数据的方法与装置、以及一种数据库管理系统,从而解决海量数据在切分时不能多维度切分且在查询时不能多维度查询的问题,使得能够支持多个维度高并发的查询。
根据本发明的第一方面,提供了一种在数据库中写入数据的方法,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述方法可以包括:响应于向所述数据库写入数据,获取所述多个维度的信息;根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库。
优选地,所述至少将所述关联数据部分分发到所述至少一个维度的维度库可以包括:将所述数据全部分发到所述至少一个维度的维度库。
优选地,所述数据库还可以包括全量数据数据库,以及所述方法还可以包括:响应于向所述数据库写入数据,将所述数据分发到所述全量数据数据库。
优选地,所述信息可以包括对应维度的入库管道地址信息以及订阅字段。
优选地,所述方法还可以包括在经由入库管道至少将所述关联数据部分分发到所述各维度中的至少一个维度的维度库之后,针对所述对应维度的维度库执行分表处理。
根据本发明的第二方面,一种在数据库中写入数据的装置,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述装置可以包括:维度管理模块,配置为对所述多个维度进行管理并存储每个维度的信息;写入分发模块,配置为:响应于向所述数据库写入数据,从维度管理模块获取所述多个维度的信息;根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库。
优选地,所述装置还可以包括数据分表模块,其中所述数据分表模块可以配置为在所述写入分发模块经由入库管道至少将所述关联数据部分分发到所述各维度中的至少一个维度的维度库之后,针对所述对应维度的维度库执行分表处理。
根据本发明的第三方面,提供了一种在数据库中查询数据的方法,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述方法可以包括:响应于接收到查询请求,确定用于查询的维度和查询条件;获取所确定的维度的信息;根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及根据所确定的查询条件,在所述对应维度库内执行查询。
优选地,所述方法还可以包括在在对应维度库内执行查询之后,处理查询结果并将经处理的查询结果呈现给用户。
根据本发明的第四方面,提供了一种在数据库中查询数据的装置,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述装置可以包括:维度管理模块,配置为对所述多个维度进行管理并存储每个维度的信息;查询解析模块,配置为响应于接收到查询请求,确定用于查询的维度和查询条件,并从维度管理模块获取所确定的维度的信息;路由模块,配置为根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及执行模块,配置为根据所确定的查询条件,在所述对应维度库内执行查询。
优选地,所述装置还可以包括:结果处理模块,配置为从执行模块接收查询结果,处理查询结果并将经处理的查询结果呈现给用户。
根据本发明的第五方面,提供了一种数据库管理系统,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述系统包括:维度管理模块,配置为对所述多个维度进行管理并存储每个维度的信息;写入分发模块,配置为响应于向所述数据库写入数据,从维度管理模块获取所述多个维度的信息;根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库;查询解析模块,配置为响应于接收到查询请求,确定用于查询的维度和查询条件,并从维度管理模块获取所确定的维度的信息;路由模块,配置为根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及执行模块,配置为根据所确定的查询条件,在所述对应维度库内执行查询。
根据本发明的第六方面,提供了一种在数据库中写入数据的装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如本发明第一方面所述的在数据库中写入数据的方法。
根据本发明的第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如本发明第一方面所述的在数据库中写入数据的方法。
根据本发明的第八方面,提供了一种在数据库中查询数据的装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如本发明第三方面所述的在数据库中查询数据的方法。
根据本发明的第九方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如本发明第三所述的在数据库中查询数据的方法。
附图说明
以下结合附图,将更清楚本公开的示例实施例的上述和其它方面、特征以及优点,附图中:
图1示出了根据本发明示例实施例的在数据库中写入数据的装置的框图;
图2示出了根据本发明示例实施例的在数据库中写入数据的方法的流程图;
图3示出了根据本发明示例实施例的在数据库中查询数据的装置的框图;
图4示出了根据本发明示例实施例的在数据库中查询数据的方法的流程图;
图5示出了根据本发明示例实施例的数据库管理系统的框图;以及
图6(a)和6(b)分别示出了根据本发明优选实施例的在数据库中写入数据以及查询数据的方法的示意图。
具体实施方式
以下参考附图描述了本公开的示例实施。本公开提供了一种在数据库中写入数据的方法与装置、一种在数据库中查询数据的方法与装置、以及一种数据库管理系统,从而解决海量数据在切分时不能多维度切分且在查询时不能多维度查询的问题,使得能够支持多个维度高并发的查询。
具体地,图1示出了根据本发明示例实施例的在数据库中写入数据的装置的框图。图2示出了根据本发明示例实施例的在数据库中写入数据的方法的流程图。以下参考图1和图2来描述根据本发明示例实施例的在数据库中写入数据的方法。
如图1所示,根据本发明示例实施例的数据库写入装置100可以应用数据库环境下,所述数据库包括根据预先设定的多个维度而划分的多个维度库。所述装置100可以包括:维度管理模块110,配置为对所述多个维度进行管理并存储每个维度的信息,并维护这些维度的数据存储映射规则;以及写入分发模块120,配置为:响应于向所述数据库写入数据,从维度管理模块110获取所述多个维度的信息;根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库。所述维度的信息可以包括该维度的入库管道地址和订阅字段。入库管道负责将所有数据完整入库到对应维度库中,并且保证数据最终都完整入库,不保证按时入库,但是会尽最大的努力保证及时入库。例如,所述数据库可以包括例如年龄、姓氏和职业等多个维度。维度管理模块110可以配置为管理上述维度中的各维度的入库管道地址以及订阅字段等的信息。具体地,参考图2,在步骤201,响应于向所述数据库写入数据,获取所述多个维度的信息。在步骤203,根据所获取的信息,确定所述数据是否含有所述多个维度中的各维度的关联数据部分,例如,含有关于年龄、姓氏和职业的信息。如果确定所述数据含有所述各维度中的至少一个维度的关联数据部分,则在步骤204,至少将所述关联数据部分分发到所述至少一个维度的维度库,其中所述至少将所述关联数据部分分发到所述至少一个维度的维度库包括将含有关联数据部分的全量数据或仅将所述关联数据部分分发到所述至少一个维度的维度库。例如,如果确定写入的数据含有年龄、姓氏和职业中的至少一个的相关信息,则按对应字段将含有所述相关信息的数据分发给对应维度的维度库。所述分发可以是根据对应维度的入库管道地址,经由所述入库管道将数据分发到对应维度的维度库。也就是说,如果写入的数据含有姓氏和年龄的相关信息,则可以根据从维度管理模块110接收到的关于姓氏和年龄两个维度的信息(入库管道地址),经由对应入库管道将所述数据分发给与姓氏和年龄相对应的维度库。以上描述了将含有关联数据部分的全量数据分发到对应维度的维度库的示例。
然而,本发明示例实施例还可以包括将关联数据部分分发到对应维度的维度库的情况。在这种情况下,写入分发模块120负责把写入的数据进行分发,首先分发一份全量数据到原始数据入库管道,再按各维度订阅数据分发对应需要的数据到各维度的入库管道。具体地,数据库除了上述根据预先设定的多个维度划分的维度库之外,还可以包括全量数据数据库。所述在数据库写入数据的方法还可以包括:响应于向所述数据库写入数据,将所述数据分发到所述全量数据数据库。在这种情况下,当确定写入的数据含有所述各维度中的至少一个维度的关联数据部分时,将所述关联数据部分分发到所述至少一个维度的维度库,并存储含有所述关联数据部分的数据在全量数据数据库中的对应映射关系,使得可以减少各维度库上的负载,节省存储空间。
备选地,所述数据库写入装置100还可以包括数据分表模块,配置为负责每个维度的数据切分,并维护这些数据切分规则。所述数据分表模块用于在所述写入分发模块120经由入库管道至少将所述关联数据部分分发到所述至少一个维度的维度库之后,针对所述对应维度的维度库执行分表处理,以便随后更快速地调用数据。例如,将年龄维度下的数据进一步分为年龄在10岁以下、10-20岁、20-30岁以及30岁以上的多个表。
因此,根据上述示例实施例的数据库写入装置和方法可以实现多维度的切分,甚至可以在多个维度上实现分表,解决了现有技术中关于无法实现多维度切分的问题。
图3示出了根据本发明示例实施例的在数据库中查询数据的装置的框图。图4示出了根据本发明示例实施例的在数据库中查询数据的方法的流程图。以下参考图3和4来描述根据本发明示例实施例的在数据库中查询数据的方法。
如图3所示,数据库查询装置300可以应用于数据库环境下,其中所述数据库可以包括根据预先设定的多个维度而划分的多个维度库。所述数据库查询装置300可以包括:维度管理模块310,配置为对所述多个维度进行管理并存储每个维度的信息。所述数据库查询装置300还可以包括:查询解析模块320,配置为响应于接收到查询请求,确定用于查询的维度和查询条件,并从维度管理模块获取所确定的维度的信息。所述查询解析模块320用于根据查询请求分析选取查询维度,选定一个查询维度,然后根据维度映射的存储路径到查询路由模块根据查询条件路由到查询的表,并根据此生成最后的执行指令,例如,结构化查询语言(sql)指令。所述数据库查询装置300还可以包括路由模块330,配置为根据获取到的信息,路由到与所确定的维度相对应的对应维度库。进一步地,如果在对应维度库内存在多个表,则路由模块330还可以根据查询条件以及数据分表规则而路由到多个表中的特定表。也就是说,路由模块330还可以包括根据数据切分规则,根据查询请求的条件路由到实际需要执行的表上。此外,所述数据库查询装置300可以包括执行模块340,配置为根据所确定的查询条件,在所述对应维度库内执行查询。维度管理模块310的配置与图1所述的维度管理模块110的配置相同或相似,用于管理多个维度的信息,其中维度的信息可以包括对应维度的入库管道地址和订阅字段。具体地,参考图4,根据本发明示例实施例的在数据库中查询数据的方法可以包括:在步骤401,响应于接收到查询请求,根据查询请求确定用于查询的维度和查询条件;在步骤S403,获取所确定的维度的信息;在步骤S405,根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及在步骤S407,根据所确定的查询条件,在所述对应维度库内执行查询。例如,当接收到查询请求时,首先根据查询分析选取查询维度,并提取与所述查询维度相关的查询条件。当查询请求内同时包括多个维度(例如,年龄和职业)时,通过预先分析优选性地确定一个查询维度(例如,年龄)。然后,从维度管理模块310接收与所确定的查询维度相关的信息,例如入库管道地址。如果如上所述,年龄的维度库内包括根据预定分表规则划分的多个表,则根据维度映射的存储路径到查询路由模块330根据查询条件路由到查询的表,并根据此生产最后的执行sql。执行模块340负责拿到最后的执行sql到最后确定的库上去执行。附加地,所述装置300还可以包括结果处理器模块,配置为接收执行结果,并对其进行处理,以便将经过处理的结果呈现给用户,例如,将查询结果整合返回给用户。
图5示出了根据本发明示例实施例的数据库管理系统的框图。所述数据库管理系统500可以包括根据上述示例实施例所述的数据库写入装置100以及数据库查询装置300二者。具体地,可以包括以下模块:维度管理模块510,配置为对所述多个维度进行管理并存储每个维度的信息;写入分发模块521,配置为响应于向所述数据库写入数据,从维度管理模块获取所述多个维度的信息;根据所获取的信息,确定所述数据是否含有所述多个维度中的各维度的关联数据部分;以及响应于确定所述数据含有所述各维度中的至少一个维度的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库;查询解析模块522,配置为响应于接收到查询请求,确定用于查询的维度和查询条件,并从维度管理模块获取所确定的维度的信息;路由模块530,配置为根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及执行模块540,配置为根据所确定的查询条件,在所述对应维度库内执行查询。上述模块的配置以及功能与图1和图3所述的对应模块相同,因此将不再进行赘述。
图6(a)和6(b)分别示出了根据本发明优选实施例的在数据库中写入数据以及查询数据的方法的示意图。
具体地,数据库包括根据多个预定维度划分的维度库以及全量数据数据库。在进行数据库写入时,参见如图6(a)所述,写入分发模块获取每个维度的信息,经由入库通道将待写入的数据首先写入全量数据的数据库。此外,根据所获取的信息,根据所获取的维度信息,确定所述数据是否含有所述多个维度中的各维度的关联数据部分。例如,确定待写入的数据是否含有与姓名、年龄和职业相关的关联数据部分。如果待写入的数据含有与姓名、年龄和职业之一或更多个维度相关的关联数据部分,则经由入库管道将关联数据部分(即,部分数据)写入对应的维度库,然后存储与在全量数据库中含有所述关联数据部分的数据的映射关系。此外,还可以根据预定分表原则对每个维度库内的数据(包括全量数据和部分数据)进行分表。图6(b)描述了根据本发明优选实施例的在数据库中查询数据的方法的示意图。具体地,在进行数据库查询时,如图6(b)所示,查询解析模块首先根据查询请求确定查询维度以及查询条件,例如,如果确定年龄为查询维度,则从维度管理模块接收关于该维度的信息,即,年龄维度的入库管道地址。路由模块根据所述信息路由到对应的维度库,此处,表示为维度一的维度库,即,第一次路由。如果该维度库下存在多个表,则根据预定分表规则路由到多个表中的特定表,即,第二次路由。随后,执行模块可以根据查询条件在所述表内执行查找,然后将查找结果返回给结果处理模块。在该示例下,由于维度库内存储的是关联数据部分(即,部分数据而非全量数据),结果处理模块还可以根据与全量数据库中含有所述关联数据部分的数据的映射关系来提取对应的全量数据,以便将最终的数据返回给用户。
应注意,上述仅是一个示例实施例,本发明构思还包括向维度库分发全量数据而非原始数据的情况。在这种情况下,本领域技术人员应认识到可以省略上述步骤中的部分步骤,而不脱离本发明的构思。因此,根据本发明示例实施例的数据库写入方法与装置、数据库查询方法与装置、以及数据库管理系统可以解决海量数据在切分时不能多维度切分且在查询时不能多维度查询的问题,使得能够支持多个维度高并发的查询。
以上方案仅是示出本发明构思的一个具体实现方案,本发明不限于上述实现方案。可以省略或跳过上述实现方案中的一部分处理,而不脱离本发明的精神和范围。
本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、只读光盘、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种在数据库中写入数据的方法,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述方法包括:
响应于向所述数据库写入数据,获取所述多个维度的信息;
根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及
响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库,
其中所述方法还包括:在经由入库管道至少将所述关联数据部分分发到所述至少一个维度的维度库之后,针对所述至少一个维度的维度库执行分表处理。
2.根据权利要求1所述的方法,其中所述至少将所述关联数据部分分发到所述至少一个维度的维度库包括:将所述数据全部分发到所述至少一个维度的维度库。
3.根据权利要求1所述的方法,其中所述数据库还包括全量数据数据库,以及
所述方法还包括:响应于向所述数据库写入数据,将所述数据分发到所述全量数据数据库。
4.根据权利要求1所述的方法,其中所述信息包括对应维度的入库管道地址信息以及订阅字段。
5.一种在数据库中写入数据的装置,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述装置包括:
维度管理模块,配置为对所述多个维度进行管理并存储每个维度的信息;以及
写入分发模块,配置为:
响应于向所述数据库写入数据,从维度管理模块获取所述多个维度的信息;
根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及
响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库,
其中所述装置还包括数据分表模块,其中所述数据分表模块配置为在所述写入分发模块经由入库管道至少将所述关联数据部分分发到所述至少一个维度的维度库之后,针对所述至少一个维度的维度库执行分表处理。
6.一种数据库管理系统,其中所述数据库包括根据预先设定的多个维度而划分的多个维度库,所述系统包括:
维度管理模块,配置为对所述多个维度进行管理并存储每个维度的信息;
写入分发模块,配置为响应于向所述数据库写入数据,从维度管理模块获取所述多个维度的信息;根据所获取的信息,确定要写入的数据是否含有与所述多个维度中的各维度有关的关联数据部分;以及响应于确定所述数据含有与至少一个维度有关的关联数据部分,至少将所述关联数据部分分发到所述至少一个维度的维度库;
数据分表模块,配置为在所述写入分发模块经由入库管道至少将所述关联数据部分分发到所述至少一个维度的维度库之后,针对所述至少一个维度的维度库执行分表处理;
查询解析模块,配置为响应于接收到查询请求,确定用于查询的维度和查询条件,并从维度管理模块获取所确定的维度的信息;
路由模块,配置为根据获取到的信息,路由到与所确定的维度相对应的对应维度库;以及
执行模块,配置为根据所确定的查询条件,在所述对应维度库内执行查询。
7.一种在数据库中写入数据的装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1至4中任一项所述的在数据库中写入数据的方法。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1至4中任一项所述的在数据库中写入数据的方法。
CN201610374476.0A 2016-05-31 2016-05-31 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质 Active CN107451142B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610374476.0A CN107451142B (zh) 2016-05-31 2016-05-31 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610374476.0A CN107451142B (zh) 2016-05-31 2016-05-31 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN107451142A CN107451142A (zh) 2017-12-08
CN107451142B true CN107451142B (zh) 2022-05-27

Family

ID=60484924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610374476.0A Active CN107451142B (zh) 2016-05-31 2016-05-31 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN107451142B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190605A (zh) * 2021-04-30 2021-07-30 携程商旅信息服务(上海)有限公司 票价展示方法及系统、电子设备及存储介质
CN116821139B (zh) * 2023-08-25 2024-01-23 南方电网数字电网研究院有限公司 基于分布式数据库的分区表设计的混合负载方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252506A (zh) * 2013-06-28 2014-12-31 易保网络技术(上海)有限公司 同步构建业务模型和数据仓库模型及其映射的方法及系统
WO2015027831A1 (en) * 2013-08-26 2015-03-05 Tencent Technology (Shenzhen) Company Limited Multidimensional data processing method and device
CN104820715A (zh) * 2015-05-19 2015-08-05 杭州迅涵科技有限公司 基于多维度关联的数据共享和分析方法及系统
CN105224635A (zh) * 2015-09-24 2016-01-06 广州精点计算机科技有限公司 一种基于混合模型的并行olap构建装置及构建方法
CN105488231A (zh) * 2016-01-22 2016-04-13 杭州电子科技大学 一种基于自适应表维度划分的大数据处理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252506A (zh) * 2013-06-28 2014-12-31 易保网络技术(上海)有限公司 同步构建业务模型和数据仓库模型及其映射的方法及系统
WO2015027831A1 (en) * 2013-08-26 2015-03-05 Tencent Technology (Shenzhen) Company Limited Multidimensional data processing method and device
CN104820715A (zh) * 2015-05-19 2015-08-05 杭州迅涵科技有限公司 基于多维度关联的数据共享和分析方法及系统
CN105224635A (zh) * 2015-09-24 2016-01-06 广州精点计算机科技有限公司 一种基于混合模型的并行olap构建装置及构建方法
CN105488231A (zh) * 2016-01-22 2016-04-13 杭州电子科技大学 一种基于自适应表维度划分的大数据处理方法

Also Published As

Publication number Publication date
CN107451142A (zh) 2017-12-08

Similar Documents

Publication Publication Date Title
US10719510B2 (en) Tiering with pluggable storage system for parallel query engines
CN109213601B (zh) 一种基于cpu-gpu的负载均衡方法及设备
US20150205885A1 (en) CREATING NoSQL DATABASE INDEX FOR SEMI-STRUCTURED DATA
US9195701B2 (en) System and method for flexible distributed massively parallel processing (MPP) database
US7640257B2 (en) Spatial join in a parallel database management system
US20130254240A1 (en) Method of processing database, database processing apparatus, computer program product
US20150032758A1 (en) High Performance Index Creation
US11288287B2 (en) Methods and apparatus to partition a database
CN103970902A (zh) 一种大量数据情况下的可靠即时检索方法及系统
EP2833277A1 (en) Global dictionary for database management systems
US10496659B2 (en) Database grouping set query
CN104871153A (zh) 用于灵活的分布式大规模并行处理(mpp)数据库的系统和方法
US10831709B2 (en) Pluggable storage system for parallel query engines across non-native file systems
CN105468644A (zh) 一种用于在数据库中进行查询的方法与设备
CN104239470A (zh) 一种面向分布式环境的空间数据复合处理系统和方法
CN102521304A (zh) 基于哈希的聚簇表存储方法
US9953067B2 (en) Method and system for processing data in a parallel database environment
CN107451142B (zh) 在数据库中写入和查询数据的方法与装置及其管理系统和计算机可读存储介质
US20180293237A1 (en) Assigning segments of a shared database storage to nodes
CN111680030A (zh) 数据融合方法及装置,基于元信息的数据处理方法和装置
CN104462080A (zh) 针对检索结果进行分组统计的索引结构创建方法和系统
US9870399B1 (en) Processing column-partitioned data for row-based operations in a database system
US11250002B2 (en) Result set output criteria
CN111125216B (zh) 数据导入Phoenix的方法及装置
KR101772333B1 (ko) 이종 NoSQL 데이터베이스들간의 지능적 조인 전략 제공 방법 및 시스템

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