CN116821139B - 基于分布式数据库的分区表设计的混合负载方法及*** - Google Patents

基于分布式数据库的分区表设计的混合负载方法及*** Download PDF

Info

Publication number
CN116821139B
CN116821139B CN202311078228.8A CN202311078228A CN116821139B CN 116821139 B CN116821139 B CN 116821139B CN 202311078228 A CN202311078228 A CN 202311078228A CN 116821139 B CN116821139 B CN 116821139B
Authority
CN
China
Prior art keywords
data
information
preset
dimension combination
sub
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
CN202311078228.8A
Other languages
English (en)
Other versions
CN116821139A (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.)
Southern Power Grid Digital Grid Research Institute Co Ltd
Original Assignee
Southern Power Grid Digital Grid Research Institute 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 Southern Power Grid Digital Grid Research Institute Co Ltd filed Critical Southern Power Grid Digital Grid Research Institute Co Ltd
Priority to CN202311078228.8A priority Critical patent/CN116821139B/zh
Publication of CN116821139A publication Critical patent/CN116821139A/zh
Application granted granted Critical
Publication of CN116821139B publication Critical patent/CN116821139B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了基于分布式数据库的分区表设计的混合负载方法及***,其中方法包括:获取用户访问信息;根据用户访问信息,得到用户访问信息的数据名称信息;根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。本发明通过使用数据分区可以大大减少读取的数据量,提高数据查询的并发度,从而解决了输入或输出的高负载和高时延问题。

Description

基于分布式数据库的分区表设计的混合负载方法及***
技术领域
本发明涉及数据处理和分布式数据库领域,更具体的,涉及基于分布式数据库的分区表设计的混合负载方法及***。
背景技术
集团在数字化转型建设过程中,面临各个单位数据库实例的数据汇集、ETL场景计算慢、分析汇总实时性不高、数据基建复杂多样、单表数据量不断增大、查询数据速率变慢、应用程序性能下降等问题,并且单一的数据存储承载的数据量以及数据处理能力有限,使用分库分表技术对数据按需拆分,对业务侵入性大等局限性,并且单机数据库由于硬件和软件的限制,数据库在数据存储容量、访问容量、容灾等方面都会随着业务的增长而到达瓶颈。特别是当业务数据达到几千万甚至上亿条记录时,一次简单的查询请求往往需要读取大量的磁盘数据,造成输入/输出的高负载和高时延问题。
因此,现有技术存在缺陷,亟待改进。
发明内容
鉴于上述问题,本发明的目的是提供基于分布式数据库的分区表设计的混合负载方法及***,能够更有效的解决了输入或输出的高负载和高时延问题。
本发明第一方面提供了基于分布式数据库的分区表设计的混合负载方法,包括:
获取用户访问信息;
根据用户访问信息,得到用户访问信息的数据名称信息;
根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。
本方案中,还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表。
本方案中,所述将数据集按照预设规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区。
本方案中,所述分区方式,具体包括:范围分区方式和散列分区方式。
本方案中,还包括:
将数据集中的数据按照预设第三规则进行划分,得到不同属性的子数据以及对应属性的名称;
将对应属性的名称设为维度类型,并将对应属性的子数据发送至对应维度类型进行存储;
将维度类型按照预设第四规则进行排序,得到维度组合定义表。
本方案中,还包括:
获取维度组合定义表中的维度组合的字节大小值信息;
判断所述维度组合定义表中的维度组合的字节大小值是否大于预设字节长度;若是,则触发修改提示信息;若否,显示为正常信息;
将所述修改提示信息或正常信息发送至预设管理端以进行显示。
本方案中,还包括:
获取维度组合定义表中的维度组合的格式信息;
判断所述维度组合定义表中的维度组合的格式是否符合预设格式范围;若是,则得到对应维度组合格式正常信息;若否,得到对应维度组合格式异常信息;
将所述维度组合格式正常信息或异常信息发送至预设管理端以进行显示。
本发明第二方面提供了基于分布式数据库的分区表设计的混合负载***,包括存储器和处理器,所述存储器中存储有基于分布式数据库的分区表设计的混合负载方法程序,所述基于分布式数据库的分区表设计的混合负载方法程序被所述处理器执行时实现如下步骤:
获取用户访问信息;
根据用户访问信息,得到用户访问信息的数据名称信息;
根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。
本方案中,还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表。
本方案中,所述将数据集按照预设规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区。
本方案中,所述分区方式,具体包括:范围分区方式和散列分区方式。
本方案中,还包括:
将数据集中的数据按照预设第三规则进行划分,得到不同属性的子数据以及对应属性的名称;
将对应属性的名称设为维度类型,并将对应属性的子数据发送至对应维度类型进行存储;
将维度类型按照预设第四规则进行排序,得到维度组合定义表。
本方案中,还包括:
获取维度组合定义表中的维度组合的字节大小值信息;
判断所述维度组合定义表中的维度组合的字节大小值是否大于预设字节长度;若是,则触发修改提示信息;若否,显示为正常信息;
将所述修改提示信息或正常信息发送至预设管理端以进行显示。
本方案中,还包括:
获取维度组合定义表中的维度组合的格式信息;
判断所述维度组合定义表中的维度组合的格式是否符合预设格式范围;若是,则得到对应维度组合格式正常信息;若否,得到对应维度组合格式异常信息;
将所述维度组合格式正常信息或异常信息发送至预设管理端以进行显示。
本发明公开了基于分布式数据库的分区表设计的混合负载方法及***,通过使用数据分区可以大大减少读取的数据量,提高数据查询的并发度,从而解决了输入或输出的高负载和高时延问题。
附图说明
图1示出了本发明基于分布式数据库的分区表设计的混合负载方法的流程图;
图2示出了多维分区方法示意图;
图3示出了范围分区方式示意图;
图4示出了散列分区方式示意图;
图5示出了维度组合定义表的示例图;
图6示出了本发明基于分布式数据库的分区表设计的混合负载***的框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了本发明基于分布式数据库的分区表设计的混合负载方法的流程图。
如图1所示,本发明公开了基于分布式数据库的分区表设计的混合负载方法,包括:
S102,获取用户访问信息;
S104,根据用户访问信息,得到用户访问信息的数据名称信息;
S106,根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
S108,将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。
需要说明的是,用户的数据根据自定义的规则划分为多个子数据,并分别存储在维度组合定义表,当用户访问该数据时,通过对应数据名称,确定对应数据所在的维度组合定义表,再将维度组合定义表中的子数据按照预设第一规则进行重组,得到用户访问数据,所述预设第一规则为数据拆分为多个子数据的逆向规则,比如数据abc由a、b和c三个子数据组成,将数据拆分多个子数据时,先将数据abc拆分为ab和c,再将ab拆分为子数据a和子数据b;则预设第一规则为先将子数据a和b组合成子数据ab,再将子数据ab和c组合成为数据abc。
图2示出了多维分区方法示意图。
如图2所示,根据本发明实施例,还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表。
需要说明的是,将数据集中的数据按照预设第二规则划分为多个不相交的子集,再将这些子集映射到另外的集合上;所述不相交的子集即为分区,被数据划分的集合成为主集合,分区映射的集合称为子集合;再针对某一个子集合使用数据库分区,将子集合中的数据切分到不同复制组中,当需要访问某一范围内的数据时,既可以将数据访问集中到在若干个子集合中,又能同时发挥在不同复制组并行计算的能力。所述预设第二规则由用户自定义,比如:数据的属性、数据的更新时间等划分规则,如图中主集合存在多个子数据Record N,按照第二规则将Record 1和Record 2划分到子集合1中,再将Record 1和Record2切分到复制组1中进行存储。
根据本发明实施例,所述将数据集按照预设规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区。
需要说明的是,所述对应数据集中数据的取值为对应数据的字段取值,数据的字段取值的取值范围为0至255,比如以100为界,将整个取值范围划分为两个取值范围,当数据的字段取值小于或等于100时,落入的取值范围为,所述分区方式包括范围分区和散列分区,其中一个取值范围仅对应一个分区方式。
图3示出了范围分区方式示意图,图4示出了散列分区方式示意图。
如图3和图4所示,根据本发明实施例,所述分区方式,具体包括:范围分区方式和散列分区方式。
需要说明的是,所述范围分区方式是指根据集合数据的取值范围,对集合中的数据进行切分的分区方式,比如:当访问某一时间段的记录时,数据库只会访问对应时间段的分区数据,而不会访问其他时间段的分区数据,如图3所示,将主集合中的数据按照时间先后顺序进划分,得到不同时间段的分区。所述散列分区方式是指先对集合数据做一次散列运算,再按照散列运算结果的hash值对数据进行切分的分区方式;通过散列分区方式,每个hash值对应的数据量基本相同,而在范围分区方式中,相同范围内的数据量不一定是相同的。例如:当遍历集合数据时,数据库就会访问所有分区的数据,可以发挥所有分区上各个节点的并行计算的能力,如图4所示,先将主集合中的子数据分别进行hash计算,得到hash值,根据hash值对数据进行分区。
图5示出了维度组合定义表的示例图。
如图5所示,根据本发明实施例,还包括:
将数据集中的数据按照预设第三规则进行划分,得到不同属性的子数据以及对应属性的名称;
将对应属性的名称设为维度类型,并将对应属性的子数据发送至对应维度类型进行存储;
将维度类型按照预设第四规则进行排序,得到维度组合定义表。
需要说明的是,基于预设第三规则,确定各维度类型ID,比如维度类别(0-对象,1-分类)、维度类型(具体的对象类型或业务分类所属的分类数的以及分类ITEMCODE)和维度名称信息,根据先对象、后分类,并按照ID升序或降序进行依次排序,得到凭证的维度组合ID,再将其转为行格式,这样就可以快速批量获得数据信息,最后将其存储在维度组合定义表(ACC_DIM_GROUP)供后续使用。所述预设第三规则是能区分不同维度属性的规则,所述预设第四规则为ID升序或降序。
所述预设第三规则为本领域技术人员按照实际需求进行设置。
根据本发明实施例,还包括:
获取维度组合定义表中的维度组合的字节大小值信息;
判断所述维度组合定义表中的维度组合的字节大小值是否大于预设字节长度;若是,则触发修改提示信息;若否,显示为正常信息;
将所述修改提示信息或正常信息发送至预设管理端以进行显示。
需要说明的是,比如将预设字节长度设为300,则对应维度组合定义表中的维度组合的字节应小于或等于300个字节长度,当维度组合的字节长度大于300时,说明对应维度组合的字节长度过长,触发修改提示,将维度组合的字节长度调制小于或等于预设字节长度。
根据本发明实施例,还包括:
获取维度组合定义表中的维度组合的格式信息;
判断所述维度组合定义表中的维度组合的格式是否符合预设格式范围;若是,则得到对应维度组合格式正常信息;若否,得到对应维度组合格式异常信息;
将所述维度组合格式正常信息或异常信息发送至预设管理端以进行显示。
需要说明的是,所述预设格式范围包括仅具有管理对象维度格式、仅具有业务分类维度格式和同时具有管理对象与业务分类维度格式,其中仅具有管理对象维度格式为0:DXID1 [, DXID2 [, DXID3 ... ]];仅具有业务分类维度格式为1: FLIID1 [, FLIID2 [,FLIID3 ... ]];同时具有管理对象与业务分类维度格式为0:DXID1 [, DXID2 [, DXID3... ]]; 1: FLIID1 [, FLIID2 [, FLIID3 ... ]];其中字符串"0:"后标识的是管理对象ID,而"1:"后标识的是业务分类的IID,并且ID/IID是按照从左往右升序排序。例如,某一凭证同时具有管理对象与业务分类维度,则对应DIM_GROUP格式将按照先管理对象、后业务分类顺序列出,中间以分号(";")分隔。
根据本发明实施例,还包括:
获取用户访问的日志信息表信息;
根据用户访问的日志信息表信息,得到用户访问数据期间的程序SQL代码在执行过程的开始时间和结束时间;
将所述结束时间减去开始时间,得到对应用户访问数据期间的程序SQL代码在执行过程的使用时间;
判断所述程序SQL代码在执行过程的使用时间是否小于预设时长阈值;若是,则对应程序SQL代码的执行效率高;否则对应程序SQL代码的执行效率低。
需要说明的是,比如预设时长阈值为10,则说明当程序SQL代码在执行过程的使用时间大于或等于10秒时,说明对应程序SQL代码在执行时存在超时,即对应程序SQL代码的执行效率低,将对应程序SQL代码进行标记以方便进行修订处理。
根据本发明实施例,还包括:
获取执行效率低的程序SQL代码在执行时的详细过程信息;
根据执行效率低的程序SQL代码在执行时的详细过程信息,得到对应程序SQL代码在执行时各关键词的详细信息;
将所述对应程序SQL代码在执行时各关键词的详细信息和预设关键词步骤标准进行对比分析,得到对应程序SQL代码在执行时的非标准关键词步骤。
需要说明的是,所述程序SQL代码在执行时的关键词包括:执行数、读取行数、***记录的条数等关键词信息,所述预设关键词步骤标准为本领域技术人员根据实际需求进行设定;当对应关键词信息超过对应关键词步骤标准时,说明对应关键词对应的步骤存在多余执行步骤,比如关键词执行数为2,但是实际上对应程序SQL代码执行了4次,说明对应程序SQL代码存在多余的执行次数,因此造成了执行效率低问题。
根据本发明实施例,还包括:
基于预设时间感应器,获取用户访问子数据进行重组的时间;
判断所述用户访问子数据进行重组的时间是否小于预设重组时间阈值,若是,对应分布式数据库的分区表设计为合理;若否,得到对应用户访问子数据进行重组时间过长提示信息;
将所述用户访问子数据进行重组时间过长提示信息发送至预设管理端以进行显示。
需要说明的是,比如预设重组时间阈值为2秒,则对应用户访问数据进行重组的时间需要控制在2秒以内,否则会给用户带来等待时间过长等不佳体验。
根据本发明实施例,当用户访问子数据进行重组时,还包括:
获取维度组合定义表中的实时状态信息;
将所述维度组合定义表中的实时状态信息和预设状态信息进行对比分析,得到第一相似值;
判断所述第一相似值是否大于预设第一相似阈值,若是,对应维度组合定义表为正常;若否,对应维度组合定义表为不正常;
将所述维度组合定义表为不正常信息发送至预设管理端以进行显示。
需要说明的是,所述预设状态信息为对应维度组合定义表在运行时的正常状态,包括对应维度组合定义表中的运行电流、运行负荷等状态信息,当维度组合定义表的实时状态信息和预设状态信息的第一相似值大于预设第一相似阈值时,说明对应维度组合定义表为正常,所述预设第一相似阈值、预设状态信息由本领域技术人员进行设置。
图6示出了本发明基于分布式数据库的分区表设计的混合负载***的框图。
如图6所示,本发明第二方面提供了基于分布式数据库的分区表设计的混合负载***6,包括存储器61和处理器62,所述存储器中存储有基于分布式数据库的分区表设计的混合负载方法程序,所述基于分布式数据库的分区表设计的混合负载方法程序被所述处理器执行时实现如下步骤:
获取用户访问信息;
根据用户访问信息,得到用户访问信息的数据名称信息;
根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。
需要说明的是,用户的数据根据自定义的规则划分为多个子数据,并分别存储在维度组合定义表,当用户访问该数据时,通过对应数据名称,确定对应数据所在的维度组合定义表,再将维度组合定义表中的子数据按照预设第一规则进行重组,得到用户访问数据,所述预设第一规则为数据拆分为多个子数据的逆向规则,比如数据abc由a、b和c三个子数据组成,将数据拆分多个子数据时,先将数据abc拆分为ab和c,再将ab拆分为子数据a和子数据b;则预设第一规则为先将子数据a和b组合成子数据ab,再将子数据ab和c组合成为数据abc。
根据本发明实施例,还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表。
需要说明的是,将数据集中的数据按照预设第二规则划分为多个不相交的子集,再将这些子集映射到另外的集合上;所述不相交的子集即为分区,被数据划分的集合成为主集合,分区映射的集合称为子集合;再针对某一个子集合使用数据库分区,将子集合中的数据切分到不同复制组中,当需要访问某一范围内的数据时,既可以将数据访问集中到在若干个子集合中,又能同时发挥在不同复制组并行计算的能力。所述预设第二规则由用户自定义,比如:数据的属性、数据的更新时间等划分规则,如图中主集合存在多个子数据Record N,按照第二规则将Record 1和Record 2划分到子集合1中,再将Record 1和Record2切分到复制组1中进行存储。
根据本发明实施例,所述将数据集按照预设规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区。
需要说明的是,所述对应数据集中数据的取值为对应数据的字段取值,数据的字段取值的取值范围为0至255,比如以100为界,将整个取值范围划分为两个取值范围,当数据的字段取值小于或等于100时,落入的取值范围为,所述分区方式包括范围分区和散列分区,其中一个取值范围仅对应一个分区方式。
根据本发明实施例,所述分区方式,具体包括:范围分区方式和散列分区方式。
需要说明的是,所述范围分区方式是指根据集合数据的取值范围,对集合中的数据进行切分的分区方式,比如:当访问某一时间段的记录时,数据库只会访问对应时间段的分区数据,而不会访问其他时间段的分区数据,如图3所示,将主集合中的数据按照时间先后顺序进划分,得到不同时间段的分区。所述散列分区方式是指先对集合数据做一次散列运算,再按照散列运算结果的hash值对数据进行切分的分区方式;通过散列分区方式,每个hash值对应的数据量基本相同,而在范围分区方式中,相同范围内的数据量不一定是相同的。例如:当遍历集合数据时,数据库就会访问所有分区的数据,可以发挥所有分区上各个节点的并行计算的能力,如图4所示,先将主集合中的子数据分别进行hash计算,得到hash值,根据hash值对数据进行分区。
根据本发明实施例,还包括:
将数据集中的数据按照预设第三规则进行划分,得到不同属性的子数据以及对应属性的名称;
将对应属性的名称设为维度类型,并将对应属性的子数据发送至对应维度类型进行存储;
将维度类型按照预设第四规则进行排序,得到维度组合定义表。
需要说明的是,基于预设第三规则,确定各维度类型ID,比如维度类别(0-对象,1-分类)、维度类型(具体的对象类型或业务分类所属的分类数的以及分类ITEMCODE)和维度名称信息,根据先对象、后分类,并按照ID升序或降序进行依次排序,得到凭证的维度组合ID,再将其转为行格式,这样就可以快速批量获得数据信息,最后将其存储在维度组合定义表(ACC_DIM_GROUP)供后续使用。所述预设第三规则是能区分不同维度属性的规则,所述预设第四规则为ID升序或降序。
根据本发明实施例,还包括:
获取维度组合定义表中的维度组合的字节大小值信息;
判断所述维度组合定义表中的维度组合的字节大小值是否大于预设字节长度;若是,则触发修改提示信息;若否,显示为正常信息;
将所述修改提示信息或正常信息发送至预设管理端以进行显示。
需要说明的是,比如将预设字节长度设为300,则对应维度组合定义表中的维度组合的字节应小于或等于300个字节长度,当维度组合的字节长度大于300时,说明对应维度组合的字节长度过长,触发修改提示,将维度组合的字节长度调制小于或等于预设字节长度。
根据本发明实施例,还包括:
获取维度组合定义表中的维度组合的格式信息;
判断所述维度组合定义表中的维度组合的格式是否符合预设格式范围;若是,则得到对应维度组合格式正常信息;若否,得到对应维度组合格式异常信息;
将所述维度组合格式正常信息或异常信息发送至预设管理端以进行显示。
需要说明的是,所述预设格式范围包括仅具有管理对象维度格式、仅具有业务分类维度格式和同时具有管理对象与业务分类维度格式,其中仅具有管理对象维度格式为0:DXID1 [, DXID2 [, DXID3 ... ]];仅具有业务分类维度格式为1: FLIID1 [, FLIID2 [,FLIID3 ... ]];同时具有管理对象与业务分类维度格式为0:DXID1 [, DXID2 [, DXID3... ]]; 1: FLIID1 [, FLIID2 [, FLIID3 ... ]];其中字符串"0:"后标识的是管理对象ID,而"1:"后标识的是业务分类的IID,并且ID/IID是按照从左往右升序排序。例如,某一凭证同时具有管理对象与业务分类维度,则对应DIM_GROUP格式将按照先管理对象、后业务分类顺序列出,中间以分号(";")分隔。
根据本发明实施例,还包括:
获取用户访问的日志信息表信息;
根据用户访问的日志信息表信息,得到用户访问数据期间的程序SQL代码在执行过程的开始时间和结束时间;
将所述结束时间减去开始时间,得到对应用户访问数据期间的程序SQL代码在执行过程的使用时间;
判断所述程序SQL代码在执行过程的使用时间是否小于预设时长阈值;若是,则对应程序SQL代码的执行效率高;否则对应程序SQL代码的执行效率低。
需要说明的是,比如预设时长阈值为10,则说明当程序SQL代码在执行过程的使用时间大于或等于10秒时,说明对应程序SQL代码在执行时存在超时,即对应程序SQL代码的执行效率低,将对应程序SQL代码进行标记以方便进行修订处理。
根据本发明实施例,还包括:
获取执行效率低的程序SQL代码在执行时的详细过程信息;
根据执行效率低的程序SQL代码在执行时的详细过程信息,得到对应程序SQL代码在执行时各关键词的详细信息;
将所述对应程序SQL代码在执行时各关键词的详细信息和预设关键词步骤标准进行对比分析,得到对应程序SQL代码在执行时的非标准关键词步骤。
需要说明的是,所述程序SQL代码在执行时的关键词包括:执行数、读取行数、***记录的条数等关键词信息,所述预设关键词步骤标准为本领域技术人员根据实际需求进行设定;当对应关键词信息超过对应关键词步骤标准时,说明对应关键词对应的步骤存在多余执行步骤,比如关键词执行数为2,但是实际上对应程序SQL代码执行了4次,说明对应程序SQL代码存在多余的执行次数,因此造成了执行效率低问题。
根据本发明实施例,还包括:
基于预设时间感应器,获取用户访问子数据进行重组的时间;
判断所述用户访问子数据进行重组的时间是否小于预设重组时间阈值,若是,对应分布式数据库的分区表设计为合理;若否,得到对应用户访问子数据进行重组时间过长提示信息;
将所述用户访问子数据进行重组时间过长提示信息发送至预设管理端以进行显示。
需要说明的是,比如预设重组时间阈值为2秒,则对应用户访问数据进行重组的时间需要控制在2秒以内,否则会给用户带来等待时间过长等不佳体验。
根据本发明实施例,当用户访问子数据进行重组时,还包括:
获取维度组合定义表中的实时状态信息;
将所述维度组合定义表中的实时状态信息和预设状态信息进行对比分析,得到第一相似值;
判断所述第一相似值是否大于预设第一相似阈值,若是,对应维度组合定义表为正常;若否,对应维度组合定义表为不正常;
将所述维度组合定义表为不正常信息发送至预设管理端以进行显示。
需要说明的是,所述预设状态信息为对应维度组合定义表在运行时的正常状态,包括对应维度组合定义表中的运行电流、运行负荷等状态信息,当维度组合定义表的实时状态信息和预设状态信息的第一相似值大于预设第一相似阈值时,说明对应维度组合定义表为正常,所述预设第一相似阈值、预设状态信息由本领域技术人员进行设置。
本发明公开了基于分布式数据库的分区表设计的混合负载方法及***,其中方法包括:获取用户访问信息;根据用户访问信息,得到用户访问信息的数据名称信息;根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示。本发明通过使用数据分区可以大大减少读取的数据量,提高数据查询的并发度,从而解决了输入或输出的高负载和高时延问题。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (5)

1.基于分布式数据库的分区表设计的混合负载方法,其特征在于,包括:
获取用户访问信息;
根据用户访问信息,得到用户访问信息的数据名称信息;
根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示;
还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表;
所述将数据集按照预设第二规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区;
所述分区方式,具体包括:范围分区方式和散列分区方式;
还包括:
基于预设时间感应器,获取用户访问子数据进行重组的时间;
判断所述用户访问子数据进行重组的时间是否小于预设重组时间阈值,若是,对应分布式数据库的分区表设计为合理;若否,得到对应用户访问子数据进行重组时间过长提示信息;
将所述用户访问子数据进行重组时间过长提示信息发送至预设管理端以进行显示;
当用户访问子数据进行重组时,还包括:
获取维度组合定义表中的实时状态信息;
将所述维度组合定义表中的实时状态信息和预设状态信息进行对比分析,得到第一相似值;
判断所述第一相似值是否大于预设第一相似阈值,若是,对应维度组合定义表为正常;若否,对应维度组合定义表为不正常;
将所述维度组合定义表为不正常信息发送至预设管理端以进行显示。
2.根据权利要求1所述的基于分布式数据库的分区表设计的混合负载方法,其特征在于,还包括:
将数据集中的数据按照预设第三规则进行划分,得到不同属性的子数据以及对应属性的名称;
将对应属性的名称设为维度类型,并将对应属性的子数据发送至对应维度类型进行存储;
将维度类型按照预设第四规则进行排序,得到维度组合定义表。
3.根据权利要求2所述的基于分布式数据库的分区表设计的混合负载方法,其特征在于,还包括:
获取维度组合定义表中的维度组合的字节大小值信息;
判断所述维度组合定义表中的维度组合的字节大小值是否大于预设字节长度;若是,则触发修改提示信息;若否,显示为正常信息;
将所述修改提示信息或正常信息发送至预设管理端以进行显示。
4.根据权利要求2所述的基于分布式数据库的分区表设计的混合负载方法,其特征在于,还包括:
获取维度组合定义表中的维度组合的格式信息;
判断所述维度组合定义表中的维度组合的格式是否符合预设格式范围;若是,则得到对应维度组合格式正常信息;若否,得到对应维度组合格式异常信息;
将所述维度组合格式正常信息或异常信息发送至预设管理端以进行显示。
5.基于分布式数据库的分区表设计的混合负载***,其特征在于,包括存储器和处理器,所述存储器中存储有基于分布式数据库的分区表设计的混合负载方法程序,所述基于分布式数据库的分区表设计的混合负载方法程序被所述处理器执行时实现如下步骤:
获取用户访问信息;
根据用户访问信息,得到用户访问信息的数据名称信息;
根据用户访问信息的数据名称信息,得到对应用户访问数据所在的维度组合定义表信息以及用户访问数据在维度组合定义表中的子数据信息;
将维度组合定义表中的用户访问子数据进行汇总,并按照预设第一规则进行重组,得到用户访问数据并进行显示;
还包括:
获取数据集信息;
将数据集按照预设第二规则进行划分,得到多个数据表分区;
将所述数据表分区映射到预设子集合,得到对应数据的子集合;
基于预设数据库分区方法,将数据子集合中的子数据切分到不同的复制组;
将所述复制组中的子数据以追加方式更新至维度组合定义表;
所述将数据集按照预设第二规则进行划分,得到多个数据表分区的步骤,具体包括:
根据数据集信息,得到对应数据集中数据的取值信息;
根据数据集中数据的取值落入的取值范围,得到对应数据集的分区方式;
根据对应数据集的分区方式,将数据集划分为多个数据表分区;
所述分区方式,具体包括:范围分区方式和散列分区方式;
还包括:
基于预设时间感应器,获取用户访问子数据进行重组的时间;
判断所述用户访问子数据进行重组的时间是否小于预设重组时间阈值,若是,对应分布式数据库的分区表设计为合理;若否,得到对应用户访问子数据进行重组时间过长提示信息;
将所述用户访问子数据进行重组时间过长提示信息发送至预设管理端以进行显示;
当用户访问子数据进行重组时,还包括:
获取维度组合定义表中的实时状态信息;
将所述维度组合定义表中的实时状态信息和预设状态信息进行对比分析,得到第一相似值;
判断所述第一相似值是否大于预设第一相似阈值,若是,对应维度组合定义表为正常;若否,对应维度组合定义表为不正常;
将所述维度组合定义表为不正常信息发送至预设管理端以进行显示。
CN202311078228.8A 2023-08-25 2023-08-25 基于分布式数据库的分区表设计的混合负载方法及*** Active CN116821139B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311078228.8A CN116821139B (zh) 2023-08-25 2023-08-25 基于分布式数据库的分区表设计的混合负载方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311078228.8A CN116821139B (zh) 2023-08-25 2023-08-25 基于分布式数据库的分区表设计的混合负载方法及***

Publications (2)

Publication Number Publication Date
CN116821139A CN116821139A (zh) 2023-09-29
CN116821139B true CN116821139B (zh) 2024-01-23

Family

ID=88114751

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311078228.8A Active CN116821139B (zh) 2023-08-25 2023-08-25 基于分布式数据库的分区表设计的混合负载方法及***

Country Status (1)

Country Link
CN (1) CN116821139B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106649770A (zh) * 2016-12-27 2017-05-10 北京启明星辰信息安全技术有限公司 一种大数据查询方法及***
CN107451142A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 在数据库中写入和查询数据的方法与装置及其管理***
CN110032604A (zh) * 2019-02-02 2019-07-19 阿里巴巴集团控股有限公司 数据存储装置、转译装置及数据库访问方法
CN112685456A (zh) * 2020-12-28 2021-04-20 江苏苏宁云计算有限公司 一种用户访问数据的处理方法、装置及计算机***
CN112835986A (zh) * 2021-03-25 2021-05-25 中国工商银行股份有限公司 一种数据处理方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451142A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 在数据库中写入和查询数据的方法与装置及其管理***
CN106649770A (zh) * 2016-12-27 2017-05-10 北京启明星辰信息安全技术有限公司 一种大数据查询方法及***
CN110032604A (zh) * 2019-02-02 2019-07-19 阿里巴巴集团控股有限公司 数据存储装置、转译装置及数据库访问方法
CN112685456A (zh) * 2020-12-28 2021-04-20 江苏苏宁云计算有限公司 一种用户访问数据的处理方法、装置及计算机***
CN112835986A (zh) * 2021-03-25 2021-05-25 中国工商银行股份有限公司 一种数据处理方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
表分区技术在自动气象站数据存储中的应用;詹利群;李涛;;成都信息工程学院学报(第04期);第360-363页 *

Also Published As

Publication number Publication date
CN116821139A (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
US8725730B2 (en) Responding to a query in a data processing system
US6895471B1 (en) Method and apparatus for synchronizing cache with target tables in a data warehousing system
US7174345B2 (en) Methods and systems for auto-partitioning of schema objects
US6721749B1 (en) Populating a data warehouse using a pipeline approach
US20170083573A1 (en) Multi-query optimization
US7895171B2 (en) Compressibility estimation of non-unique indexes in a database management system
US8234268B2 (en) System, method, and computer-readable medium for optimizing processing of distinct and aggregation queries on skewed data in a database system
US9747349B2 (en) System and method for distributing queries to a group of databases and expediting data access
US20080091698A1 (en) Optimal data storage and access for clustered data in a relational database
WO2008157456A1 (en) Multidimensional analysis tool for high dimensional data
CN111221791A (zh) 一种多源异构数据导入数据湖的方法
US20130097126A1 (en) Using an inverted index to produce an answer to a query
US9104726B2 (en) Columnar databases
US20060190452A1 (en) Sort digits as number collation in server
CN112912870A (zh) 租户标识符的转换
CN116719822B (zh) 一种海量结构化数据的存储方法及***
US20060230020A1 (en) Improving Efficiency in processing queries directed to static data sets
CN116821139B (zh) 基于分布式数据库的分区表设计的混合负载方法及***
CN110321388B (zh) 一种基于Greenplum的快速排序查询方法及***
US7487165B2 (en) Computer implemented method for retrieving hit count data from a data base system and according computer program product
EP3550451A1 (en) Data storage and maintenance method and device, and computer storage medium
EP4030312A1 (en) Method and apparatus for querying data, computing device, and storage medium
WO2008055202A2 (en) System and method for distributing queries to a group of databases and expediting data access
CN115952200B (zh) 一种基于mpp架构的多源异构数据聚合查询方法及装置
US12026162B2 (en) Data query method and apparatus, computing device, and storage medium

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