CN116975367A - 一种数据关系的处理方法、装置、电子设备及存储介质 - Google Patents

一种数据关系的处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN116975367A
CN116975367A CN202210430236.3A CN202210430236A CN116975367A CN 116975367 A CN116975367 A CN 116975367A CN 202210430236 A CN202210430236 A CN 202210430236A CN 116975367 A CN116975367 A CN 116975367A
Authority
CN
China
Prior art keywords
data
discussion
discussion data
level
target
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
Application number
CN202210430236.3A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210430236.3A priority Critical patent/CN116975367A/zh
Publication of CN116975367A publication Critical patent/CN116975367A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification

Landscapes

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

Abstract

本申请涉及数据处理技术领域,尤其涉及一种数据关系的处理方法、装置、电子设备及存储介质,该方法为:获得目标内容关联的讨论数据,确定讨论数据对于目标内容的数据层级,再根据讨论数据的数据层级,在预设的指针图谱中创建讨论数据对应的数据节点,以及在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素,然后,基于指针图谱和目标索引表,表征目标内容对应的数据关系。这样,指针图谱和目标索引表的联合作用,为联动处理存在关联的讨论数据带来了便利,根据指针图谱中示意的指针指向、以及目标索引表中包括的表元素内容,能够快速找到需要联动调整和需要查找的目标内容,这将极大地降低搜索和遍历的时间成本。

Description

一种数据关系的处理方法、装置、电子设备及存储介质
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据关系的处理方法、装置、电子设备及存储介质。
背景技术
随着信息技术的发展,人们可以发起对于同一多媒体内容的讨论,因此,如何有效管理各个对象针对多媒体内容的讨论数据,成为亟待解决的问题,其中,所述讨论数据中可能包括直接对多媒体内容产生的评论数据,以及在对评论数据进行回复时,间接对所述多媒体内容产生的回复数据。
相关技术下,为了处理数据之间的数据关系,通常建立有不限层级的树形结构,以呈现多媒内容关联的各个讨论数据。
然而,对于不限层级的树形结构而言,不限层级的嵌套结构将会导致数据深度的不可控,在根据目标对象的查看需要进行数据拉取和统计时,将极大的增加搜索和遍历的时间成本,降低了数据的查询效率。
另外,在进行数据的删除操作时,只针对当前被删除的数据自身进行操作,使得虽然针对被删除数据进行回复的各个数据无法被显示,但保存的数据关系依然包含在数据统计结果中,误导了目标对象的正常浏览,因而无法实现对数据的有效管理。
发明内容
本申请实施例提供一种数据关系的处理方法、装置、电子设备及存储介质,以解决现有技术下无法基于分析确定的数据关系,实现对讨论数据高效准确处理的问题。
第一方面,提出一种数据关系的处理方法,包括:
获得目标内容关联的讨论数据,确定所述讨论数据对于所述目标内容的数据层级,其中,所述数据层级用于表征讨论数据之间的嵌套回复关系;
根据所述讨论数据的数据层级,在预设的指针图谱中创建所述讨论数据对应的数据节点,以及在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,所述目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;
基于所述指针图谱和所述目标索引表,表征所述目标内容对应的数据关系。
第二方面,提出一种数据关系的处理方法,包括:
接收针对目标内容关联的目标讨论数据的删除指示后,在所述目标内容关联的索引表中,删除所述目标讨论数据对应的目标表元素;
根据所述目标内容关联的树形结构图,确定所述目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,其中,所述数据层级表征讨论数据之间的嵌套回复关系。
第三方面,提出一种数据关系的处理装置,包括:
获得单元,用于获得目标内容关联的讨论数据,确定所述讨论数据对于所述目标内容的数据层级,其中,所述数据层级用于表征讨论数据之间的嵌套回复关系;
创建单元,用于根据所述讨论数据的数据层级,在预设的指针图谱中创建所述讨论数据对应的数据节点,以及在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,所述目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;
表征单元,用于基于所述指针图谱和所述目标索引表,表征所述目标内容对应的数据关系。
可选的,所述在预设的指针图谱中创建所述讨论数据对应的数据节点时,所述创建单元用于:
在预设的指针图谱中建立所述讨论数据对应的数据节点;
根据设置的指针指向关系,确定与所述讨论数据之间存在所述指针指向关系的其他讨论数据,并在所述指针图谱中创建相应的数据节点之间的指针,其中,所述指针指向关系用于表征不同数据层级的讨论数据之间的回复关系。
可选的,创建相应的数据节点之间的指针时,所述创建单元用于:指向溯源的一级讨论数据的根评论指针、指向回复的父级讨论数据的直接回复指针、以及指向溯源的二级讨论数据的根回复指针;其中,所述一级讨论数据为直接对目标内容进行回复的历史讨论数据,所述二级讨论数据为针对所述一级讨论数据进行回复的历史讨论数据,所述父级讨论数据为进行针对性回复的历史讨论数据。
可选的,在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素时,所述创建单元用于:
根据预先定义的、每个子表中表元素对应的数据层级范围,确定所述讨论数据的数据层级对应的统计子表和聚类子表;
将所述讨论数据的标识信息,作为所述统计子表中的末端表元素,增加在所述统计子表中,并根据所述讨论数据与归属于相同父级讨论数据的其他讨论数据之间的时序关系,在相应的聚类子表中新增对应的表元素。
可选的,根据预先定义的、每个子表中表元素对应的数据层级范围,确定所述讨论数据的数据层级对应的统计子表和聚类子表之前,所述创建单元还用于:
预先针对所述目标内容关联的指定数据层级的讨论数据,定义对应的指定层级聚类子表;
预先针对所述目标内容关联的讨论数据,定义对应的总量统计子表,以及针对所述目标内容关联的、指定数据层级的讨论数据,定义对应的指定层级统计子表。
可选的,接收到针对所述目标内容关联的各个历史讨论数据的呈现请求时,所述装置还包括处理单元,所述处理单元用于:
获取目标内容关联的索引表,并根据所述索引表,确定所述目标内容关联的、各数据层级下的表元素,以及确定归属于指定层级的历史讨论数据总数,其中,所述索引表是基于各个讨论数据之间的回复关系创建的;
分别获取所述各数据层级下表元素对应的历史讨论数据内容,并根据预设的数据展示形式,展示各数据层级下的历史讨论数据内容和历史讨论数据总数。
可选的,确定所述讨论数据对于所述目标内容的数据层级时,所述获得单元用于:
根据所述讨论数据与获取的历史讨论数据之间的回复关系,溯源确定所述讨论数据相对所述目标内容的嵌套回复总层数;
若确定所述嵌套回复总层数高于设定的回复层数阈值,则基于所述回复层数阈值确定所述讨论数据对于所述目标内容的数据层级;
若确定所述嵌套回复总层数不高于所述回复层数阈值,则基于所述嵌套回复总层数确定所述讨论数据对于所述目标内容的数据层级。
可选的,接收到针对目标讨论数据的删除指示后,所述装置中的处理单元还用于:
获取针对所述目标内容关联的各个历史讨论数据创建的索引表,并获取根据所述指针图谱建立的、所述目标内容关联的树形结构图;
在所述索引表中,删除所目标讨论数据对应的目标表元素,以及在所述树形结构图中删除所述目标讨论数据对应的树节点;
根据所述指针图谱,确定所述目标讨论数据下级的联动讨论数据,并在所述索引表中,删除每个联动讨论数据对应的联动表元素,以及在所述树形结构中删除每个联动讨论数据对应的联动树节点。
可选的,所述在所述索引表中,删除每个联动讨论数据对应的联动表元素时,所述处理单元用于:
根据所述目标内容关联的、指定层级的历史讨论数据,将所述索引表进行分页存储,其中,每页的存储内容包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除所述存储内容中包括的、联动讨论数据对应的联动表元素。
可选的,所述删除所述存储内容中包括的、联动讨论数据对应的联动表元素时,所述处理单元用于:
根据所述指针图谱,确定所述目标讨论数据关联的、数据层级高于所述目标讨论数据的目标联动讨论数据,其中,数据层级越高表征对应的讨论数据相对于目标内容的嵌套回复层数越多;
按照数据层级由高到低的顺序,在所述存储内容中,依次删除每个目标联动讨论数据对应的联动表元素。
可选的,所述在所述树形结构图中删除每个联动讨论数据对应的联动树节点时,所述处理单元用于:
针对每页的存储内容,分别执行以下操作:
确定所述存储内容中包括的目标联动讨论数据;
按照对应的深度值由高到低的顺序,在所述树形结构图中,依次删除每个深度值下与目标联动讨论数据对应的联动树节点,其中,树节点的深度值与对应的讨论数据的数据层级对应相同。
第四方面,提出一种数据关系的处理装置,包括:
接收单元,用于接收针对目标内容关联的目标讨论数据的删除指示后,在所述目标内容关联的索引表中,删除所述目标讨论数据对应的目标表元素;
删除单元,用于根据所述目标内容关联的树形结构图,确定所述目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,其中,所述数据层级表征讨论数据之间的嵌套回复关系。
可选的,针对所述目标内容关联的讨论数据设置有三个数据层级,所述索引表中包括溯源至相同一级讨论数据的其他级讨论数据统计子表、溯源至相同一级讨论数据的二级讨论数据聚类子表、溯源至相同二级讨论数据的三级讨论数据聚类子表、一级讨论数据聚类子表、以及所述目标内容关联的讨论数据统计子表。
可选的,所述目标讨论数据为一级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容时,所述删除单元用于:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点后,删除归属于二级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
可选的,所述删除归属于三级讨论数据的联动表元素时,所述删除单元用于:
遍历所述目标讨论数据对应的二级讨论数据聚类子表,确定所述目标讨论数据下级的二级讨论数据,以及遍历每个二级讨论数据对应的三级讨论数据聚类子表,确定溯源至所述目标讨论数据的三级讨论数据;
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的三级讨论数据聚类子表中,删除所述三级讨论数据对应的联动表元素。
可选的,所述删除归属于二级讨论数据的联动表元素时,所述删除单元用于:
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的二级讨论数据聚类子表中,删除与所述目标讨论数据下级的二级讨论数据对应的联动表元素。
可选的,所述目标讨论数据为二级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容时,所述删除单元用于:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
可选的,所述删除归属于三级讨论数据的联动表元素时,所述删除单元用于:
确定所述目标讨论数据下级的三级讨论数据,并分别在包含所述目标讨论数据的其他级讨论数据聚类子表、以及所述讨论数据统计子表中,删除所述三级讨论数据对应的联动表元素。
第五方面,提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面和第二方面中任一项所述的数据关系的处理方法。
第六方面,提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面和第二方面中任一项所述的数据关系的处理方法。
第七方面,提出一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述第一方面和第二方面中任一项所述的数据关系的处理方法。
本申请有益效果如下:
本申请实施例中,提出了一种数据关系的处理方法、装置、电子设备及存储介质,首先,获得目标内容关联的讨论数据,确定讨论数据对于目标内容的数据层级,其中,数据层级用于表征讨论数据之间的嵌套回复关系;然后,根据讨论数据的数据层级,在预设的指针图谱中创建讨论数据对应的数据节点,以及在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;再基于指针图谱和目标索引表,表征目标内容对应的数据关系。
这样,借助于构建的指针图谱,能够在建立讨论数据之间指向关系的同时,表征出不同数据层级的讨论数据之间的嵌套回复关系,使得能够提取不同数据层级的讨论数据之间的相互回复情况,并能够指示讨论数据之间被发布的先后关系和归属关系。另外,借助于目标索引表中包括的统计子表和聚类子表,能够实现对指定类型的讨论数据的计数统计、以及对指定类型讨论数据的索引聚类,因而能够有效地实现对各类讨论数据的数量统计,并能够有效确定各类讨论数据对应的聚类内容,不仅为针对指定层级的讨论数据进行细化分析提供了处理依据,还为针对各类讨论数据进行的有效数目统计提供了处理依据。再者,指针图谱和目标索引表的联合作用,为联动处理存在关联的讨论数据带来了便利,根据指针图谱中示意的指针指向、以及目标索引表中包括的表元素内容,能够快速找到需要联动调整和需要查找的目标内容,这将极大地降低搜索和遍历的时间成本,提高数据的查询效率。
附图说明
图1a为本申请实施例中讨论数据的存储结构示意图;
图1b为本申请实施例中不限层级的树形结构示意图;
图2为本申请实施例中可能的一种应用场景示意图;
图3a为本申请实施例中数据关系的处理流程示意图;
图3b为本申请实施例中溯源确定嵌套回复总层数的逻辑示意图;
图3c所示,其为本申请实施例中确定数据层级的方式示意图;
图3d为本申请实施中在指针图谱中新增数据节点和指针的过程示意图;
图3e为本申请实施例中更新指针图谱和构建索引表的过程示意图;
图4a为本申请实施例中数据关系的删除过程示意图;
图4b为本申请实施例中进行同步删除操作后索引表中的内容示意图;
图4c为本申请实施例中分页的存储内容示意图;
图4d为本实施例中删除第一页联动讨论数据的过程示意图;
图4e为本申请实施例中树形结构图的剪枝过程示意图;
图4f为本申请实施例中删除第二页联动讨论数据的过程示意图;
图4g为本申请实施例中删除二级讨论数据的过程示意图;
图5a为本申请实施例中一种历史讨论数据的展示示意图;
图5b为本申请实施例中一种历史讨论数据的展示示意图;
图6为本申请实施例中一种数据关系的处理装置的逻辑结构示意图;
图7为本申请实施例中一种数据关系的处理装置的逻辑结构示意图;
图8为应用本申请实施例的一种电子设备的一个硬件组成结构示意图;
图9为应用本申请实施例中的另一种电子设备的硬件组成结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够在除了这里图示或描述的那些以外的顺序实施。
以下对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
目标内容:是指发表在公共平台中,能够被浏览和评论的多媒体内容,目标内容的存在形式包括但不限于文章、歌曲、长视频、短视频等。
讨论数据:是指针对相同目标内容发布的带有浏览对象主观观点的内容,本申请实施例中,讨论数据可能有多种存在形式,包括但不限于文本、语音,以及视频;讨论数据按照相对于目标内容的嵌套回复关系,可以分为直接针对目标内容进行评论的讨论数据和间接对目标内容进行回复的讨论数据,其中,间接进行对目标内容进行回复的讨论数据是指:针对目标内容关联的讨论数据进行回复的其他讨论数据。
父级讨论数据:是存在于两个讨论数据之间的概念,在一个讨论数据针对另一个讨论数据进行回复的情况下,被回复的一个讨论数据称为另一个讨论数据的父级讨论数据。
数据层级,用于分析存在关联关系的各个讨论数据之间回复关系,即,通过对各个讨论数据进行分级,从而表征出讨论数据之间的嵌套回复关系,其中,数据层级越高,则表征对应的讨论数据相对于目标内容嵌套的回复层数越多。本申请实施例中,被划分为相同数据层级的讨论数据将采用相同的呈现方式进行呈现。例如,当以数字排序表征数据层级时,可以将直接对目标数据进行评论的讨论数据作为零级讨论数据,并将对零级讨论数据进行回复的讨论数据称为一级讨论数据,以及将针对一级讨论数据进行回复的讨论数据称为二级讨论数据,并以此类推,其中,零级讨论数据被称为一级讨论数据和二级讨论数据的上级讨论数据。
嵌套回复关系:用于表征各个讨论数据之间的回复与被回复关系,本申请实施例中,称讨论数据与其对应的父级讨论数据之间存在嵌套回复,并同理类推至目标内容关联的各个讨论数据之间,将上级讨论数据与下级讨论数据之间的逐层回复关系,称为存在嵌套回复关系;例如,假设讨论数据A为直接对目标内容进行评论的讨论数据,讨论数据B为针对讨论数据A进行回复的讨论数据,讨论数据C为针对讨论数据B进行回复的讨论数据,那么,讨论数据A、讨论数据B、以及讨论数据C之间存在嵌套回复关系,且讨论数据A为讨论数据B的父级讨论数据,讨论数据B为讨论数据C的父级讨论数据;讨论数据A为相对于讨论数据B和C的上级讨轮数据,讨论数据B和C为相对于讨论数据A的下级讨论数据。
索引表:是指由具有相同属性或类似的表元素组成的集合,本申请实施例中,索引表中包括的各个表元素为讨论数据的标识信息(Indentity,ID)。索引表中放置有满足一定条件的数据ID,例如,对于名称为价格小于50元的商品索引表而言,索引表内存储有符合该条件的商品ID。需要说明的是,根据实际的处理需要,通常索引表中并不存储实际的数据内容,而是在实际需要获取数据内容时,通过数据ID获取对应的数据具体内容。
指针图谱:本申请实施例中,指针图谱中包括有数据节点和指针,其中,一个数据节点对应一个讨论数据,每个数据节点关联有指向其他数据节点的指针,其中,每个数据节点指向其他数据节点的指针个数根据实际处理需要设备。例如,每个数据节点设置有三个指针,分别指向溯源确定的直接对目标内容进行评论的讨论数据、指向溯源确定的父级讨论数据和一级讨论数据,其中,一级讨论数据为:对目标内容直接进行评论的讨论数据。需要说明的是,本申请实施例中,指针图谱中可能包括有针对不同目标内容关联的讨论数据构建的数据节点及指针关系,且指针图谱中的内容在讨论数据被删除时不会被删除,因而可以指示讨论数据间的数据关系。
历史讨论数据,相对于当前获得的讨论数据而言的概念,本申请实施例中,将在当前获得的讨论数据之前发布的其他讨论数据,称为历史讨论数据。
下面对本申请实施例的设计思想进行简要介绍:
相关技术下,为了有效地表征讨论数据之间的数据关系,通常可以针对存储内容直接进行处理,或者,通过构建不限层级的树形结构来表征讨论数据之间的关系。
然而,基于相关技术下表征讨论数据之间关系的方式,仅能满足单一的讨论数据呈现方式,而且无法在数据关系发生变化的时候进行全局性调整,使得对于诸如各类讨论数据总量的统计结果不准确,造成对于相关对象的浏览误导;另外,在无法提供有效的数据关系的情况下,也无法在实际的处理过程中,高效、准确地拉取讨论数据,使得在数据的搜索和查找过程中需要耗费大量时间,进而增加了搜索和遍历资源的消耗。
例如,参阅图1a所示,其为本申请实施例中讨论数据的存储结构示意图,针对各个文章进行的评论和回复,存储在如1a所示意的存储表中,其中,回复数据和评论数据统称为针对文章的讨论数据,评论是指针对文章发表的信息和言论,回复是指针对评论以及其他回复发表的言论。
如图1a所示,针对每个实体(回复或评论)保存有相关的话题等信息,且针对回复数据,维护一个指向父级讨论数据(parent_id)的指针,指向回复数据所针对性回复的其他数据,用于在显示时拓展出该回复数据所回复的对象和溯源。而对于统计用的评论数以及回复数而言,通常单独采用数字存储。当发生对于讨论数据的删除或增加操作时,直接针对存储的数字内容进行简单的加一或减一操作。而在拉取评论数据或回复数据时,通常在存储中搜索对应的主题信息(文章ID);然后,拉取文章ID关联的评论数据,进而将拉取的评论数据或回复数据的ID信息,分别作为parent_id,拉取相应的下级回复。
在图1a提出的存储结构示意图中,能够支持分两个数据层级呈现讨论数据,其中,一级呈现数据对应直接对文章进行评论的讨论数据,二级呈现数据对应能够追溯至相同的一级呈现数据的其他讨论数据。
这样,一方面,无法在讨论数据被增加或者删除时,实现对评论数据或回复数据数目的有效统计,另一方面,需要直接在存储表中不断的按照指针进行跳转查找,因而无法高效拉取需要查看的内容,进而无法实现对讨论数据的有效管理。
又例如,参阅图1b所示,其为本申请实施例中不限层级的树形结构示意图,图1b中保存了具有父子关系以及分层的树形结构,并通过树形结构表征目标内容关联的、讨论数据之间的数据关系,其中,讨论数据中包括有评论数据和回复数据。
在图1b所建立的树形结构图中,根节点对应目标内容ID,根节点下的一级回复节点对应直接针对目标内容的评论数据,二级回复节点表征针对一级回复节点的回复数据,进而同理类推至N级回复节点,N级回复节点表征针对N-1级回复节点的回复数据。进而通过单独保存的数字内容,存储讨论数据的总量。
这样,不限层级的树形结构图将极大的增加维护难度,由于树形结构的深度值不可控,使得建立的数据关系极为复杂,需要耗费大量的时间和资源去遍历树形结构,因此无法基于建立的数据关系实现对讨论数据的高效管理;另外,复杂的树形结构图不便于进行讨论数据的调整,无法高效准确地统计不同层级的讨论数据总量,当需要拉取较深层次的讨论数据时,需要经过复杂的向下遍历查找过程,使得操作时间不可控;而且,在针对上层讨论数据进行诸如删除操作时,只会对其自身造成影响,这使得当其下级的讨论数据失去显示的意义时,依然出现在讨论数据的统计结果中,极大影响了数据统计的准确性,造成对呈现内容的误导;因而无法基于图1b所提出的数据关系表征方式,实现对讨论数据的有效管理。
有鉴于此,本申请实施例中,提出了一种数据关系的处理方法、装置、电子设备及存储介质,首先,获得目标内容关联的讨论数据,确定讨论数据对于目标内容的数据层级,其中,数据层级用于表征讨论数据之间的嵌套回复关系;然后,根据讨论数据的数据层级,在预设的指针图谱中创建讨论数据对应的数据节点,以及在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;再基于指针图谱和目标索引表,表征目标内容对应的数据关系。
这样,借助于构建的指针图谱,能够在建立讨论数据之间指向关系的同时,表征出不同数据层级的讨论数据之间的嵌套回复关系,使得能够提取不同数据层级的讨论数据之间的相互回复情况,并能够指示讨论数据之间被发布的先后关系和归属关系。另外,借助于目标索引表中包括的统计子表和聚类子表,能够实现对指定类型的讨论数据的计数统计、以及对指定类型讨论数据的索引聚类,因而能够有效地实现对各类讨论数据的数量统计,并能够有效确定各类讨论数据对应的聚类内容,不仅为针对指定层级的讨论数据进行细化分析提供了处理依据,还为针对各类讨论数据进行的有效数目统计提供了处理依据。再者,指针图谱和目标索引表的联合作用,为联动处理存在关联的讨论数据带来了便利,根据指针图谱中示意的指针指向、以及目标索引表中包括的表元素内容,能够快速找到需要联动调整和需要查找的目标内容,这将极大地降低搜索和遍历的时间成本,提高数据的查询效率。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请实施例及实施例中的特征可以相互组合。
参阅图2所示,为本申请实施例中可能的应用场景示意图。该应用场景示意图中,包括对象设备210(包括对象设备2101、对象设备2102…对象设备210n),以及处理设备220。
在本申请实施例中,对象设备210用于发布针对目标内容的讨论数据,其中,对象设备210包括但不限于个人计算机、手机、电脑、笔记本、智能语音交互设备、电子书阅读器、智能家电、车载终端、飞行器等。
处理设备220用于将各个对象设备210发布的讨论数据进行分析和存储,处理各个讨论数据之间客观存在的数据关系,其中,该客观存在的数据关系具体为不同讨论数据之间存在的回复与被回复关系。处理设备220可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。在一些可能的实施例中,处理设备220还可以是具有处理功能的电子设备,如,笔记本、手机、平板电脑等。
本申请实施例中,对象设备210与处理设备220之间,可以采用有线连接或者无线连接的连接方式,通过通信网络建立通信连接。
本申请实施例中,处理设备220可以直接获取对象设备210发送的讨论数据,或者,在对象设备210将讨论数据发送给数据设备后,处理设备220从该数据设备处获取讨论数据,本申请在此不做具体限制。
本申请提出的技术方案,可以在各样的应用场景中,实现数据关系的处理。下面以几种可能的应用场景为例,进行示意性说明:
应用场景一、处理多媒体内容关联的、各个讨论数据之间的数据关系。
具体的,处理设备可以获取针对多媒体内容发布的讨论数据,其中,讨论数据中包括针对多媒体内容发布的评论数据和回复数据,多媒体内容具体可以是发布在指定平台上的文章、视频、音频等内容。
进一步地,处理设备分析讨评论数据和回复数据之间的嵌套回复关系,并在指针图谱中建立讨论数据对应数据节点,以及建立每个数据节点指向指定数据层级的其他讨论数据的指针,以表征出不同讨论数据之间的回复关系和溯源确定的上、下级讨论数据;与此同时,处理设备在对应的目标索引表中,新增与讨论数据的标识信息对应的表元素,实现对于不同类型讨论数据的聚类索引。
在此基础上,能够有效表征出客观存在的数据关系,实现对讨论数据的有效管理,如,响应于针对讨论数据的删除操作,对表征出的数据关系进行调整。
应用场景二、处理针对游戏关联的、各个讨论数据之间的数据关系。
具体的,可以应用在针对游戏体验进行分享的论坛,或者,能够实现游戏下载的平台中,处理设备获取论坛或者平台上不同体验对象发布的讨论数据,其中,讨论数据中包括直接针对游戏进行的评论数据,以及间接针对游戏进行的回复数据。
进一步地,处理设备在指针图谱中创建每个体验讨论数据对应的数据节点和指针,以及针对每个体验讨论数据,在对应的目标索引表中新增对应的表元素,这样,能够实现对体验评论数据和体验回复数据之间客观的嵌套回复关系进行有效表征。
在此基础上,能够基于建立的数据关系,实现对体验讨论数据的有效管理,如,响应于针对体验讨论数据的删除操作,对表征出的数据关系进行调整。
下面首先结合附图,对数据关系的处理过程进行具体说明:
参阅图3a所示,其为本申请实施例中数据关系的处理流程示意图,下面结合附图3a,对数据关系的处理过程进行说明:
步骤301:处理设备获得目标内容关联的讨论数据,确定讨论数据对于目标内容的数据层级。
本申请实施例中,当相关对象发布针对目标内容的讨论数据后,处理设备获取该讨论数据,进而根据该讨论数据相对于先前获得的历史讨论数据的回复情况,确定该讨论数据对于目标内容的数据层级,其中,数据层级用于表征讨论数据之间的嵌套回复关系。
需要说明的是,本申请实施例中,可以采用不同的命名方式为划分出的各个数据层级进行命名,以下的说明中仅以数字标识不同的数据层级为例进行说明,另外,本申请实施例中,默认讨论数据对应的数据层级取值越高,则对应的嵌套回复关系越复杂,由该讨论数据向上逐步溯源父级讨论数据直至溯源至直接对目标内容进行回复的其他讨论数据时,经历的讨论数据越多。
例如,本申请实施例中,在命名数据层级时,可以将直接针对目标内容进行评论的讨论数据,设置数据层级为零级;针对以零级的讨论数据作为父级讨论数据的其他讨论数据,设置数据层级为一级;针对以一级的讨论数据为父级讨论数据的其他讨论数据,设置数据层级为二级,以此类推;或者,可以将直接针对目标内容进行评论的讨论数据,设置数据层级为一级,并将以一级讨论数据作为父级讨论数据的其他讨论数据,设置数据层级为二级讨论数据,并同理类推。
在本申请以下的描述中,仅以将直接针对目标内容进行评论的讨论数据设置为一级讨论数据为例,进行相关说明。
本申请实施例中,为了避免由于数据层级过多导致数据的查找时间不可控的问题,在兼顾对于数据的浏览习惯的情况下,可以根据实际处理需要,设置所划分的数据层级总数;在此基础上,为了保证设置的数据层级不超过数据层级总数,可以针对嵌套回复总层数设置有回复层数阈值,使得在一些可能的实施例中,基于嵌套回复总层数对数据层级进行约束。
例如,假设一些对象在浏览目标内容关联的讨论数据时,通常***铺展示直接对目标内容进行评论的各个一级讨论数据,而对于直接或间接回复一级讨论数据的其他讨论数据进行折叠平铺展示,那么,将目标内容关联的各个讨论数据划分为两个数据层级即可满足呈现需要;另一些对象在浏览目标内容关联的讨论数据时,***铺展示直接对目标内容进行评论的各个一级讨论数据,而折叠平铺展示直接对一级讨论数据进行回复的二级讨论数据,并在二级讨论数据的基础上,折叠平铺展示直接或间接对二级讨论数据进行回复的其他讨论数据,那么,将目标内容关联的各个讨论数据划分为三个数据层级即可满足呈现需要。因此,为了兼容上述两种呈现需求,可以将讨论数据划分为三个数据层级。
在确定讨论数据对应的数据层级时,处理设备根据讨论数据对于获得的历史讨论数据的回复情况,确定该讨论数据与历史讨论数据之间的嵌套回复关系,进而基于父级讨论数据的存在情况以及父级讨论数据的数据层级,确定当前获得的讨论数据对应的数据层级。
在一些可能的实现方式中,处理设备可以根据讨论数据与获取的历史讨论数据之间的回复关系,溯源确定讨论数据相对目标内容的嵌套回复总层数;进一步地,若确定嵌套回复总层数高于设定的回复层数阈值,则基于回复层数阈值确定讨论数据对于目标内容的数据层级;若确定嵌套回复总层数不高于回复层数阈值,则基于嵌套回复总层数确定讨论数据对于目标内容的数据层级。
具体的,在溯源确定讨论数据相对于目标内容的嵌套回复总数,进而确定数据层级时,按照当前获得的讨论数据与历史讨论数据之间的回复关系,存在以下几种可能的情况:
情况一、讨论数据与获取的历史讨论数据之间不存在回复关系。
具体的,当获得的讨论数据是直接针对目标内容进行评论的讨论数据时,此时,不存在该讨论数据所针对性回复的历史讨论数据,换言之,当前获得的讨论数据不存在父级讨论数据。
因此,当前获得的讨论数据相对于目标内容的总嵌套层数为1层,可以直接将当前获取的讨论数据的数据层级确定为一级。
情况二、讨论数据与获取的历史讨论数据之间存在回复关系。
本申请实施例中,当获得的历史讨论数据中,存在当前获得的讨论数据的父级讨论数据时,即,当前获得的讨论数据是针对一个历史讨论数据的回复数据,则处理设备需要溯源确定该讨论数据对应的数据层级。
具体的,处理设备可以采用包括但不限于以下几种可能的方式:
方式1、直接确定讨论数据对于目标内容的嵌套回复总层数。
具体的,当获得的讨论数据关联有其上级的各个其他讨论数据信息时,处理设备可以直接根据上级的各个其他讨论数据,确定该讨论数据对应的嵌套回复总层数。
例如,假设获得的讨论数据关联有如下示意性关系:讨论数据A@用户1讨论数据B@用户2讨论数据C@目标内容ID,且定义的该示意性关系的存在意义为:讨论数据A直接对用户1发布的讨论数据B进行回复,且用户1发布的讨论数据B针对用户2发布的讨论数据C进行回复,以及用户2发布的讨论数据C针对目标内容(与目标内容ID对应)直接进行评论。此时,讨论数据A相对于目标内容的嵌套回复总层数为3层,讨论数据B相对于目标内容的嵌套回复总层数为2层,讨论数据C相对于目标内容的嵌套回复总层数为1层。
进而根据嵌套回复总层数与设定的回复层数阈值的关系,确定当前获得的讨论数据对应的数据层级,其中,设定的回复层数阈值与划分的数据层级总数可以取相同值。
又例如,假设针对数据层级划分的总层级为3级,分别为1级(对应嵌套回复总层数为1)、2级(对应嵌套回复总层数为2)、3级(对应嵌套回复总层数>=3),且针对嵌套回复总层数设置的回复层数阈值为3。那么,继续上述举例进行说明时,针对讨论数据A设置的数据层级为3级,针对讨论数据B设置的数据层级为2级,以及针对讨论数据C设置的数据层级为1级。
这样,在确定讨论数据对于目标内容的嵌套回复总层数后,能够在目标内容关联的全部讨论数据范围内,确定该讨论数据相对于目标内容的回复情况;而且借助于设置的回复层数阈值,能够侧面约束所呈现的数据层级,使得高于回复层数阈值的讨论数据被限制在相同的数据层级下,为后续分层级地呈现讨论数据之间的嵌套回复关系提供了处理依据。
方式2、根据预设的指针图谱确定讨论数据对于目标内容的嵌套回复总层数。
具体的,处理设备可以直接根据预设的指针图谱,确定讨论数据对应的数据层级,其中,该指针图谱中包括先前获得的各个历史讨论数据各自对应的数据节点,且每个数据节点关联有指向指定数据层级的其他讨论数据的指针,指定数据层级约束的可以是父级讨论数据、子级讨论数据、以及具体的某级讨论数据等内容中的至少一项或组合。
那么,在溯源确定该讨论数据对应的嵌套回复总层数时,处理设备可以获取预设的指针图谱,并确定该讨论数据对应的父级讨论数据,以及在指针图谱中确定该父级讨论数据对应的数据节点。
进而,处理设备在指针图谱中逐步向上溯源父级讨论数据对应的数据节点,直至确定的父级讨论数据对应直接对目标内容进行评论的历史讨论数据;然后,基于溯源过程中确定的父级讨论数据总数,确定当前获得的讨论数据相对于目标内容的嵌套回复总数。
例如,参阅图3b所示,其为本申请实施例中溯源确定嵌套回复总层数的逻辑示意图。根据图3b所示意的内容,假设当前获取的讨论数据为:讨论数据D,那么在溯源确定讨论数据D相对于目标内容的嵌套回复总层数时,先确定讨论数据D所针对性回复的父级讨论数据(由指针parent_id所指示确定)为:与数据节点k1对应的讨论数据k1;然后,在指针图谱中确定讨论数据k1对应的父级讨论数据:与数据节点j1对应的讨论数据j1;以及确定讨论数据j1对应的父级讨论数据:与数据节点i对应的讨论数据i,此时,由于讨论数据i为针对目标内容直接进行回复的讨论数据,故溯源停止。因此,溯源结束后确定的各个上级数据节点为:k1-j1-i,那么,讨论数据D对于目标内容的嵌套回复总层数为4层。
又例如,在针对讨论数据D确定的嵌套回复总层数为4层的情况下;假设针对数据层级划分的总层级为3级,分别为1级(对应嵌套回复总层数为1)、2级(对应嵌套回复总层数为2)、3级(对应嵌套回复总层数>=3),且针对嵌套回复总层数设置的回复层数阈值为3。那么,针对讨论数据D确定的数据层级为3级。
需要说明的是,本申请实施例中,更新指针图谱的过程,以及创建指针图谱对应的树形结构图的过程,将在步骤302的描述中进行详细说明,本申请在此将不再展开说明。
这样,在借助于指针图谱,实现对讨论数据进行有效溯源的基础上,根据设置的回复层数阈值,能够约束讨论数据之间的嵌套回复关系,进而分层级的划分不同讨论数据的呈现情况,相当于实现了讨论数据的分类;另外,以划分对应的数据层级的方式,确定了采用同种方式显示的各个讨论数据,为讨论数据后续的有效呈现提供了处理依据。
在另一些可能的实施例中,当针对指针图谱创建有对应的树形结构图时,处理设备在确定讨论数据对应的数据层级时,可以直接基于讨论数据的父级讨论数据和树形结构图,确定对应的数据层级。
具体的,在针对指针图谱创建有对应的树形结构图时,处理设备确定了当前获取的讨论数据所对应的父级讨论数据后,获取创建的树形结构图,其中,树形结构图用于直观地呈现历史讨论数据之间的父子关系和上下层级关系,树形结构图中包括树节点,且存在父子关系的树节点之间存在连接边,父子关系的树节点对应历史讨论数据和相应的父级历史讨论数据,一个树节点对应一个历史讨论数据,可以用历史讨论数据的ID标识对应的树节点。
需要说明的是,本申请实施例中,树形结构图的深度值与数据层级相对应,可以根据实际的处理需要,根据数据层级总数配置深度值的取值,使得当树形结构图中深度值的取值方式,与数据层级的取值方式相同时,树形结构图中树节点的深度值,也可以理解为该树节点对应的历史讨论数据的数据层级。
例如,设置的最大深度值=划分的数据层级总数=针对嵌套回复总层数设置的回复层数阈值=3,深度值1的各个树节点,对应数据层级为1的各个历史讨论数据,以及对应嵌套回复总层级为1的各个历史讨论数据;深度值为2的各个树节点,对应数据层级为2的各个历史讨论数据,以及对应嵌套回复总层级为2的各个历史讨论数据;深度值为3的各个树节点,对应数据层级为3的各个历史讨论数据,以及对应嵌套回复总层级不小于3的各个历史讨论数据。
进而,处理设备在确定当前获得的讨论数据的父级讨论数据之后,在树形结构图中确定该父级讨论数据所对应的数据层级;然后在确定数据层级不是数据层级最高值时,将该数据层级进行加一处理后,得到该讨论数据对应的数据层级,以及在确定该父级讨论数据对应的数据层级为数据层级最高值时,将该讨论数据的数据层级设置为该数据层级最高值。
综合而言,在本申请可能的实施例中,存在以下对应关系:树形结构图中的最大深度值=划分的数据层级总数=针对嵌套回复总数设置的回复层数阈值。
这样,借助于构建的树形结构图,直观的呈现讨论数据之间父级关系和上下级关系的同时,能够辅助确定数据层级关系,使得基于当前获得的讨论数据的父级讨论数据,在树形结构图中的深度值能够确定父级讨论数据对应的数据层级;进而能够间接确定当前的讨论数据对应的数据层级,使得基于讨论数据与父级讨论数据之间的回复情况,以及父级讨论数据与其他历史讨论数据之间的回复情况,能够快速确定各个讨论数据之间的嵌套回复关系;从而确定出讨论数据对应的数据层级,与此同时,能够表征出各个讨论数据对应的呈现层次。
下面以一个具体的例子,具体说明数据层级的确定过程,参阅图3c所示,其为本申请实施例中确定数据层级的方式示意图。根据图3c所示意的,当用户2发布的讨论数据A为:针对用户1发布的“北极熊好可爱”的回复数据时,处理设备获取的讨论数据A存在对于用户1发布的“北极熊好可爱”的引用关系,因此,能够将用户1发布的“北极熊好可爱”确定为讨论数据A的父级讨论数据。
进而,可以使用存在父级讨论数据时的以下任意一种实现方式,确定讨论数据A对应的数据层级:直接根据讨论数据的数据引用格式,确定讨论数据相对于目标内容的嵌套回复总层数,进而基于嵌套回复总层数确定对应的数据层级;在指针图谱中追溯父级讨论数据关联的上级讨论数据,进而确定讨论数据A对应的数据层级;在指针图谱对应的树形结构图中,确定父级套路数据对应的深度信息,进而基于该深度信息确定讨论数据A对应的数据层级。
继续参阅图3c所示意的,假设讨论数据A为用户3发布的,且讨论数据A为直接针对目标内容进行评论的讨论数据,那么,讨论数据A不存在父级讨论数据,因此,可以直接将讨论数据A的数据层级确定为1层。
步骤302:处理设备根据讨论数据的数据层级,在预设的指针图谱中创建讨论数据对应的数据节点,以及在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素。
本申请实施例中,处理设备确定讨论数据对应的数据层级后,在预设的指针图谱中创建讨论数据对应的数据节点,并在数据层级对应的目标索引表中,新增该讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表。
在将当前获得的讨论数据更新至指针图谱中时,处理设备在预设的指针图谱中建立讨论数据对应的数据节点;然后,根据设置的指针指向关系,确定与讨论数据之间存在指针指向关系的其他讨论数据,并在指针图谱中创建相应的数据节点之间的指针,其中,指针指向关系用于表征不同数据层级的讨论数据之间的回复关系。
具体的,处理设备获取预设的指针图谱后,在该指针图谱中创建讨论数据对应的数据节点;然后,按照设置的指针指向关系,定义由该数据节点指向其他数据节点的指针。
本申请实施例中,指针指向关系用于描述部分客观存在的数据关系,也可以理解为用于表征不同数据层级的讨论数据之间的回复关系,讨论数据之间客观存在的数据关系包括父子关系和上下级关系;父子关系是相对于两个讨论数据而言的,用于表征两个讨论数据之间的回复与被回复情况,将被回复的讨论数据作为另一个讨论数据的父级讨论数据,以及将回复父级讨论数据的讨论数据被称为该父级讨论数据的子级讨论数据;上下级关系所表征的回复关系是相对而言的,对于一个讨论数据而言,向父级讨论数据方向溯源确定的其他讨论数据,则为该讨论数据的上级讨论数据,相应的,向子级讨论数据方向溯源确定的其他讨论数据,则为该讨论数据的下级讨论数据。
本申请实施例中,对于根据实际的处理需要设置的指针指向关系而言,可能对应每个数据节点设置有多个指针,具体的指针数目和指针所指向的数据节点类型,根据实际的处理需要设置。
可选的,可以针对每个数据节点设置有三个指针,分别包括指向溯源的一级讨论数据的根评论指针、指向回复的父级讨论数据的直接回复指针、以及指向溯源的二级讨论数据的根回复指针,其中,一级讨论数据为直接对目标内容进行回复的历史讨论数据,二级讨论数据为针对一级讨论数据进行回复的历史讨论数据,父级讨论数据为进行针对性回复的历史讨论数据。
具体的,当指针指向关系对应维护有上述三个指针时,处理设备针对每个讨论数据,分别定义有一个三指针结构,以便于进行溯源和相关的数据存储操作,其中,定义的三指针结构形如如下所示:
message MsgInf{//表征定义一个指针结构
string root_id=ID1;//表征将根评论指针“root_id”定义为指向ID1所对应的讨论数据
string parent_id=ID2;//表征将直接回复指针“parent_id”定义为指向ID2所对应的讨论数据
string first_level_id=ID3;//表征将根回复指针“first_level_id”定义为指向ID3所对应的讨论数据
}
其中,根评论指针(记为root_id),用于指向当前的讨论数据所溯源归属的一级讨论数据,其中,一级讨论数据是指直接针对目标内容进行回复的历史讨论数据,特殊地,对于一级讨论数据而言,一级讨论数据本身无root_id,因为在根据指针图谱创建的树形结构图中,一级讨论数据对应的树节点为根节点,故一级讨论数据的指针“root_id”被定义为指向“空(none)”。
直接回复指针(记为parent_id),用于指向当前的讨论数据直接回复的父级讨论数据,用于明确当前获取的讨论数据具体回复了哪一历史讨论数据。特殊地,对于一级讨论数据而言,一级讨论数据不存在父级讨论数据,故一级讨论数据的指针“parent_id”被定义为指向“空(none)”;对于二级讨论数据而言,二级讨论数据回复了一级讨论数据,因此,该二级讨论数据的指针“parent_id”指向溯源确定的一级讨论数据;对于三级讨论数据及以上的讨论数据而言,N级讨论数据的指针“parent_id”指向其溯源确定的N-1级讨论数据。
根回复指针(记为first_level_id),用于指向当前的讨论数据所溯源归属的二级讨论数据。特殊的,对于一级讨论数据而言,一级讨论数据不存在归属的二级讨论数据,故一级讨论数据的指针“first_leve_id”被定义为指向“空(none)”;对于某个二级讨轮数据下级的各个讨论数据而言,不管下级的各个讨论数据是针对哪个讨论数据的回复,二级讨论数据下级的各个讨论数据所对应的指针“first_level_id”,都指向该二级讨论数据。
这样,在限制有指针指向关系的情况下,根据指针指向关系所约束的各个指针,能够确定对应当前讨论数据所在的数据层级存在的各个指针,并能够指导指针图谱中数据节点的新增和指针的创建,为指针图谱的维护和更新提供了处理依据,有助于充分表征出客观存在的数据关系。
进一步的,确定指针指向关系所约束的指针之后,处理设备在指针图谱中创建新增的数据节点、以及数据节点与其他数据节点之间的指针,进而相当于在指针图谱中,新增当前的讨论数据关联的数据关系。
例如,参阅图3d所示,其为本申请实施中在指针图谱中新增数据节点和指针的过程示意图,根据图3d所示意的,对于当前获得的讨论数据D而言,假设根据讨论数据D对应的数据引用关系,确定讨论数据D的父级讨论数据为历史讨论数据k1,根据当前的指针图谱,可以溯源确定历史讨论数据k1归属的一级讨论数据为:历史讨论数据i,且溯源确定历史讨论数据k1归属的二级讨论数据为:历史讨论数据j1。那么,针对讨论数据D定义的三指针结果中,将讨论数据D的根评论指针,定义为指向历史讨论数据i;将讨论数据D的根回复指针,定义为指向历史讨论数据j1,以及将讨论数据D的直接回复指针,定义为指向历史讨论数据k1。
继续参阅图3d所示,在针对讨论数据D定义三指针结构的基础上,继续参阅图3d所示,处理设备在指针图谱中新增讨论数据D对应的数据节点D,并建立数据节点D指向数据节点i、数据节点k1、以及数据节点j1的三个指针。
进一步的,处理设备基于构建的指针图谱,在讨论数据的数据等级对应的目标索引表中,新增讨论数据的表示信息对应的表元素。
本申请实施例中,处理设备根据预先定义的、每个子表中表元素对应的数据层级范围,确定讨论数据的数据层级对应的统计子表和聚类子表;然后,将讨论数据的标识信息,作为统计子表中的末端表元素,增加在统计子表中,并根据讨论数据与归属于相同父级讨论数据的其他讨论数据之间的时序关系,在相应的聚类子表中新增对应的表元素。
需要说明的是,本申请实施例中,根据实际处理需要,处理设备可以预先针对数据统计需要和聚类需要,定义子表类别;并针对每类子表,确定子表中包括的表元素类型。本申请实施例中,定义的子表至少包括用于进行讨论数据的数量统计的统计子表、以及聚类指定数据层级下的讨论数据的聚类子表。另外,本申请实施例中,各个子表的表现形式具体可以是列表,或者,可以是链表,或者,可以是列表和链表的组合,本申请不做具体说明。
具体的,处理设备可以预先针对目标内容关联的指定数据层级的讨论数据,定义对应的指定层级聚类子表;与此同时,预先针对目标内容关联的讨论数据,定义对应的总量统计子表,以及针对目标内容关联的、指定数据层级的讨论数据,定义对应的指定层级统计子表。
本申请实施例中,在将数据层级划分为三级的情况下,为了实现对三级讨论数据的有效拉取和索引,可以针对性定义有5类子表,包括3类聚类子表和2类统计子表,定义的3类聚类子表分别用于:聚类目标内容关联的全部一级讨论数据、聚类溯源至相同一级讨论数据的各个二级讨论数据、以及聚类溯源至相同二级讨论数据的各个下级讨论数据;定义的2类统计子表分别用于:统计目标内容关联的全部讨论数据、以及统计溯源至相同一级讨论数据的各个下级讨论数据总数,下面针对涉及到的5类子表分别进行说明:
需要说明的是,本申请实施中,对于聚类子表和统计子表的表元素增加原则而言,聚类子表中相同数据层级的表元素通常按照被发布的时序先后顺序排列,而由于统计子表的作用在于统计讨论数据的总数,因此,新增表元素时可以直接添加至子表中表元素的末尾。
特殊地,当将数据层级划分为三级,且数据层级与嵌套回复总层数的关系为:数据层级1级(相对于目标内容的嵌套回复总层数1层)、数据层级二级(相对于目标内容的嵌套回复总层数2层)、数据层级三级(相对于目标内容的嵌套回复总层数>=3)。那么,本申请实施例中,对于三级讨论数据而言,虽然三级讨论数据覆盖有嵌套回复总层数不低于3的各个讨论数据,但是由于设置的数据层级最高为3级,故相当于将嵌套回复总层数不低于3的各个讨论数据设置为平铺展示,因此,也可以按照讨论数据被发布的时序先后顺序,在对应的子表中新增表元素。
用于索引目标内容关联的、全部一级讨论数据的聚类子表,可以记为“key=${ItemID}”,表征聚类子表的标题为目标内容的ID,用于聚类针对某一目标内容(ItemID对应的)所产生的全部一级讨论数据,其中,对应不同的应用场景而言,ItemID可以是文章的article_id、视频的video_id、以及音频的music_id等内容的任意一项,该聚类子表能够将针对同一个目标内容产生的一级讨论数据聚集起来。
用于索引溯源至相同一级讨论数据的、各个二级讨论数据的聚类子表,可以记为“key=${一级讨论数据ID}”,表征聚类子表的标题为一个一级讨论数据的ID,用于聚合父级讨论数据为该一级讨论数据的全部二级讨论数据。
用于索引溯源至相同一级讨论数据的、各个下级讨论数据的聚类子表,可以记为“key=${一级讨论数据ID}”,表征聚类子表的标题为一个一级讨论数据的ID,用于聚合该一级讨论数据的全部下级讨论数据。
用于统计目标内容关联的全部讨论数据的统计子表,可以记为“key=${ItemID}”,表征统计子表的标题为一个目标内容的ID,用于统计该目标内容关联的全部讨论数据,这样,能够将针对同一个目标内容产生的全部讨论数据聚集起来,进而后续能够提供一个总的讨论度、讨论数等统计信息。
用于统计溯源至相同二级讨论数据的、各个下级讨论数据总数的统计子表,可以记为“key=${二级讨论数据ID}”,表征标题为一个二级讨论数据ID的聚合子表,用于统计能够溯源至该二级讨论数据的全部下级讨论数据的总数。
需要说明的是,本申请实施例中,指针图谱中针对每个数据节点设置的指针总数,以及构建的子表类型数,均可以根据实际的处理需要设置,诸如本申请上述描述中确定的,被划分的数据层级为3级,每个数据节点对应的指针总数可以为3个,设置索引表中可以包括5类子表;根据实际处理需要指针总数和子表类型可以适应性调整,如,设置数据层级为4级时,可以针对性地增加指向溯源的三级讨论数据的指针,以及增加用于统计溯源至相同的三级讨论数据的四级讨论数据总数的统计子表等,本申请不做具体限制。
这样,借助于配置的各类子表,能够从讨论数据统计和讨论数据聚类这两个角度,索引目标内容关联的讨论数据,而且基于针对数据统计而单独创建的统计子表可以预期的是,能够借助于统计子表中的表元素实现精确的数量统计,避免出现可呈现数据与数据量统计结果不一致而带来的误导展示。
下面以一个具体的举例,对指针图谱的更新过程以及索引表中的表元素新增过程进行说明,在此举例中将以每个数据节点包括三个指针,预先定义有5类子表,且数据层级划分为3级为例,进行示意性说明。参阅图3e所示,其为本申请实施例中更新指针图谱和构建索引表的过程示意图,下面结合附图3e对具体的处理过程进行详细说明。
根据图3e所示意的,当对象1(actor)发布针对目标内容的一级讨论数据i1时,处理设备对应i1在指针图谱中新增一个根数据节点,进而根据i1对应的子表类型,创建目标索引表。其中,目标索引表中包括聚类目标内容关联的全部一级讨论数据的聚类子表、以及统计目标内容关联的全部讨论数据的统计子表;进而得到图3e中第一部分所示意的指针图谱和目标索引表。
进而,对象2针对i1(直接对目标内容进行评论的一级讨论数据)进行回复后,回复的讨论数据将作为二级讨论数据。该二级讨论数据为归属于该目标内容、以及归属于一级讨论数据i1的下级讨论数据。因此,处理设备在指针图谱中新增j1和j2对应的数据节点,并分别新增指向i1的直接回复指针和根评论指针;进而对应二级讨论数据,确定对应的目标索引表包括:统计目标内容关联的全部讨论数据的统计子表、溯源至i1的二级讨论数据聚类子表、以及溯源至i1的各个下级讨论数据聚类子表。因此,对应二级讨论数据j1和j2,新增溯源至相同一级讨论数据的各个二级讨论数据的聚类子表、以及溯源至相同一级讨论数据的各个下级讨论数据的聚类子表;在此基础上,可以确定二级讨论数据对应的目标索引表中包括3个子表,此时,目标对象对应的索引表中包括4个子表,进而在j1和j2的目标索引表(3个子表)中新增j1和j2对应的表元素。另外,j1和j2同时被处理的原因可能是j1和j2的发布处于一个处理周期内,处理设备可以根据实际处理需要,周期性地获取新增的讨论数据进行处理。
然后,在对象3发布用于回复二级讨论数据j1的三级讨论数据k1时,处理设备在指针图谱中新增k1对应的数据节点,并创建指向j1的直接回复指针、指向i1的根评论指针,以及指向j1的根回复指针;进而针对三级讨论数据,确定目标索引表中包括:统计目标内容关联的全部讨论数据的统计子表、溯源至i1的各个下级讨论数据聚类子表、以及用于统计溯源至相同j1的各个下级讨论数据总数的统计子表。因此,在现有的索引表的基础上,新增用于统计溯源至相同二级讨论数据的各个下级讨论数据总数的统计子表,而且,当前针对三级讨论数据确定的目标索引表中包括3个子表,当前针对目标内容创建的索引表中包括5个子表,因此,在相应的3个子表(k1的目标索引表)中新增对应k1对应的表元素后,得到图3e中第三部分所示意的指针图谱和索引表。
之后,对于对象4发布的用于回复三级讨论数据k1的讨论数据k2而言,由于数据层级的总层数为3层,故虽然k2为k1的回复数据,但是讨论数据k3视为与k2属于相同数据层级。处理设备获取讨论数据k2后,在指针图谱中新增讨论数据k2对应的数据节点,并建立指向k1的直接回复指针、指向i1的根评论指针,以及指向j1的根回复指针。进而对应讨论数据k2,确定对应的目标索引表中包括:统计目标内容关联的全部讨论数据的统计子表、溯源至i1的各个下级讨论数据聚类子表、以及用于统计溯源至相同j1的各个下级讨论数据总数的统计子表。因此,当前无需新增子表,讨论数据k2对应的目标索引表中包括3个子表,目标内容对应的索引表中包括5个索引表,故在相应的3个子表(k2的目标索引表)中新增k2对应的表元素。
这样,通过在各类子表中新增讨论数据对应的表元素,能够实现对讨论数据的分类索引;另外,由于建立的统计子表和聚类子表中分别存储有讨论数据对应的表元素,故能够在实现对于各类讨论数据的聚类的同时,为快速拉取指定类型的讨论数据提供处理依据。
步骤303:处理设备基于指针图谱和目标索引表,表征目标内容对应的数据关系。
具体的,处理设备基于获得的讨论数据,在指针图谱中新增对应的数据节点和指针,以及在目标索引表中,新增对应的表元素后,基于更新后的指针图谱和索引表,表征目标内容所对应的数据关系,即,表征关联有目标内容的各个讨论数据之间的数据关系,其中,目标索引表中包括的各类子表包含在目标内容对应的索引表中,讨论数据的目标索引表可以理解为:需要新增该讨论数据对应的表元素的各类子表集合,目标内容的索引表可以理解为:将目标内容关联的讨论数据作为表元素的各类子表集合。
特殊的,在支持对发布的讨论数据进行删除的情况下,处理设备接收到针对目标讨论数据的删除指示时,需要在目标讨论数据对应的目标索引表、以及针对指针图谱创建的树形结构图中,删除相应的内容,其中,接收的删除操作可以是目标讨论数据的发布对象发起的,或者,可以是相关的管理对象在判定目标讨论数据异常时发起的。
需要说明的是,本申请实施例中,为了维护目标讨论数据删除流程的完整性和数据准确性,当删除一个目标讨论数据时,最终达到的效果为:将目标讨论数据以及针对目标讨论数据进行回复下级讨论数据进行全部删除,其中,受目标讨论数据的删除影响而需要被删除的其他讨论数据,称为联动讨论数据。
本申请实施例中,为了降低目标讨论数据的删除所带来的时间消耗,减少数据删除过程中的操作时间,可以采用同步删除操作和异步删除操作相结合的方式共同实现数据删除,其中,同步删除操作是指当接收到对于目标讨论数据的删除指示时,立即在树形结构图删除相应的数据节点,以及在目标索引表中删除相应的表元素;异步删除操作是指相对于接收的删除指示而言,异步删除归属于此目标讨论数据的下级讨论数据。
例如,同步删除操作对应的响应时间可能为接收删除指示后的零点几毫秒,异步删除操作对应的响应时间可能为接收删除指示后的几百毫秒。
具体的,处理设备获取针对目标内容关联的各个历史讨论数据创建的索引表,并获取根据指针图谱建立的、目标内容关联的树形结构图;然后,在索引表中,删除所目标讨论数据对应的目标表元素,以及在树形结构图中删除目标讨论数据对应的树节点;再根据指针图谱,确定目标讨论数据下级的联动讨论数据,并在索引表中,删除每个联动讨论数据对应的联动表元素,以及在树形结构中删除每个联动讨论数据对应的联动树节点。
本申请实施例中,处理设备接收针对目标讨论数据的删除指示后,获取当前基于已获取的各个历史讨论数据创建的索引表,以及获取根据更新后的指针图谱建立的树形结构图,其中,处理设备在获得各个历史讨论数据时分别确定对应的目标索引表,并在对应的目标索引表中添加相应的表元素,最终能够得到添加有表元素的各个子表,进而基于获得各个子表,组成针对目标内容关联的各个历史讨论数据创建的索引表。
进而,处理设备在索引表中,删除目标讨论数据对应的目标表元素,以及在树形结构图中,删除目标讨论数据对应的树节点后,再针对受目标讨论数据影响的联动讨论数据进行针对性删除,其中,联动讨论数据向父级讨论数据的方向溯源时,能够溯源至该目标讨论数据。
这样,在索引表和树形结构图中,删除目标讨论数据相关的数据关系时,先删除目标讨论数据相关的内容,再删除受目标讨论数据所影响的联动讨论数据,使得能够快速响应对于目标讨论数据的删除指示,实现对目标讨论数据相关索引关系的删除,使得在呈现讨论数据时目标讨论数据不会被拉取,实现了快速响应于删除目标讨论数据。
本申请实施例中,抽象来看,讨论数据的呈现结构类似一个多叉树,但索引关系是采用索引表的形式进行存储的,其中,本申请实施例中索引表具体可以是索引列表,或者,可以是索引链表。
在此基础上,在进行异步删除操作,删除联动讨论数据对应的数据关系时,可以通过翻页操作获取需要删除的表元素,其中,翻页操作是指将数据分页存储后逐页处理存储内容,并针对每页的存储内容分别进行操作的过程,翻页操作可以将庞大数据的删除行为,拆分成几个子任务,从而更好地控制每个任务的执行所消耗的时间和空间资源。
具体的,处理设备可以根据目标内容关联的、指定层级的历史讨论数据,将索引表进行分页存储,其中,每页的存储内容包括与至少一个指定层级的历史讨论数据关联的子表内容;再针对每页的存储内容,删除存储内容中包括的、联动讨论数据对应的联动表元素。
在将索引表进行分页存储时,处理设备针对目标内容关联的各个二级历史讨论数据,将索引表拆分至不同页存储,其中,每页的存储内容中包括与至少一个指定层级的历史讨论数据关联的子表内容,不同页中包括的存储内容不存在交集。
在具体进行分页处理时,存在包括但不限于以下的几种分页方式:
方式一、依据指定层级完成分页操作。
处理设备接收到针对目标讨论数据的删除指示后,在进行异步删除操作时,将索引表进行分页存储时,处理设备在确定分页所参考的指定层级后,可以配置每页中包括指定层级的讨论数据的数目,其中,分页所依据的指定层级根据实际的处理需要设置,本申请不做具体限制。
例如,假设将数据层级的总数设置为3级,可以设置依据二级讨论数据实现分页存储,并设置每个中包括两个二级讨论数据关联的子表内容。
方式二、依据指定层级和表元素数目完成多次分页操作。
处理设备接收到针对目标讨论数据的删除指示后,进行异步删除操作的过程中,在按照指定数据层级的讨论数据的数目,将索引表进行分页存储的基础上,可以依据每页的存储内容中包括的、指定子表的表元素数目,将该存储内容进行进一步的分页,得到各个子页内容。
需要说明的是,本申请实施例中,在进行分页操作时,确定分页所依据的数据层级后,可以将属于该数据层级的单个讨论数据所关联的子表内容,存储在一页中。
在具体实施时,可以根据存储内容中包括的表元素数目与设定阈值的关系,确定是否进行进一步的分页处理,并在确定当前页指定子表中包括的表元素数目达到设定阈值时,可以选择性地在当前一页的存储内容中,确定进行子页分页所依据的分页层级;进而配置子页中包括与至少一个分类层级的讨论数据关联的子表内容。
例如,假设将数据层级的总数设置为3级,先依据二级讨论数据实现分页存储,并设置每页的存储内容中包括两个二级讨论数据关联的子表内容后;在确定当前页N个指定子表的表元素总数超过设定阈值,或者,当前页包括的全部表元素总数超过设定阈值之后,其中,N为不小于1的正整数;进而可以继续依据二级讨论数据,或者,指定的其他级讨论数据,针对当前页的存储内容进行进一步分页操作。
方式三、根据索引表中表元素的总数,完成分页操作。
具体的,处理设备可以根据索引表中包括的表元素的总数,确定是否进行分页操作,其中,分页操作的目的在于将对于联动讨论数据的删除任务进行拆分,降低删除任务的处理难度。
处理设备确定索引表中包括的表元素总数低于设定值时,则可以不进行分页操作,否则,可以采用方式一和方式二的处理方式,或者,单纯的依据元素的个数进行分页。
例如,处理设备可以设置每页的每个子表中包括M个元素,那么,可以按照表元素的数目,直接对索引表进行拆分,得到各个索引表。
这样,借助于方式一至三所提出的分页方式,能够实现对索引表中内容的分页存储,降低后续执行异步删除操作时的处理压力。
然后,处理设备根据每页的存储内容,按照对应的数据层级自底向上的方式,逐步删除每页的存储内容中涉及到的、各个数据层级的联动讨论数据。
针对每页的存储内容进行操作时,处理设备根据指针图谱,确定目标讨论数据关联的、数据层级高于目标讨论数据的目标联动讨论数据,其中,数据层级越高表征对应的讨论数据相对于目标内容的嵌套回复层数越多;然后,按照数据层级由高到低的顺序,在存储内容中,依次删除每个目标联动讨论数据对应的联动表元素。
具体的,处理设备根据指针图谱、目标讨论数据对应的数据层级、以及当前页的存储内容,确定当前页的存储内容中,数据层级高于该目标讨论数据的目标联动讨论数据;进而按照数据层级由高到低的顺序,在当前页的存储内容中,依次删除各级数据层级下的目标联动讨论数据对应的表元素。
这样,借助于翻页操作和由高到低的联动讨论数据删除方式,能够针对每页的存储内容,由最底层嵌套的联动讨论数据开始删除,相当于按照联动讨论数据对应的数据层级由高层到低层的顺序,顺序删除联动讨论数据,使得联动讨论数据被删除的顺序,符合索引表中各个讨论数据标识的聚类规律,便于快速定位需要删除的表元素,提高讨论数据的删除效率。
另外,本申请实施例中,处理设备在树形结构图中删除每个联动讨论数据对应的联动树节点时,针对每页的存储内容,分别执行以下操作:确定存储内容中包括的目标联动讨论数据;然后按照对应的深度值由高到低的顺序,在树形结构图中,依次删除每个深度值下与目标联动讨论数据对应的联动树节点,其中,树节点的深度值与对应的讨论数据的数据层级对应相同。
具体的,处理设备在删除树形结构图中的数据关系时,确定各个目标联动讨论数据各自对应的数据层级,进而根据数据层级与深度值的对应关系,确定目标联动讨论数据对应的树节点,在树形结构图中的深度值;然后,处理设备按照深度值由高到低的顺序,依次删除每个深度值下的、目标联动讨论数据对应的联动树节点。
需要说明的是,本申请实施例中,以数据层级共为3级为例,三级数据层级所限定的三级讨论数据,对应嵌套回复总层数不低于回复层数阈值,对于三级讨论数据而言,在进行讨论数据的删除时,仅删除讨论数据自身,而由于不存在下一层级的讨论数据,因此不考量对应的联动讨论数据。
这样,树形结构图中数据关系的删除操作相当于也是分页进行的,随着索引表中表元素的删除,相应的树节点也被删除,相当于将树形结构图进行了拆分,使得每次仅针对小范围的树形结构进行分别处理即可,缩小了删除任务的处理范围,逐渐删除的树节点的方式相当于对树形结构图进行了剪枝,缩小了树形结构图的规模;另外,由于树形结构图的深度和规模直接影响删除任务的操作次数,因此能够极大的降低删除任务的操作次数;与此同时,能够避免突发故障所造成的删除任务全部重新进行的风险,使得突发故障只会影响对于小部分树形结构的删除操作,而不会对已完成的删除操作造成影响。
基于上述发明内容,附图4a所示,其为本申请实施例中数据关系的删除过程示意图,下面结合附图4a,对删除数据关系的过程进行进一步说明:
步骤401:处理设备接收针对目标内容关联的目标讨论数据的删除指示后,在目标内容关联的索引表中,删除目标讨论数据对应的目标表元素。
具体的,处理设备接收针对目标内容关联的目标讨论数据的删除指示后,立即在索引表中删除目标讨论数据对应的目标表元素,其中,表元素在索引表中的存在形式可能是讨论数据的ID,用于表征讨论数据。
本申请一些可能的实施例中,在执行目标表元素的删除操作时,处理设备可以依据针对指针图谱构建的树形结构图,确定目标讨论数据对应的数据层级,进而在索引表中确定目标讨论数据关联的子表,进而在相应的子表中直接删除相应的目标表元素。
本申请另一些可能的实施例中,在执行目标讨论数据的删除操作时,处理设备可以直接在索引表中查找目标表元素,并删除对应的目标表元素。
这样,对于目标表元素的快速删除而言,删除目标表元素的操作,可以视为与相关对象发起的目标讨论数据删除指示同步进行,使得在相关对象视角的呈现过程中,被删除的目标讨论数据将立即不会呈现。
步骤402:处理设备根据目标内容关联的树形结构图,确定目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在索引表和树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容。
具体的,处理设备在索引表中删除目标讨论数据后,可以根据目标内容关联的树形结构图,确定目标讨论数据下级的联动讨论数据,其中,数据层级用于表征讨论数据之间的嵌套回复关系,数据层级的确定、依据指针图谱建立树形结构图的过程,已经在上述内容中进行详细说明,在此将不再赘述。
进一步的,处理设备按照数据层级由高到低的顺序,在索引表和树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容。
需要说明的是,结合实际的处理需要,考虑后续在呈现目标内容关联的讨论数据时,分三个数据层级进行讨论数据的显示符合相关对象的浏览习惯,因此,本申请以下的说明中,将以共设置三个数据层级为例,对相关的删除过程进行说明,其中,采用数据层级由高到低的顺序删除联动讨论数据的原因在于,通过逐数据层级进行删除操作,能够规律并递进地完成删除任务。
另外,以下的说明中,仅以索引表中包括五种子表为例,对联动讨论数据的删除过程进行说明,其中,五类子表包括:溯源至相同一级讨论数据的其他级讨论数据统计子表、溯源至相同一级讨论数据的二级讨论数据聚类子表、溯源至相同二级讨论数据的三级讨论数据聚类子表、一级讨论数据聚类子表、以及所述目标内容关联的讨论数据统计子表。
这样,借助于在索引表中配置的五类子表,一方面能够在三层数据层级的情况下满足讨论数据统计需要,另一方面,能够实现对指定层级讨论数据的聚类,使得后续依据索引表能够进行有效的数量统计和内容拉取。
考虑到针对不同目标讨论数据执行删除操作的场景中,指示删除的目标讨论数据可能归属于不同的数据层级,因此,在异步执行针对联动讨论数据的删除操作时,存在以下几种可能的情况:
情况一、目标讨论数据为一级讨论数据。
处理设备确定目标讨论数据为一级讨论数据后,在针对联动讨论数据执行删除操作时,处理设备根据指定层级的历史讨论数据,将删除目标表元素后的索引表进行分页存储,其中,每页的存储内容中包括与至少一个指定层级的历史讨论数据关联的子表内容;针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在树形结构图中删除相应的联动树节点后,删除归属于二级讨论数据的联动表元素,并在树形结构图中删除相应的联动树节点。
需要说明的是,将删除目标表元素后的索引表进行分页存储的方式,已经在上述的处理过程中进行详细说明,在此将不再赘述。
具体的,处理设备删除归属于三级讨论数据的联动表元素时,遍历目标讨论数据对应的二级讨论数据聚类子表,确定目标讨论数据下级的二级讨论数据,以及遍历每个二级讨论数据对应的三级讨论数据聚类子表,确定溯源至目标讨论数据的三级讨论数据;再分别在讨论数据统计子表、目标讨论数据对应的其他级讨论数据聚类子表,以及相应的三级讨论数据聚类子表中,删除三级讨论数据对应的联动表元素。
进一步的,处理设备删除归属于二级讨论数据的联动表元素时,分别在讨论数据统计子表、目标讨论数据对应的其他级讨论数据聚类子表,以及相应的二级讨论数据聚类子表中,删除与目标讨论数据下级的二级讨论数据对应的联动表元素。
下面结合附图,对目标讨论数据i0为一级讨论数据时,涉及到的删除过程进行说明:
参阅图4b所示,其为本申请实施例中进行同步删除操作后索引表中的内容示意图,处理设备接收到针对目标讨论数据i0的删除指示时,处理设备将目标讨论数据i0同步从各个子表中移除,并且发起删除目标讨论数据i0的下级联动讨论数据的流程,得到图4b所示意的树形结构图和索引表。
进一步的,为了实现高效的删除操作,将索引表中的内容进行分批处理,得到分页的存储内容,参阅图4c所示,其为本申请实施例中分页的存储内容示意图。根据图4c所示意的,处理设备根据目标讨论数据i0下的二级讨论数据的数目,将指定数目的二级讨论数据划分在一页,得到两页内容,进而按照每页对应的二级讨论数据,将索引表中包括的各个子表内容进行拆分,使得拆分后各页的存储内容中,不包括任何与另一页的二级讨论数据相关的内容。如图4c所示意的,假设将j1和j2对应的子表内容划分至一页,将j3对应的子表内容划分至一页,则存在如图4c所示意的分页内容。
然后,参阅图4d所示,其为本实施例中删除第一页联动讨论数据的过程示意图。根据图4d所示意的内容可知,处理设备在确定当前页(记为page1)中包括二级讨论数据j1和j2对应的子表内容时,处理设备通过遍历j1和j2下三级讨论数据聚类子表,确定j1下的三级讨论数据k1和k2;之后,处理设备从“ItemID关联的全部讨论数据统计子表”中删除k1和k2,接着,从“i0的下级讨论数据聚类子表”中删除k1和k2,完成以上两步的移除操作后,可以将k1和k2从统计计数以及外显相关的子表中移除,进而可以从“j1下的三级讨论数据聚类子表”中删除k1和k2。
在上述移除操作的基础上,在page1中,将与i0相关的三级讨论数据移除,进而按照数据层级从高到低的顺序,开始移除二级讨论数据j1和j2。具体的,处理设备从“ItemID关联的全部讨论数据统计子表”中移除j1和j2,接着从“i0的下级讨论数据聚类子表”中移除j1和j2,在此基础上,处理设备再从“i0下的二级讨论数据子表”中移除j1和j2。这样,在page1中完成了二级讨论数据的移除。
这样,当按照数据层级由高到低的顺序,在page1中完成各数据层级的历史讨论数据的移除后,此时,page1中仅在“ItemID关联的全部讨论数据统计子表”中存在有历史讨论数据i1。
与附图4d对应的,参阅图4e所示,其为本申请实施例中树形结构图的剪枝过程示意图,与附图4d中逐渐移除目标联动讨论数据的过程相对应的,对于树形结构图而言,处理设备按照深度值由高到低的顺序,依次对树形结构图中的内容进行剪枝。具体的,深度值为3的树节点k1和k2将最先被剪枝处理,进而深度值为2的j1和j2继续被剪枝处理,其中,目标讨论数据对应的树节点根据实际的处理需要,在下级的其他树节点全部被删除后再删除。
与上述处理过程同理,参阅图4f所示,其为本申请实施例中删除第二页联动讨论数据的过程示意图,根据图4f所示意的内容,处理设备在确定当前页(记为page2)中包括二级讨论数据j3对应的子表内容时,处理设备通过遍历j3下三级讨论数据聚类子表,确定j1下的三级讨论数据k3;之后,处理设备从“ItemID关联的全部讨论数据统计子表”中删除k3,接着,从“i0的下级讨论数据聚类子表”中删除k3,完成以上两步的移除操作后,可以将k3从统计计数以及外显相关的子表中移除,进而可以从“j3下的三级讨论数据聚类子表”中删除k3。
在上述移除操作的基础上,可以将page2中与i0相关的三级讨论数据移除,进而按照数据层级从高到低的顺序,开始移除二级讨论数据j3。具体的,处理设备从“ItemID关联的全部讨论数据统计子表”中移除j3,接着从“i0的下级讨论数据聚类子表”中移除j3,在此基础上,处理设备再从“i0下的二级讨论数据子表”中移除j3。这样,在page2中完成了二级讨论数据的移除。
这样,当目标讨论数据为一级讨论数据时,按照先删除目标讨论数据下级的三级讨论数据,再删除目标讨论数据下的二级讨论数据的顺序,能够逐步完成每页中联动表元素的删除。
情况二、目标讨论数据为二级讨论数据。
处理设备确定目标讨论数据为一级讨论数据后,在针对联动讨论数据执行删除操作时,根据指定层级的历史讨论数据,将删除目标表元素后的索引表进行分页存储,其中,每页的存储内容中包括与至少一个指定层级的历史讨论数据关联的子表内容;再针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在树形结构图中删除相应的联动树节点。
具体的,处理设备确定目标讨论数据下级的三级讨论数据,并分别在包含目标讨论数据的其他级讨论数据聚类子表、以及讨论数据统计子表中,删除三级讨论数据对应的联动表元素。
下面结合附图4g,对删除二级讨论数据的过程进行说明,参阅图4g所示,其为本申请实施例中删除二级讨论数据的过程示意图,在完成二级讨论数据j1的同步删除操作之后,处理设备确定j1下的三级讨论数据k1和k2,接着从“i0的下级讨论数据聚类子表”中删除k1和k2;然后,处理设备从“ItemID关联的全部讨论数据统计子表”中删除k1和k2;进而,处理设备从“j1下的三级讨论数据聚类子表”中删除k1和k2。进而能够得到图4g所示意的树形结构图和处理后的子表内容,其中,目标讨论数据对应的树节点根据实际的处理需要可以最后被删除。
情况三、目标讨论数据为三级讨论数据。
在这种情况下,由于在同步删除过程中已经删除了目标讨论数据对应的目标表元素,且不存在三级讨论数据下级的讨论数据,故不存在对应的联动讨论数据,也不会进行相关的联动表元素删除操作。
基于上述发明内容,当处理设备接收针对目标内容关联的各个讨论数据的呈现请求时,处理设备获取目标内容关联的索引表,并根据索引表,确定目标内容关联的、各数据层级下的表元素,以及确定归属于指定层级的历史讨论数据总数,其中,索引表是基于各个讨论数据之间的回复关系创建的;然后分别获取各数据层级下表元素对应的历史讨论数据内容,并根据预设的数据展示形式,展示各数据层级下的历史讨论数据内容和历史讨论数据总数。
具体的,本申请实施例中索引表中仅存储有历史讨论数据的标识信息,而对于历史讨论数据的具体内容、对应的发布者信息、以及父级讨论数据对应的发布者信息等内容,均单独存储在另外的存储区域中。当处理设备需要拉取历史讨论数据时,则需要按照实际的展示需要,基于索引表中的索引信息获取历史讨论数据的细节性信息,进而针对性呈现给相关的访问对象。
需要说明的是,本申请实施例中涉及到的目标内容和讨论数据均发表在公共平台上时,由于不涉及到发布对象的相关隐私内容,且为了能够对数据的恢复和合规性审查提供依据,因此可以删除树形结构图中对应的树节点,以及删除索引表中对应的表元素。另外,在一些可能的应用场景中,也可以根据实际的处理需要,额外删除讨论数据相关的其他内容,本申请不做具体限制。
例如,参阅图5a所示,其为本申请实施例中一种历史讨论数据的展示示意图,根据图5a所示意的展示形式,可以应用于包括短视频播放在内的视频播放的场景中。假设设置的展示方式为二级展示,即,将直接评论的评论贴作为一种展示的数据层级,使得各个评论贴被平铺展示;将评论贴的一级回复数据、针对一级回复数据的二级回复数据、以及针对二级回复数据的三级回复等内容,作为一种展示的数据层级,使得各级回复数据被平铺展示,则可以展示如图5a所示意的内容。假设本申请中设置的数据层级为3级,设置有5类子表,对于评论贴而言,相当于一级讨论数据;对于一级回复数据而言,相当于二级讨论数据;对于二级回复以及二级以上的回复数据而言,相当于三级讨论数据。
那么,在呈现如图5a所示意的内容时,处理设备先从索引表中确定表征目标内容下全部一级讨论数据的聚类子表,以及获取统计目标内容下全部讨论数据总数的统计子表,确定当前对于视频的评论回复总数,以及确定平铺展示的各个一级讨论数据(评论贴);当确定针对一个一级讨论数据发送回复数据拉取请求时,则索引确定该一级讨论数据下的各个二级讨论数据,并拉取每个二级讨论数据信息的三级讨论数据,以及将二级讨论数据和三级讨论数据进行平铺展示,其中,每个讨论数据在显示时,标注有针对性回复的对象。
又例如,参阅图5b所示,其为本申请实施例中一种历史讨论数据的展示示意图,根据图5b所示意的展示形式,可以应用于包括中视频、长视频播放在内的视频播放场景中。假设设置的展示方式为三级展示,将直接评论的评论贴作为一种展示的数据层级,将评论帖平铺展示;将回复评论贴的一级回复数据作为一种展示的数据层级,并设置针对相同评论帖的各个一级回复数据平铺展示;将回复一级回复数据的二级回复数据、对二级回复数据进行回复的三级回复数据等在内的n级回复,作为一种展示的数据等级,使得二级及以上的回复数据被设置为平铺展示。
假设本申请中设置的数据层级为3级,设置有5类子表,对于评论贴而言,相当于一级讨论数据;对于一级回复数据而言,相当于二级讨论数据;对于二级回复以及二级以上的回复数据而言,相当于三级讨论数据。
那么,在呈现如图5b示意的内容时,处理设备从索引表中拉取一级讨论数据,并进行平铺展示,当确定接收到针对一级讨论数据下的二级讨论数据的展示请求时,则根据索引表中记录的该一级讨论数据下的各个二级讨论数据,拉取相应的各个二级讨论数据进行平铺展示,以及在要显示多回复层级的讨论数据时,继续根据索引表,拉取二级讨论数据下三级讨论数据,其中,讨论数据在呈现时标注有针对性回复的对象。
这样,本申请提出的索引表能够适用于多种展示场景中,为讨论数据的拉取提供索引支持,极大的保证了拉取的数据的有效性,以及呈现的统计结果的有效性。
基于本申请提出的技术方案,需要理解的是,在实际处理过程中,可以根据讨论数据的显示结构配置索引表的存在形式和内容覆盖范围,使得索引表的构建适配于实际的处理需要,如,目前三级数据层级,即可满足以树形结构呈现讨论数据的需求,则可以针对三级数据层级配置索引表中包括的子表类型,且索引表的存储便捷,借助于常规的带有列表的存储中间件或者支持索引列表的数据库即可完成存储,保证了客观存在的数据关系存储的可行性和便捷性。另外,借助于索引链表或者索引列表的结构,能够极大地降低对于数据的操作时间,降低了增删改查的复杂度,且具有耗时少,效率高的优势。
另外,本申请提出的索引表,不仅支持普通的拉取列表需要,即,通过上一级的回复或评论ID扩展出下级评论等;而且,考虑到针对目标内容的讨论数据总数能够反映出目标内容的热度,且得到的讨论数据总数需要外显。因此,通过构建目标内容下全部讨论数据的索引,以实现更好的管理讨论数据总数,并能够聚集相关联的讨论数据,使得在需要进行讨论数据统计的场景下,做到讨论数据总数有据可依,而不是单纯的维护一个数字。
与此同时,在讨论数据的删除层级上,相较于在存储设计上递归向下遍历时间复杂度大从而只能删除自身,而无法移除联动影响的下级讨论数据的现有技术缺陷,本申请保证了总数和外显数据的准确性,而不是单纯进行简单的减一操作,保证了外显数与列表展示内容数的一致性。
再者,本申请中,对于维护的索引表和树形结构图而言,在涉及到讨论数据的增删,尤其是讨论数据的删除时,对于在树形结构图中删除讨论数据对应的树节点而言,对于底层存储来说实质上是一个遍历以及批量执行删除操作的过程。本申请在面对一些庞大的树形结构的删除时,提出了采用翻页的操作将树形结构的流程,划分为了多个子树形结构的删除,这使得批量进行删除操作所占用的时间、空间都相对可控,保证删除操作的成功率。
其次,对于本申请提出的翻页+自下而上的删除方案而言,为简化树形结构的删除、减小删除操作的重复执行消耗、提高成功率带来了可能。例如,在进行讨论数据的删除过程中,遍历树形结构,删除完三级讨论数据对应的树节点后,此时删除流程中某一环节发生错误或服务器发生问题,需要重新开始执行删除流程,此时重新拉取相关讨论数据时,由于三级讨论数据对应的树节点已被删除,且从存储中被提出,相当于缩小了树形结构的规模,减小了树形结构的层级。由于树形结构的大小规模关系着删除任务的规模与操作次数,考虑到在翻页向下遍历一级回复的过程中,已经被遍历到的一级回复及其回复已经从存储中删除,因此不利于删除操作的进行。在此基础上,本申请采用了自底向上+翻页删除的处理方式,相当于通过剪枝或减小层级缩小树形结构,假设部分删除操作出现了失败,重复删除操作也针对未完成的删除任务进行即可,不需全部重新处理。
基于同一发明构思,参阅图6所示,其为本申请实施例中一种数据关系的处理装置的逻辑结构示意图,数据关系的处理装置600中包括获得单元601、创建单元602,以及表征单元603,其中,
获得单元601,用于获得目标内容关联的讨论数据,确定讨论数据对于目标内容的数据层级,其中,数据层级用于表征讨论数据之间的嵌套回复关系;
创建单元602,用于根据讨论数据的数据层级,在预设的指针图谱中创建讨论数据对应的数据节点,以及在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;
表征单元603,用于基于指针图谱和目标索引表,表征目标内容对应的数据关系。
可选的,在预设的指针图谱中创建讨论数据对应的数据节点时,创建单元602用于:
在预设的指针图谱中建立讨论数据对应的数据节点;
根据设置的指针指向关系,确定与讨论数据之间存在指针指向关系的其他讨论数据,并在指针图谱中创建相应的数据节点之间的指针,其中,指针指向关系用于表征不同数据层级的讨论数据之间的回复关系。
可选的,创建相应的数据节点之间的指针时,创建单元602用于:指向溯源的一级讨论数据的根评论指针、指向回复的父级讨论数据的直接回复指针、以及指向溯源的二级讨论数据的根回复指针;其中,一级讨论数据为直接对目标内容进行回复的历史讨论数据,二级讨论数据为针对一级讨论数据进行回复的历史讨论数据,父级讨论数据为进行针对性回复的历史讨论数据。
可选的,在数据层级对应的目标索引表中,新增讨论数据的标识信息对应的表元素时,创建单元602用于:
根据预先定义的、每个子表中表元素对应的数据层级范围,确定讨论数据的数据层级对应的统计子表和聚类子表;
将讨论数据的标识信息,作为统计子表中的末端表元素,增加在统计子表中,并根据讨论数据与归属于相同父级讨论数据的其他讨论数据之间的时序关系,在相应的聚类子表中新增对应的表元素。
可选的,根据预先定义的、每个子表中表元素对应的数据层级范围,确定讨论数据的数据层级对应的统计子表和聚类子表之前,创建单元602还用于:
预先针对目标内容关联的指定数据层级的讨论数据,定义对应的指定层级聚类子表;
预先针对目标内容关联的讨论数据,定义对应的总量统计子表,以及针对目标内容关联的、指定数据层级的讨论数据,定义对应的指定层级统计子表。
可选的,接收到针对目标内容关联的各个历史讨论数据的呈现请求时,装置还包括处理单元604,处理单元604用于:
获取目标内容关联的索引表,并根据索引表,确定目标内容关联的、各数据层级下的表元素,以及确定归属于指定层级的历史讨论数据总数,其中,索引表是基于各个讨论数据之间的回复关系创建的;
分别获取各数据层级下表元素对应的历史讨论数据内容,并根据预设的数据展示形式,展示各数据层级下的历史讨论数据内容和历史讨论数据总数。
可选的,确定讨论数据对于目标内容的数据层级时,获得单元601用于:
根据讨论数据与获取的历史讨论数据之间的回复关系,溯源确定讨论数据相对目标内容的嵌套回复总层数;
若确定嵌套回复总层数高于设定的回复层数阈值,则基于回复层数阈值确定讨论数据对于目标内容的数据层级;
若确定嵌套回复总层数不高于回复层数阈值,则基于嵌套回复总层数确定讨论数据对于目标内容的数据层级。
可选的,接收到针对目标讨论数据的删除指示后,装置中的处理单元604还用于:
获取针对目标内容关联的各个历史讨论数据创建的索引表,并获取根据指针图谱建立的、目标内容关联的树形结构图;
在索引表中,删除所目标讨论数据对应的目标表元素,以及在树形结构图中删除目标讨论数据对应的树节点;
根据指针图谱,确定目标讨论数据下级的联动讨论数据,并在索引表中,删除每个联动讨论数据对应的联动表元素,以及在树形结构中删除每个联动讨论数据对应的联动树节点。
可选的,在索引表中,删除每个联动讨论数据对应的联动表元素时,处理单元604用于:
根据所述目标内容关联的、指定层级的历史讨论数据,将所述索引表进行分页存储,其中,每页的存储内容包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除所述存储内容中包括的、联动讨论数据对应的联动表元素。
可选的,删除存储内容中包括的、联动讨论数据对应的联动表元素时,处理单元604用于:
根据指针图谱,确定目标讨论数据关联的、数据层级高于目标讨论数据的目标联动讨论数据,其中,数据层级越高表征对应的讨论数据相对于目标内容的嵌套回复层数越多;
按照数据层级由高到低的顺序,在存储内容中,依次删除每个目标联动讨论数据对应的联动表元素。
可选的,在树形结构图中删除每个联动讨论数据对应的联动树节点时,处理单元604用于:
针对每页的存储内容,分别执行以下操作:
确定存储内容中包括的目标联动讨论数据;
按照对应的深度值由高到低的顺序,在树形结构图中,依次删除每个深度值下与目标联动讨论数据对应的联动树节点,其中,树节点的深度值与对应的讨论数据的数据层级对应相同。
基于同一发明构思,参阅图7所示,其为本申请实施例中一种数据关系的处理装置的逻辑结构示意图,数据关系的处理装置700中包括接收单元701、以及删除单元702,其中,
接收单元701,用于接收针对目标内容关联的目标讨论数据的删除指示后,在所述目标内容关联的索引表中,删除所述目标讨论数据对应的目标表元素;
删除单元702,用于根据所述目标内容关联的树形结构图,确定所述目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,其中,所述数据层级表征讨论数据之间的嵌套回复关系。
可选的,针对所述目标内容关联的讨论数据设置有三个数据层级,所述索引表中包括溯源至相同一级讨论数据的其他级讨论数据统计子表、溯源至相同一级讨论数据的二级讨论数据聚类子表、溯源至相同二级讨论数据的三级讨论数据聚类子表、一级讨论数据聚类子表、以及所述目标内容关联的讨论数据统计子表。
可选的,所述目标讨论数据为一级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容时,所述删除单元702用于:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点后,删除归属于二级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
可选的,所述删除归属于三级讨论数据的联动表元素时,所述删除单元702用于:
遍历所述目标讨论数据对应的二级讨论数据聚类子表,确定所述目标讨论数据下级的二级讨论数据,以及遍历每个二级讨论数据对应的三级讨论数据聚类子表,确定溯源至所述目标讨论数据的三级讨论数据;
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的三级讨论数据聚类子表中,删除所述三级讨论数据对应的联动表元素。
可选的,所述删除归属于二级讨论数据的联动表元素时,所述删除单元702用于:
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的二级讨论数据聚类子表中,删除与所述目标讨论数据下级的二级讨论数据对应的联动表元素。
可选的,所述目标讨论数据为二级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容时,所述删除单元702用于:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
可选的,所述删除归属于三级讨论数据的联动表元素时,所述删除单元702用于:
确定所述目标讨论数据下级的三级讨论数据,并分别在包含所述目标讨论数据的其他级讨论数据聚类子表、以及所述讨论数据统计子表中,删除所述三级讨论数据对应的联动表元素。
在介绍了本申请示例性实施方式的数据关系的处理方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为***、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备,参阅图8所示,其为应用本申请实施例的一种电子设备的一个硬件组成结构示意图,电子设备800可以至少包括处理器801、以及存储器802。其中,存储器802存储有程序代码,当程序代码被处理器801执行时,使得处理器801执行上述任意一种数据关系的处理的步骤。
在一些可能的实施方式中,根据本申请的计算装置可以至少包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本说明书上述描述的根据本申请各种示例性实施方式的数据关系的处理步骤。例如,处理器可以执行如图3a、4a中所示的步骤。
下面参照图9来描述根据本申请的这种实施方式的计算装置900。如图9所示,其为应用本申请实施例中的另一种电子设备的硬件组成结构示意图,计算装置900以通用计算装置的形式表现。计算装置900的组件可以包括但不限于:上述至少一个处理单元901、上述至少一个存储单元902、连接不同***组件(包括存储单元902和处理单元901)的总线903。
总线903表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、***总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储单元902可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)9021和/或高速缓存存储单元9022,还可以进一步包括只读存储器(ROM)9023。
存储单元902还可以包括具有一组(至少一个)程序模块9024的程序/实用工具9025,这样的程序模块9024包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
计算装置900也可以与一个或多个外部设备904(例如键盘、指向设备等)通信,还可与一个或者多个使得对象能与计算装置900交互的设备通信,和/或与使得该计算装置900能与一个或多个其它计算装置进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口905进行。并且,计算装置900还可以通过网络适配器906与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器906通过总线903与用于计算装置900的其它模块通信。应当理解,尽管图中未示出,可以结合计算装置900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
与上述方法实施例基于同一发明构思,本申请提供的数据关系的处理的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述描述的根据本申请各种示例性实施方式的数据关系的处理中的步骤,例如,电子设备可以执行如图3a、4a中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (20)

1.一种数据关系的处理方法,其特征在于,包括:
获得目标内容关联的讨论数据,确定所述讨论数据对于所述目标内容的数据层级,其中,所述数据层级用于表征讨论数据之间的嵌套回复关系;
根据所述讨论数据的数据层级,在预设的指针图谱中创建所述讨论数据对应的数据节点,以及在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,所述目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;
基于所述指针图谱和所述目标索引表,表征所述目标内容对应的数据关系。
2.如权利要求1所述的方法,其特征在于,所述在预设的指针图谱中创建所述讨论数据对应的数据节点,包括:
在预设的指针图谱中建立所述讨论数据对应的数据节点;
根据设置的指针指向关系,确定与所述讨论数据之间存在所述指针指向关系的其他讨论数据,并在所述指针图谱中创建相应的数据节点之间的指针,其中,所述指针指向关系用于表征不同数据层级的讨论数据之间的回复关系。
3.如权利要求2所述的方法,其特征在于,创建相应的数据节点之间的指针,包括:指向溯源的一级讨论数据的根评论指针、指向回复的父级讨论数据的直接回复指针、以及指向溯源的二级讨论数据的根回复指针;其中,所述一级讨论数据为直接对目标内容进行回复的历史讨论数据,所述二级讨论数据为针对所述一级讨论数据进行回复的历史讨论数据,所述父级讨论数据为进行针对性回复的历史讨论数据。
4.如权利要求1所述的方法,其特征在于,在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素,包括:
根据预先定义的、每个子表中表元素对应的数据层级范围,确定所述讨论数据的数据层级对应的统计子表和聚类子表;
将所述讨论数据的标识信息,作为所述统计子表中的末端表元素,增加在所述统计子表中,并根据所述讨论数据与归属于相同父级讨论数据的其他讨论数据之间的时序关系,在相应的聚类子表中新增对应的表元素。
5.如权利要求4所述的方法,其特征在于,根据预先定义的、每个子表中表元素对应的数据层级范围,确定所述讨论数据的数据层级对应的统计子表和聚类子表之前,还包括:
预先针对所述目标内容关联的指定数据层级的讨论数据,定义对应的指定层级聚类子表;
预先针对所述目标内容关联的讨论数据,定义对应的总量统计子表,以及针对所述目标内容关联的、指定数据层级的讨论数据,定义对应的指定层级统计子表。
6.如权利要求1所述的方法,其特征在于,接收到针对所述目标内容关联的各个历史讨论数据的呈现请求时,还包括:
获取目标内容关联的索引表,并根据所述索引表,确定所述目标内容关联的、各数据层级下的表元素,以及确定归属于指定层级的历史讨论数据总数,其中,所述索引表是基于各个讨论数据之间的回复关系创建的;
分别获取所述各数据层级下表元素对应的历史讨论数据内容,并根据预设的数据展示形式,展示各数据层级下的历史讨论数据内容和历史讨论数据总数。
7.如权利要求1-6任一项所述的方法,其特征在于,确定所述讨论数据对于所述目标内容的数据层级,包括:
根据所述讨论数据与获取的历史讨论数据之间的回复关系,溯源确定所述讨论数据相对所述目标内容的嵌套回复总层数;
若确定所述嵌套回复总层数高于设定的回复层数阈值,则基于所述回复层数阈值确定所述讨论数据对于所述目标内容的数据层级;
若确定所述嵌套回复总层数不高于所述回复层数阈值,则基于所述嵌套回复总层数确定所述讨论数据对于所述目标内容的数据层级。
8.如权利要求1-6任一项所述的方法,其特征在于,接收到针对目标讨论数据的删除指示后,还包括:
获取针对所述目标内容关联的各个历史讨论数据创建的索引表,并获取根据所述指针图谱建立的、所述目标内容关联的树形结构图;
在所述索引表中,删除所目标讨论数据对应的目标表元素,以及在所述树形结构图中删除所述目标讨论数据对应的树节点;
根据所述指针图谱,确定所述目标讨论数据下级的联动讨论数据,并在所述索引表中,删除每个联动讨论数据对应的联动表元素,以及在所述树形结构中删除每个联动讨论数据对应的联动树节点。
9.如权利要求8所述的方法,其特征在于,所述在所述索引表中,删除每个联动讨论数据对应的联动表元素,包括:
根据所述目标内容关联的、指定层级的历史讨论数据,将所述索引表进行分页存储,其中,每页的存储内容包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除所述存储内容中包括的、联动讨论数据对应的联动表元素。
10.如权利要求9所述的方法,其特征在于,所述删除所述存储内容中包括的、联动讨论数据对应的联动表元素,包括:
根据所述指针图谱,确定所述目标讨论数据关联的、数据层级高于所述目标讨论数据的目标联动讨论数据,其中,数据层级越高表征对应的讨论数据相对于目标内容的嵌套回复层数越多;
按照数据层级由高到低的顺序,在所述存储内容中,依次删除每个目标联动讨论数据对应的联动表元素。
11.如权利要求9所述的方法,其特征在于,所述在所述树形结构图中删除每个联动讨论数据对应的联动树节点,包括:
针对每页的存储内容,分别执行以下操作:
确定所述存储内容中包括的目标联动讨论数据;
按照对应的深度值由高到低的顺序,在所述树形结构图中,依次删除每个深度值下与目标联动讨论数据对应的联动树节点,其中,树节点的深度值与对应的讨论数据的数据层级对应相同。
12.一种数据关系的处理方法,其特征在于,包括:
接收针对目标内容关联的目标讨论数据的删除指示后,在所述目标内容关联的索引表中,删除所述目标讨论数据对应的目标表元素;
根据所述目标内容关联的树形结构图,确定所述目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,其中,所述数据层级表征讨论数据之间的嵌套回复关系。
13.如权利要求12所述的方法,其特征在于,针对所述目标内容关联的讨论数据设置有三个数据层级,所述索引表中包括溯源至相同一级讨论数据的其他级讨论数据统计子表、溯源至相同一级讨论数据的二级讨论数据聚类子表、溯源至相同二级讨论数据的三级讨论数据聚类子表、一级讨论数据聚类子表、以及所述目标内容关联的讨论数据统计子表。
14.如权利要求13所述的方法,其特征在于,所述目标讨论数据为一级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,包括:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点后,删除归属于二级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
15.如权利要求14所述的方法,其特征在于,所述删除归属于三级讨论数据的联动表元素,包括:
遍历所述目标讨论数据对应的二级讨论数据聚类子表,确定所述目标讨论数据下级的二级讨论数据,以及遍历每个二级讨论数据对应的三级讨论数据聚类子表,确定溯源至所述目标讨论数据的三级讨论数据;
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的三级讨论数据聚类子表中,删除所述三级讨论数据对应的联动表元素。
16.如权利要求14所述的方法,其特征在于,所述删除归属于二级讨论数据的联动表元素,包括:
分别在所述讨论数据统计子表、所述目标讨论数据对应的其他级讨论数据聚类子表,以及相应的二级讨论数据聚类子表中,删除与所述目标讨论数据下级的二级讨论数据对应的联动表元素。
17.如权利要求13所述的方法,其特征在于,所述目标讨论数据为二级讨论数据;所述按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,包括:
根据指定层级的历史讨论数据,将删除所述目标表元素后的所述索引表进行分页存储,其中,每页的存储内容中包括与至少一个所述指定层级的历史讨论数据关联的子表内容;
针对每页的存储内容,删除归属于三级讨论数据的联动表元素,并在所述树形结构图中删除相应的联动树节点。
18.如权利要求17所述的方法,其特征在于,所述删除归属于三级讨论数据的联动表元素,包括:
确定所述目标讨论数据下级的三级讨论数据,并分别在包含所述目标讨论数据的其他级讨论数据聚类子表、以及所述讨论数据统计子表中,删除所述三级讨论数据对应的联动表元素。
19.一种数据关系的处理装置,其特征在于,包括:
获得单元,用于获得目标内容关联的讨论数据,确定所述讨论数据对于所述目标内容的数据层级,其中,所述数据层级用于表征讨论数据之间的嵌套回复关系;
创建单元,用于根据所述讨论数据的数据层级,在预设的指针图谱中创建所述讨论数据对应的数据节点,以及在所述数据层级对应的目标索引表中,新增所述讨论数据的标识信息对应的表元素,其中,每个数据节点关联有指向指定数据层级的其他讨论数据的指针,所述目标索引表中至少包括用于统计指定类型讨论数据总数的统计子表,以及用于聚类指定层级讨论数据的聚类子表;
表征单元,用于基于所述指针图谱和所述目标索引表,表征所述目标内容对应的数据关系。
20.一种数据关系的处理装置,其特征在于,包括:
接收单元,用于接收针对目标内容关联的目标讨论数据的删除指示后,在所述目标内容关联的索引表中,删除所述目标讨论数据对应的目标表元素;
删除单元,用于根据所述目标内容关联的树形结构图,确定所述目标讨论数据下级的联动讨论数据,以及按照数据层级由高至低的顺序,在所述索引表和所述树形结构图中,分别删除每一数据层级的联动讨论数据对应的内容,其中,所述数据层级表征讨论数据之间的嵌套回复关系。
CN202210430236.3A 2022-04-22 2022-04-22 一种数据关系的处理方法、装置、电子设备及存储介质 Pending CN116975367A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210430236.3A CN116975367A (zh) 2022-04-22 2022-04-22 一种数据关系的处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210430236.3A CN116975367A (zh) 2022-04-22 2022-04-22 一种数据关系的处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN116975367A true CN116975367A (zh) 2023-10-31

Family

ID=88473569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210430236.3A Pending CN116975367A (zh) 2022-04-22 2022-04-22 一种数据关系的处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116975367A (zh)

Similar Documents

Publication Publication Date Title
US11733829B2 (en) Monitoring tree with performance states
US10469344B2 (en) Systems and methods for monitoring and analyzing performance in a computer system with state distribution ring
US11281793B2 (en) User permission data query method and apparatus, electronic device and medium
CN110019396B (zh) 一种基于分布式多维分析的数据分析***及方法
US10523538B2 (en) User interface that provides a proactive monitoring tree with severity state sorting
Poorthuis et al. Making big data small: strategies to expand urban and geographical research using social media
US9142049B2 (en) Proactive monitoring tree providing distribution stream chart with branch overlay
US10579678B2 (en) Dynamic hierarchy generation based on graph data
US11416473B2 (en) Using path encoding method and relational set operations for search and comparison of hierarchial structures
CN105468605A (zh) 一种实体信息图谱生成方法及装置
CN112416923A (zh) 一种元数据管理方法及装置、设备、存储介质
CN113190645A (zh) 一种索引结构建立方法、装置、设备及存储介质
US9996535B1 (en) Efficient hierarchical user interface
CN111221785A (zh) 一种多源异构数据的语义数据湖构建方法
CN109033157B (zh) 一种基于自定义搜索条件树的复杂数据检索方法和***
CN116150436B (zh) 一种基于节点树的数据展示方法与***
CN110389944B (zh) 一种基于模型的元数据管理***及方法
CN107291875B (zh) 一种基于元数据图的元数据组织管理方法和***
CN116975367A (zh) 一种数据关系的处理方法、装置、电子设备及存储介质
CN113407678B (zh) 知识图谱构建方法、装置和设备
CN108959584A (zh) 一种基于社区结构的处理图数据的方法及装置
CN108536872B (zh) 优化知识库结构的方法与装置
CN112860725A (zh) Sql自动生成方法和装置、存储介质及电子设备
CN112685557A (zh) 可视化信息资源管理方法及装置
CN115630170B (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