CN110471916A - 数据库的查询方法、装置、服务器及介质 - Google Patents

数据库的查询方法、装置、服务器及介质 Download PDF

Info

Publication number
CN110471916A
CN110471916A CN201910594593.1A CN201910594593A CN110471916A CN 110471916 A CN110471916 A CN 110471916A CN 201910594593 A CN201910594593 A CN 201910594593A CN 110471916 A CN110471916 A CN 110471916A
Authority
CN
China
Prior art keywords
node
classification
tree method
tree
index
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
Application number
CN201910594593.1A
Other languages
English (en)
Other versions
CN110471916B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910594593.1A priority Critical patent/CN110471916B/zh
Publication of CN110471916A publication Critical patent/CN110471916A/zh
Priority to PCT/CN2020/092811 priority patent/WO2021000671A1/zh
Application granted granted Critical
Publication of CN110471916B publication Critical patent/CN110471916B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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/284Relational databases
    • G06F16/285Clustering or classification
    • 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

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明适用于数据处理技术领域,提供了一种数据库的查询方法、装置、服务器及介质,通过获取分类树模型并根据当前各节点的父节点生成当前各节点的索引,若接收到节点更新请求,则从所述节点更新请求中提取出关键词,并基于关键词和各个节点的描述信息,判断是否对分类树模型进行更新;若判定对分类树模型进行更新,则从分类树模型中选取一个节点作为被选节点并为被选节点添加子节点,生成所述子节点的索引;在接收到用户输入的查询指令后,若判定执行查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以目标节点为根节点的局部分类树模型,从而提高对分类树模型进行查询或更新时的效率。

Description

数据库的查询方法、装置、服务器及介质
技术领域
本发明属于数据处理技术领域,尤其涉及一种数据库的查询方法、装置、服务器及介质。
背景技术
目前,大型机构的管理人员在需要了解相关机构的架构或产品的生产流程信息时,服务器需要根据用户的指令在数据库中查询在相关树形结构中某个目标节点的相关联节点(相关联节点可以是:父节点、子节点或以目标节点为根节点的所有下级节点等),而现有技术都是通过数据库递归查询的方式来实现的。
然而现有的数据库递归查询方式在树形结构的数据量很大的情况下,查询效率较低。此外,当用户需要修改相关树形结构时,修改灵活性和智能化程度也较差。更为重要的是,当树形结构更新后,数据库递归查询可能受到干扰,难度进一步增加,查询效率也可能进一步地减慢。
发明内容
有鉴于此,本发明实施例提供了一种数据库的查询方法、装置、服务器及介质,以解决现有技术在数据库更新时灵活性差以及查询效率低的问题。
本发明实施例的第一方面提供了一种数据库的查询方法,包括:获取当前用于表征数据库中各数据集合关系的分类树模型,并根据当前的所述分类树模型中各节点的父节点,生成当前各节点的索引;若接收到用于增加节点的节点更新请求,则根据所述节点更新请求从所述节点更新请求中提取出关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新;若判定对当前的所述分类树模型进行更新,则从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加子节点,生成所述子节点的索引,以更新所述分类树模型;在接收到用户输入的查询指令后,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
本发明实施例的第二方面提供了一种数据库的查询装置,包括:
获取模块,用于获取当前用于表征数据库中各数据集合关系的分类树模型,并根据当前的所述分类树模型中各节点的父节点,生成当前各节点的索引;判断模块,用于若接收到用于增加节点的节点更新请求,则根据所述节点更新请求从所述节点更新请求中提取出多个关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新;更新模块,用于若判定对当前的所述分类树模型进行更新,则从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加一个子节点,生成所述子节点的索引,以更新所述分类树模型;查询模块,用于在接收到用户输入的查询指令后,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
本发明实施例的第三方面提供了一种服务器,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现本发明实施例的第一方面提供的方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现本发明实施例的第一方面提供的方法的步骤。
在本发明实施例中,通过获取当前用于表征数据库中各数据集合关系的分类树模型,并根据当前各节点的父节点生成当前各节点的索引,以简化后续分类树模型的待分析数据,若接收到节点更新请求,则从所述节点更新请求中提取出关键词,并基于关键词以及所述各个节点的描述信息,判断是否对当前的所述分类树模型进行更新;若判定对当前的分类树模型进行更新,则从分类树模型中选取一个节点作为被选节点,并为被选节点添加子节点,生成所述子节点的索引,以自动快速的更新分类树模型的相关参数;在接收到用户输入的查询指令后,若判定执行查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型,从而在对复杂的分类树模型进行查询或更新时,可以基于各节点的索引进行快速的处理,显著提高相关任务的完成效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据库的查询方法的实现流程图;
图2是本发明实施例提供的分类树模型的示意图;
图3是本发明实施例提供的数据库的查询方法S102的具体实现流程图;
图4是本发明实施例提供的数据库的查询方法S104的具体实现流程图;
图5是本发明实施例提供的数据库的查询装置的结构框图;
图6是本发明实施例提供的服务器的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一
图1示出了本发明实施例提供的数据库的查询方法的实现流程,该方法流程包括步骤S101至S106。各步骤的具体实现原理如下。
在S101中,获取当前用于表征数据库中各数据集合关系的分类树模型,并根据当前的所述分类树模型中各节点的父节点,生成当前各节点的索引。
在本发明实施例中,数据集合可以为一个公司架构中一个组织的相关数据,例如:各个数据集合可以分别为公司架构中的不同部门、分公司、子公司的数据等。值得注意地,由于一个公司的架构从总公司开始会按照一定的分类规则被一层层的分解为多个不同级别的多个组织,所以一个公司的公司架构可以形成一个分类树,每个组织的相关数据所形成的一个数据集合就是该分类树中的一个节点。所以综上,本发明实施例中的分类树模型可以用于表征数据库中各数据集合关系,其中,该分类树模型的根节点表征总公司所对应的数据集合。
值得注意地,在本发明实施例中,分类树模型的各个节点均有其对应的节点ID,节点ID用于唯一确定一个节点。如图2所示,各个节点的节点ID可以用字母表示,如根节点的节点ID为A,第二级节点的节点ID分别为B和C等。显然,为了利于说明以及下文的进一步介绍,图2仅为一个非常简单的分类树模型,本发明实施例在真实工程中处理的分类树模型的节点数量要远远多于图2中的分类树模型中的节点数量。可选地,当节点数量较大时,可以选用多位数字作为不同节点的节点ID。
值得注意地,为了避免在分类树模型的数据量较大的情况下,传统的数据库递归查询方式存在的查询效率低的问题,本发明实施例的第一步就需要生成分类树模型中各节点的索引,并在下文基于各节点的索引进行快速查询。
可选地,生成分类树模型中各节点的索引,包括:从当前的所述分类树模型中选定除根节点以外的节点,将从正被选定的节点的父节点到所述根节点路径上的全部节点的ID,按照从根节点向下层节点的顺序进行组合,作为所述正被选定的节点的索引,以在遍历当前的所述分类树模型中的除根节点以外的全部节点后,生成当前各节点的索引。
示例性地,仍以图2为例,本发明实施例会遍历该分类树模型中除了根节点A以外的每个节点,显然在遍历的过程中会选定一个个的节点。假设当前选定了节点D,那么将从节点D到根节点A路径上的全部节点的ID,按照从根节点向下层节点的顺序进行组合,生成正被选定的节点D的索引。在图2中,节点D的索引为A!B!D。以此类推,可以确定出其他非根节点的节点的索引。
可以理解地,由于生成了各节点的索引,在下文的查询或更新流程中,只需要针对各节点的索引进行数据运算即可,无需在本次查询或更新中都重新递归的分析各节点的连接关系,从而可以提高相关操作的速率。
在S102中,若接收到用于增加节点的节点更新请求,则从所述节点更新请求中提取出关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新。
可以理解地,一个分类树模型在生成之后并不是恒定不变的,可能会出现增、删、改等操作,以改变分类树模型中各节点的连接关系或增加删除节点。用户可以通过节点更新请求向服务器传递增加、删除和修改分类树模型中节点的请求。服务器在解析节点更新请求后,根据用户的相关权限完成增、删、改的操作。在本发明实施例中,考虑到删除和修改节点必须要保证服务器解析的准确性,否则会影响到分类树模型的数据安全和完整性,所以针对删除和修改节点的请求,用户必须要在节点更新请求中写明目标节点的ID以及请求操作的具体步骤,服务器可以根据节点更新请求中包含的具体内容,准确地完成删除和修改节点的操作。但是考虑到增加节点的特殊性,由于增加节点往往对于分类树模型的数据安全和完整性影响较小,为了提高用户操作的便捷性,不至于在每次操作时都完整输入所有信息,所以本发明实施例提供了针对增加节点的节点更新请求的一套更加智能的方法,详述如下:
值得注意地,针对用户希望对当前的分类树模型增加新节点的节点更新请求,本发明实施例提供了一种有别于现有技术的自动判断更新的方法。在本发明实施例中,当用户希望增加一个节点时,需要将希望增加的节点的描述信息以关键词的形式输入进终端设备,终端设备会根据这些关键词生成节点更新请求,并发送至服务器。可选地,关键词可以包括:欲生成的节点的等级、欲生成的节点的特性等等。显然,服务器在接收到一个节点更新请求后,可以解析出其中包含的关键词,从而确定用户希望为分类树模型新增一个什么样的节点,并进一步判断出是否同意为分类树模型增加该节点。
作为本发明的一个实施例,如图3所示,上述S102包括:
S1021,统计所述关键词在各个节点的所述描述信息中的出现次数以各个所述描述信息中的词语总数。
在本发明实施例中,每个节点都有其对应的描述信息,描述信息用于描述该节点的各类特征。显然每个节点的描述信息是由多个词语组成的,通过分词处理可以得到每个节点的描述信息的词语集合(词语集合中可以存在相同的词语,在本发明实施例中并不将它们进行合并),从而统计出更新请求中的关键词在每个描述信息中的出现次数。例如,假设在一个描述信息中,词语“风控”一共出现了5次,那么若关键词也为“风控”,则该关键词在该描述信息中的出现次数为5。同理,在本发明实施例中,描述信息中的词语总数为描述信息的词语集合在未进行相同词语合并的前提下词语的总个数。
S1022,计算所述当前的分类树模型中包含的节点的总数,作为第一节点数量,并统计所对应的描述信息中包含所述关键词的节点的数量,作为第二节点数量。
S1023,通过关联度计算公式计算所述节点更新请求与各个节点的关联度。
可选地,所述关联度计算公式为:其中,所述Yi为节点更新请求与所述分类树模型中的节点i的关联度,所述ni为所述关键词在节点i的所述描述信息中的出现次数,所述ki为节点i的描述信息中的词语总数,所述h为所述第一节点数量,所述b为所述第二节点数量。
可以理解地,在本发明实施例中,可以理解地,关联度并不是简单的关键词在各个描述信息中的概率,而是结合关键词在各个节点的所述描述信息中的出现次数,各个节点的描述信息中的词语总数、当前的分类树模型中包含的节点的总数以及所对应的描述信息中包含所述关键词的节点的数量这4个重要参数,更为准确客观的计算出反应关键词与各个节点的关联程度的参数,即节点更新请求与各个节点的关联度。
S1024,若所述分类树模型中存在至少一个节点与所述更新请求的关联度不小于预设的关联度阈值,则判定不对当前的所述分类树模型进行更新。
值得注意地,显然一个节点与节点更新请求的关联度越高,证明该节点更新请求希望创建的节点就与一个已存在的节点的功能越重合。因此,在本发明实施例中,若当前的分类树模型中存在一个节点与节点更新请求的关联度高于预设阈值,则证明希望创建的节点与一个已存在的节点的功能过于重合,因此判定不进行节点更新,并反馈“已存在相似节点”的通知给用户。
S1025,若所述分类树模型中所有节点与所述更新请求的关联度均小于预设的关联度阈值,则判定对当前的所述分类树模型进行更新。
在这种情况下,证明当前并没有一个已存在的节点与用户希望创建的节点的功能过于重合,因此需要在当前的分类树模型的基础上添加一个新的节点,则对分类树模型进行节点更新。
在本发明实施例中,可以智能化的对节点更新请求进行分析判断,以快速确定是否需要对当前的分类树模型进行更新。
在S103中,若判定对当前的所述分类树模型进行更新,则从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加子节点,生成所述子节点的索引,以更新所述分类树模型。
可选地,在通过公式:计算所述节点更新请求归属于各个节点的归属系数,其中,所述Wi表示所述节点更新请求归属于节点i的归属系数,所述Yi为节点更新请求与节点i的关联度,所述Fi为节点更新请求与节点i的父节点的关联度,所述Bi为节点更新请求与节点i的兄弟节点的关联度的平均值;选取与所述节点更新请求的归属系数最高的节点作为被选节点。
可以理解地,本发明实施例通过比对节点更新请求与相关联的节点(父节点、兄弟节点)的关联度,确定节点更新请求归属于各个节点的归属系数,从而选取出需要添加子节点的被选节点。显然,本发明实施例在被选节点下添加子节点后,即对当前的分类树模型进行了更新。为了便于后续的查询,也会基于S101的方式生成该新添加的子节点的索引。
在S104中,在接收到用户输入的查询指令后,判断是否执行所述查询指令。
查询指令可以为:查找目标节点的所有孩子节点。显然,通过查询目标节点的所有孩子节点,可以找到以目标节点为根节点的分类树模型的一个局部。
如上文所述,由于分类树模型中的节点是有不同层级的,根节点的层级最高,叶子节点的层级最低,中间各层级的节点由根节点至叶子节点依次下降,因此不同层级的节点对应的数据的安全性要求不同,所以对于用户权限的要求也就不同。反过来说,在本发明实施例中,用户权限较低的用户不允许搜索以较高等级的目标节点为根节点的局部分类树模型,不允许调取较高目标节点对应的数据。
因此,本发明实施例中判断是否执行所述查询指令本质上是通过比对发出查询指令的用户的用户权限与查询指令希望查询的目标节点的权限阈值的大小实现的。
作为本发明的一个实施例,如图4所示,上述S104包括:
S1041,从所述查询指令中提取出目标节点以及用户信息。
在本发明实施例中,查询指令至少包括两个参数,一个参数为目标节点,另一个参数为用户信息。
S1042,根据所述目标节点的所述描述信息识别出所述目标节点的权限阈值,并从所述用户信息中提取出用户权限等级。
可选地,方式一:事先为每一个等级的节点赋予一个权限阈值,在这种情况下,一旦从查询指令中解析出目标节点,就可以根据该目标节点在分类树模型中等级,确定出权限阈值。
可选地,方式二:提取所述目标节点对应的所述描述信息作为目标数据,将目标数据根据预设的转换规则转换为目标矩阵后,通过支持向量机算法确定目标矩阵对应的权限阈值,从查询指令中解析出目标节点,若目标节点的权限阈值高于用户权限,则判定不执行所述查询指令。若目标节点的权限阈值不高于用户权限,则判定执行所述查询指令。
具体的通过支持向量机算法确定目标矩阵对应的权限阈值的方法包括:获取每一个权限阈值对应的主成分矩阵,计算所有权限阈值对应的主成分矩阵的平均值,生成平均主成分矩阵,并通过公式:计算各个权限阈值的训练参数,其中,Pi表示权限阈值i的训练参数,Xi表示权限阈值i的主成分矩阵,X’表示平均主成分矩阵,δ表示Xi与X’的协方差矩阵。反复执行:从一个以上的权限阈值中选择一个权限阈值作为被选阈值,将被选阈值对应的训练参数组成正向训练集,将被选阈值以外的权限阈值对应的训练参数组成负向训练集,并根据所述正向训练集以及所述负向训练集,通过现有的SVM算法计算出被选阈值的分类超平面。直至计算出全部权限阈值的分类超平面。计算所述目标矩阵与各个权限阈值的分类超平面的欧式距离,作为各个权限阈值对应的欧式距离,将欧式距离最小的权限阈值作为目标节点对应的权限阈值。
可以理解地,通过支持向量机进行权限阈值的识别相当于预先设定一套权限阈值的设定标准。(即预先设定每一个权限阈值对应的多个主成分矩阵),而不是直接确定一个等级节点的权限阈值。这样可以根据目标数据中各个属性的属性值的不同,客观的确定权限阈值,突出目标数据中部分细微不同,给最终确定的权限阈值的影响,提高权限阈值的精度。
此外,一个分类树模型的节点可能是非常多的,可以达到上千个,这样就很难直接为每一个节点都设置合理的权限阈值,因此,通过方式二,当我们设置好一套标准后,由于每一个节点都必然有一个描述信息,因此我们就可以更加便捷地自动为各个节点设置准确的权限阈值。
S1043,若所述用户权限等级不低于所述权限阈值,则判定执行所述查询指令。
S1044,若所述用户权限等级低于所述权限阈值,则判定不执行所述查询指令。
可以理解地,本发明实施例可以确保数据查询的安全性
在S105中,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
可选地,查询出所有包含所述目标节点的ID的索引,作为目标索引;将各个所述目标索引中在所述目标节点的ID之前的ID删除,得到一个以上的局部索引数据;拼合各条所述局部索引数据,得到用于表征所述局部分类树模型的局部索引数据集合;根据所述局部索引数据集合,绘制并输出所述局部分类树模型。
在S106中,若判定不执行所述查询指令,则通过struct2***对所述查询指令进行拦截,并将所述用户信息以及所述查询指令的对应关系存入历史拦截记录。
可以理解地,在本发明实施例中,通过获取分类树模型并根据当前各节点的父节点生成当前各节点的索引,若接收到节点更新请求,则从所述节点更新请求中提取出关键词,并基于关键词和各个节点的描述信息,判断是否对分类树模型进行更新;若判定对分类树模型进行更新,则从分类树模型中选取一个节点作为被选节点并为被选节点添加子节点,生成所述子节点的索引;在接收到用户输入的查询指令后,若判定执行查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以目标节点为根节点的局部分类树模型,从而提高对分类树模型进行查询或更新时的效率。
对应于上文实施例所述的数据库的查询方法,图5示出了本发明实施例提供的数据库的查询装置的结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。
参照图5,该装置包括:
获取模块501,用于获取当前用于表征数据库中各数据集合关系的分类树模型,生成分类树模型中各节点的索引;
判断模块502,用于若接收到用于增加节点的节点更新请求,则从所述节点更新请求中提取出多个关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新;
更新模块503,用于若判定对当前的所述分类树模型进行更新,则根据所述节点更新请求从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加一个子节点,生成所述子节点的索引,以更新所述分类树模型;
查询模块504,用于在接收到用户输入的查询指令后,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
可选地,所述生成分类树模型中各节点的索引,包括:从当前的所述分类树模型中逐一选定除根节点以外的节点,将被选定的节点到所述根节点路径上的全部节点的ID,按照从根节点向下层节点的顺序进行组合,作为所述被选定的节点的索引,以在遍历当前的所述分类树模型中的除根节点以外的全部节点后,生成当前各节点的索引。
可选地,所述基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新,包括:
统计所述关键词在各个节点的所述描述信息中的出现次数以各个所述描述信息中的词语总数;计算所述当前的分类树模型中包含的节点的总数,作为第一节点数量,并统计所对应的描述信息中包含所述关键词的节点的数量,作为第二节点数量;通过公式:计算所述节点更新请求与各个节点的关联度,所述Yi为节点更新请求与所述分类树模型中的节点i的关联度,所述ni为所述关键词在节点i的所述描述信息中的出现次数,所述ki为节点i的描述信息中的词语总数,所述h为所述第一节点数量,所述b为所述第二节点数量;若所述分类树模型中存在至少一个节点与所述更新请求的关联度不小于预设的关联度阈值,则判定不对当前的所述分类树模型进行更新;若所述分类树模型中所有节点与所述更新请求的关联度均小于预设的关联度阈值,则判定对当前的所述分类树模型进行更新。
可选地,所述从所述分类树模型中选取一个节点作为被选节点,包括:通过公式:计算所述节点更新请求归属于各个节点的归属系数,其中,所述Wi表示所述节点更新请求归属于节点i的归属系数,所述Yi为节点更新请求与节点i的关联度,所述Fi为节点更新请求与节点i的父节点的关联度,所述Bi为节点更新请求与节点i的兄弟节点的关联度的平均值;选取与所述节点更新请求的归属系数最高的节点作为被选节点。
可选地,在所述接收到用户输入的查询指令后,还包括:从所述查询指令中提取出目标节点以及用户信息;根据所述目标节点的所述描述信息识别出所述目标节点的权限阈值,并从所述用户信息中提取出用户权限等级;若所述用户权限等级不低于所述权限阈值,则判定执行所述查询指令;若所述用户权限等级低于所述权限阈值,则判定不执行所述查询指令。
可选地,若判定不执行所述查询指令,则通过struct2***对所述查询指令进行拦截,并将所述用户信息以及所述查询指令的对应关系存入历史拦截记录。
可选地,所述通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型,包括:查询出所有包含所述目标节点的ID的索引,作为目标索引;将各个所述目标索引中在所述目标节点的ID之前的ID删除,得到一个以上的局部索引数据;拼合各条所述局部索引数据,得到用于表征所述局部分类树模型的局部索引数据集合;根据所述局部索引数据集合,绘制并输出所述局部分类树模型。
可以理解地,本发明实施例通过获取分类树模型并根据当前各节点的父节点生成当前各节点的索引,若接收到节点更新请求,则从所述节点更新请求中提取出关键词,并基于关键词和各个节点的描述信息,判断是否对分类树模型进行更新;若判定对分类树模型进行更新,则从分类树模型中选取一个节点作为被选节点并为被选节点添加子节点,生成所述子节点的索引;在接收到用户输入的查询指令后,若判定执行查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以目标节点为根节点的局部分类树模型,从而提高对分类树模型进行查询或更新时的效率。
图6是本发明一实施例提供的服务器的示意图。如图6所示,该实施例的服务器6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62,例如数据库的查询程序。所述处理器60执行所述计算机程序62时实现上述各个数据库的查询方法实施例中的步骤,例如图1所示的步骤101至106。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图5所示单元501至504的功能。
示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述服务器6中的执行过程。
所述服务器6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述服务器可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是服务器6的示例,并不构成对服务器6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述服务器还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述服务器6的内部存储单元,例如服务器6的硬盘或内存。所述存储器61也可以是所述服务器6的外部存储设备,例如所述服务器6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述服务器6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述服务器所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部的或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部的单元来实现本实施例方案的目的。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部的或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据库的查询方法,其特征在于,包括:
获取当前用于表征数据库中各数据集合关系的分类树模型,生成分类树模型中各节点的索引;
若接收到用于增加节点的节点更新请求,则从所述节点更新请求中提取出关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新;
若判定对当前的所述分类树模型进行更新,则根据所述节点更新请求从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加子节点,生成所述子节点的索引,以更新所述分类树模型;
在接收到用户输入的查询指令后,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
2.如权利要求1所述的数据库的查询方法,其特征在于,所述生成分类树模型中各节点的索引,包括:
从当前的所述分类树模型中逐一选定除根节点以外的节点,将被选定的节点到所述根节点路径上的全部节点的ID,按照从根节点向下层节点的顺序进行组合,作为所述被选定的节点的索引,以在遍历当前的所述分类树模型中的除根节点以外的全部节点后,生成当前各节点的索引。
3.如权利要求1所述的数据库的查询方法,其特征在于,所述基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新,包括:
统计所述关键词在各个节点的所述描述信息中的出现次数以各个所述描述信息中的词语总数;
计算所述当前的分类树模型中包含的节点的总数,作为第一节点数量,并统计所对应的描述信息中包含所述关键词的节点的数量,作为第二节点数量;
通过公式:计算所述节点更新请求与各个节点的关联度,所述Yi为节点更新请求与所述分类树模型中的节点i的关联度,所述ni为所述关键词在节点i的所述描述信息中的出现次数,所述ki为节点i的描述信息中的词语总数,所述h为所述第一节点数量,所述b为所述第二节点数量;
若所述分类树模型中存在至少一个节点与所述更新请求的关联度不小于预设的关联度阈值,则判定不对当前的所述分类树模型进行更新;
若所述分类树模型中所有节点与所述更新请求的关联度均小于预设的关联度阈值,则判定对当前的所述分类树模型进行更新。
4.如权利要求3所述的数据库的查询方法,其特征在于,所述根据所述节点更新请求从所述分类树模型中选取一个节点作为被选节点,包括:
通过公式:计算所述节点更新请求归属于各个节点的归属系数,其中,所述Wi表示所述节点更新请求归属于节点i的归属系数,所述Yi为节点更新请求与节点i的关联度,所述Fi为节点更新请求与节点i的父节点的关联度,所述Bi为节点更新请求与节点i的兄弟节点的关联度的平均值;
选取与所述节点更新请求的归属系数最高的节点作为被选节点。
5.如权利要求1所述的数据库的查询方法,其特征在于,在所述接收到用户输入的查询指令后,还包括:
从所述查询指令中提取出目标节点以及用户信息;
根据所述目标节点的所述描述信息识别出所述目标节点的权限阈值,并从所述用户信息中提取出用户权限等级;
若所述用户权限等级不低于所述权限阈值,则判定执行所述查询指令;
若所述用户权限等级低于所述权限阈值,则判定不执行所述查询指令。
6.如权利要求5所述的数据库的查询方法,其特征在于,若判定不执行所述查询指令,则通过struct2***对所述查询指令进行拦截,并将所述用户信息以及所述查询指令的对应关系存入历史拦截记录。
7.如权利要求1所述的数据库的查询方法,其特征在于,所述通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型,包括:
查询出所有包含所述目标节点的ID的索引,作为目标索引;
将各个所述目标索引中在所述目标节点的ID之前的ID删除,得到一个以上的局部索引数据;
拼合各条所述局部索引数据,得到用于表征所述局部分类树模型的局部索引数据集合;
根据所述局部索引数据集合,绘制并输出所述局部分类树模型。
8.一种数据库的查询装置,其特征在于,所述装置包括:
获取模块,用于获取当前用于表征数据库中各数据集合关系的分类树模型,生成分类树模型中各节点的索引;
判断模块,用于若接收到用于增加节点的节点更新请求,则根据所述节点更新请求从所述节点更新请求中提取出多个关键词,调取当前的所述分类树模型中各节点的描述信息,并基于所述关键词以及所述描述信息,判断是否对当前的所述分类树模型进行更新;
更新模块,用于若判定对当前的所述分类树模型进行更新,则从所述分类树模型中选取一个节点作为被选节点,并为所述被选节点添加一个子节点,生成所述子节点的索引,以更新所述分类树模型;
查询模块,用于在接收到用户输入的查询指令后,若判定执行所述查询指令,则从所述查询指令中提取目标节点,并通过更新后的所述分类树模型中各节点的索引,查询并输出以所述目标节点为根节点的局部分类树模型。
9.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
CN201910594593.1A 2019-07-03 2019-07-03 数据库的查询方法、装置、服务器及介质 Active CN110471916B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910594593.1A CN110471916B (zh) 2019-07-03 2019-07-03 数据库的查询方法、装置、服务器及介质
PCT/CN2020/092811 WO2021000671A1 (zh) 2019-07-03 2020-05-28 数据库的查询方法、装置、服务器及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910594593.1A CN110471916B (zh) 2019-07-03 2019-07-03 数据库的查询方法、装置、服务器及介质

Publications (2)

Publication Number Publication Date
CN110471916A true CN110471916A (zh) 2019-11-19
CN110471916B CN110471916B (zh) 2023-05-26

Family

ID=68507411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910594593.1A Active CN110471916B (zh) 2019-07-03 2019-07-03 数据库的查询方法、装置、服务器及介质

Country Status (2)

Country Link
CN (1) CN110471916B (zh)
WO (1) WO2021000671A1 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990864A (zh) * 2019-11-27 2020-04-10 支付宝(杭州)信息技术有限公司 一种报表权限管理方法、装置及设备
CN111144578A (zh) * 2019-12-27 2020-05-12 创新奇智(重庆)科技有限公司 一种分布式环境下的人工智能模型管理***及管理方法
CN111309371A (zh) * 2020-01-14 2020-06-19 网易(杭州)网络有限公司 一种查询方法和装置
CN111488341A (zh) * 2020-03-27 2020-08-04 北京金山云网络技术有限公司 数据库索引的管理方法、装置及电子设备
CN112035659A (zh) * 2020-08-12 2020-12-04 北京字节跳动网络技术有限公司 数据处理方法及装置
WO2021000671A1 (zh) * 2019-07-03 2021-01-07 平安科技(深圳)有限公司 数据库的查询方法、装置、服务器及介质
CN112559530A (zh) * 2020-12-22 2021-03-26 京东数字科技控股股份有限公司 资产数据统计方法、装置、设备及计算机可读介质
CN112948385A (zh) * 2021-03-02 2021-06-11 深圳大学 序列数据分布的显示方法、装置、存储介质及终端设备
CN113505142A (zh) * 2021-07-08 2021-10-15 中电金信软件有限公司 数据查询方法、装置及服务器
CN113515517A (zh) * 2020-04-09 2021-10-19 深圳市华胜软件技术有限公司 一种基于树形结构数据查询数据集的方法和计算机设备
CN114491172A (zh) * 2022-04-07 2022-05-13 深圳竹云科技股份有限公司 树形结构节点的快速检索方法、装置、设备及存储介质
CN114710562A (zh) * 2022-03-31 2022-07-05 珠海市鸿瑞信息技术股份有限公司 基于大数据的设备应用日志关联分析***及方法
CN114996291A (zh) * 2022-08-05 2022-09-02 中汽信息科技(天津)有限公司 一种自适应优先级的多级数据更新方法
CN116257657A (zh) * 2022-12-30 2023-06-13 北京瑞莱智慧科技有限公司 数据处理方法、数据查询方法、相关装置及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535677B (zh) * 2021-06-29 2024-04-02 平安国际融资租赁有限公司 数据分析查询管理方法、装置、计算机设备及存储介质
CN117290893B (zh) * 2023-09-25 2024-06-11 北京万里开源软件有限公司 一种基于数据标签的数据库访问方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119257A1 (en) * 2007-11-02 2009-05-07 Christopher Waters Method and apparatus for searching a hierarchical database and an unstructured database with a single search query
CN101706808A (zh) * 2009-11-17 2010-05-12 中国科学院软件研究所 基于索引树的海量数据库访问控制方法
US20140012882A1 (en) * 2012-07-04 2014-01-09 Software Ag Method of processing relational queries in a database system and corresponding database system
CN106649464A (zh) * 2016-09-26 2017-05-10 深圳市数字城市工程研究中心 一种中文地址树的构建方法及装置
CN107807932A (zh) * 2016-09-08 2018-03-16 腾讯科技(深圳)有限公司 一种基于路径枚举的层级数据管理方法和***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7403941B2 (en) * 2004-04-23 2008-07-22 Novauris Technologies Ltd. System, method and technique for searching structured databases
CN110471916B (zh) * 2019-07-03 2023-05-26 平安科技(深圳)有限公司 数据库的查询方法、装置、服务器及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119257A1 (en) * 2007-11-02 2009-05-07 Christopher Waters Method and apparatus for searching a hierarchical database and an unstructured database with a single search query
CN101706808A (zh) * 2009-11-17 2010-05-12 中国科学院软件研究所 基于索引树的海量数据库访问控制方法
US20140012882A1 (en) * 2012-07-04 2014-01-09 Software Ag Method of processing relational queries in a database system and corresponding database system
CN107807932A (zh) * 2016-09-08 2018-03-16 腾讯科技(深圳)有限公司 一种基于路径枚举的层级数据管理方法和***
CN106649464A (zh) * 2016-09-26 2017-05-10 深圳市数字城市工程研究中心 一种中文地址树的构建方法及装置

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021000671A1 (zh) * 2019-07-03 2021-01-07 平安科技(深圳)有限公司 数据库的查询方法、装置、服务器及介质
CN110990864A (zh) * 2019-11-27 2020-04-10 支付宝(杭州)信息技术有限公司 一种报表权限管理方法、装置及设备
CN111144578A (zh) * 2019-12-27 2020-05-12 创新奇智(重庆)科技有限公司 一种分布式环境下的人工智能模型管理***及管理方法
CN111309371A (zh) * 2020-01-14 2020-06-19 网易(杭州)网络有限公司 一种查询方法和装置
CN111488341A (zh) * 2020-03-27 2020-08-04 北京金山云网络技术有限公司 数据库索引的管理方法、装置及电子设备
CN111488341B (zh) * 2020-03-27 2023-08-22 北京金山云网络技术有限公司 数据库索引的管理方法、装置及电子设备
CN113515517B (zh) * 2020-04-09 2024-06-04 深圳市华胜软件技术有限公司 一种基于树形结构数据查询数据集的方法和计算机设备
CN113515517A (zh) * 2020-04-09 2021-10-19 深圳市华胜软件技术有限公司 一种基于树形结构数据查询数据集的方法和计算机设备
CN112035659A (zh) * 2020-08-12 2020-12-04 北京字节跳动网络技术有限公司 数据处理方法及装置
CN112559530A (zh) * 2020-12-22 2021-03-26 京东数字科技控股股份有限公司 资产数据统计方法、装置、设备及计算机可读介质
CN112948385A (zh) * 2021-03-02 2021-06-11 深圳大学 序列数据分布的显示方法、装置、存储介质及终端设备
CN112948385B (zh) * 2021-03-02 2024-02-13 深圳大学 序列数据分布的显示方法、装置、存储介质及终端设备
CN113505142A (zh) * 2021-07-08 2021-10-15 中电金信软件有限公司 数据查询方法、装置及服务器
CN113505142B (zh) * 2021-07-08 2022-06-24 中电金信软件有限公司 数据查询方法、装置及服务器
CN114710562A (zh) * 2022-03-31 2022-07-05 珠海市鸿瑞信息技术股份有限公司 基于大数据的设备应用日志关联分析***及方法
CN114710562B (zh) * 2022-03-31 2022-11-08 珠海市鸿瑞信息技术股份有限公司 基于大数据的设备应用日志关联分析***及方法
CN114491172A (zh) * 2022-04-07 2022-05-13 深圳竹云科技股份有限公司 树形结构节点的快速检索方法、装置、设备及存储介质
CN114996291A (zh) * 2022-08-05 2022-09-02 中汽信息科技(天津)有限公司 一种自适应优先级的多级数据更新方法
CN116257657B (zh) * 2022-12-30 2024-02-06 北京瑞莱智慧科技有限公司 数据处理方法、数据查询方法、相关装置及存储介质
CN116257657A (zh) * 2022-12-30 2023-06-13 北京瑞莱智慧科技有限公司 数据处理方法、数据查询方法、相关装置及存储介质

Also Published As

Publication number Publication date
WO2021000671A1 (zh) 2021-01-07
CN110471916B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN110471916A (zh) 数据库的查询方法、装置、服务器及介质
US9928113B2 (en) Intelligent compiler for parallel graph processing
CN109559231B (zh) 一种面向区块链的追溯查询方法
CN107832456B (zh) 一种基于临界值数据划分的并行knn文本分类方法
CN110019287B (zh) 执行结构化查询语言sql指令的方法和装置
CN111627552B (zh) 一种医疗流式数据血缘关系分析、存储方法及装置
Yun et al. Fastraq: A fast approach to range-aggregate queries in big data environments
CN110909111A (zh) 基于知识图谱rdf数据特征的分布式存储与索引方法
CN111125199B (zh) 一种数据库访问方法、装置及电子设备
CN109885651A (zh) 一种问题推送方法和装置
CN110413927B (zh) 在发布订阅***中基于匹配实时性的优化方法及***
Zhao Design and Implementation of an Improved K‐Means Clustering Algorithm
CN105378724B (zh) 一种数据查询方法、装置及***
Thenmozhi et al. An ontological approach to handle multidimensional schema evolution for data warehouse
CN111309753A (zh) 结构化查询语句的优化方法、装置、设备及存储介质
Volk et al. Clustering uncertain data with possible worlds
CN105447616A (zh) 基于多维分类和全文检索的知识管理***
Zouaghi et al. Query optimization for large scale clustered RDF data.
CN116305720A (zh) 一种基于约束的多维管理数据挖掘方法
CN108268620A (zh) 一种基于hadoop数据挖掘的文档分类方法
Zheng et al. User preference-based data partitioning top-k skyline query processing algorithm
Zhu et al. Gace: Graph-attention-network-based cardinality estimator
El Moukhi et al. Data warehouse state of the art and future challenges
HajKacem et al. An accelerated mapreduce-based k-prototypes for big data
Zhang et al. Self‐Adaptive K‐Means Based on a Covering Algorithm

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