CN108874753A - 主题帖回复的查找方法、装置和计算机设备 - Google Patents
主题帖回复的查找方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN108874753A CN108874753A CN201810607392.6A CN201810607392A CN108874753A CN 108874753 A CN108874753 A CN 108874753A CN 201810607392 A CN201810607392 A CN 201810607392A CN 108874753 A CN108874753 A CN 108874753A
- Authority
- CN
- China
- Prior art keywords
- reply
- section
- returned
- signed
- target retro
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提出一种主题帖回复的查找方法、装置和计算机设备,上述主题帖回复的查找方法包括:获取主题帖中待查找的目标回复的标识信息;根据所述标识信息确定所述目标回复所属的区段;根据所述标识信息在所属的区段内,查找所述目标回复。本申请可以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种主题帖回复的查找方法、装置和计算机设备。
背景技术
现有相关技术中,对于贴吧或社区中发表的主题帖,一般采用“时间轴”方式展示主题帖的所有回复,其中一些回复由于不符合法律要求、涉嫌广告或被投诉等因素在展示中被过滤。因此,面对千万级别回复,如何快速定位某个回复在主题帖中的有效位置,以及如何快速定位某个页面展示的所有有效回复是一件非常有挑战性的工作。
现有的技术方案中,是将每个主题帖的全部回复按照标识(Identifier;以下简称:ID)线性存储,采用遍历全部回复的方式查找某个回复并逐一过滤已删除回复。但这种方案的查找效率较低,容易导致服务器的性能出现瓶颈并导致核心服务的可用性下降。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种主题帖回复的查找方法,以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
本申请的第二个目的在于提出一种主题帖回复的查找装置。
本申请的第三个目的在于提出一种计算机设备。
本申请的第四个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本申请第一方面实施例提出了一种主题帖回复的查找方法,包括:获取主题帖中待查找的目标回复的标识信息;根据所述标识信息确定所述目标回复所属的区段;根据所述标识信息在所属的区段内,查找所述目标回复。
本申请实施例的主题帖回复的查找方法中,获取主题帖中待查找的目标回复的标识信息之后,根据上述标识信息确定上述目标回复所属的区段,然后根据上述标识信息在所属的区段内,查找目标回复,从而可以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
为达上述目的,本申请第二方面实施例提出了一种主题帖回复的查找装置,包括:获取模块,用于获取主题帖中待查找的目标回复的标识信息;确定模块,用于根据所述获取模块获取的标识信息确定所述目标回复所属的区段;查找模块,用于根据所述标识信息在所述确定模块确定的所属的区段内,查找所述目标回复。
本申请实施例的主题帖回复的查找装置中,获取模块获取主题帖中待查找的目标回复的标识信息之后,确定模块根据上述标识信息确定上述目标回复所属的区段,然后查找模块根据上述标识信息在所属的区段内,查找目标回复,从而可以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
为达上述目的,本申请第三方面实施例提出一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上所述的方法。
为了实现上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请主题帖回复的查找方法一个实施例的流程图;
图2为本申请主题帖回复的查找方法另一个实施例的流程图;
图3为本申请主题帖回复的查找方法再一个实施例的流程图;
图4为本申请主题帖回复的查找方法中对主题帖的回复进行区段划分一个实施例的示意图;
图5为本申请主题帖回复的查找方法再一个实施例的流程图;
图6为本申请主题帖回复的查找方法再一个实施例的流程图;
图7为本申请主题帖回复的查找装置一个实施例的结构示意图;
图8为本申请主题帖回复的查找装置另一个实施例的结构示意图;
图9为本申请计算机设备一个实施例的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
图1为本申请主题帖回复的查找方法一个实施例的流程图,如图1所示,上述主题帖回复的查找方法可以包括:
步骤101,获取主题帖中待查找的目标回复的标识信息。
具体地,对于一个主题帖来说,待查找的目标回复的标识信息可以为目标回复的回帖标识,举例来说,上述回帖标识可以为8字节长度的正整数,由全局标识分配器按照累加规则递增分配;上述待查找的目标回复的标识信息也可以为上述目标回复的有效偏移量,举例来说,待查找的目标回复为主题帖A的所有回复中的第100个有效回复,那么上述目标回复的有效偏移量即为100。
步骤102,根据上述标识信息确定上述目标回复所属的区段。
步骤103,根据上述标识信息在所属的区段内,查找上述目标回复。
本实施例中,将主题帖的所有回复按连续N个回复划分为一个区段(Zone),举例来说,可以将连续10000个回复划分为一个区段。在需要查找目标回复时,需要先根据待查找的目标回复的标识信息确定上述目标回复所属的区段,然后根据上述标识信息在所属的区段内,查找上述目标回复。
上述主题帖回复的查找方法中,获取主题帖中待查找的目标回复的标识信息之后,根据上述标识信息确定上述目标回复所属的区段,然后根据上述标识信息在所属的区段内,查找目标回复,从而可以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
图2为本申请主题帖回复的查找方法另一个实施例的流程图,如图2所示,本申请图1所示实施例中,步骤102之前,还包括:
步骤201,当上述主题帖的回复数大于预定的回复阈值时,对上述主题帖的回复进行区段划分。
其中,上述预定的回复阈值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定的回复阈值的大小不作限定,举例来说,上述预定的回复阈值可以为100000。
图3为本申请主题帖回复的查找方法再一个实施例的流程图,如图3所示,本申请图2所示实施例中,步骤201可以包括:
步骤301,当上述主题帖的回复数大于预定的回复阈值时,遍历上述主题帖的每个回复的回帖标识。
步骤302,根据当前遍历的回帖标识获取上述主题帖当前的回复数。
步骤303,判断上述主题帖当前的回复数是否小于预定的区段阈值。如果是,则执行步骤304;如果上述主题帖当前的回复数大于或等于预定的区段阈值,则执行步骤305。
其中,上述预定的区段阈值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定的回复阈值的大小不作限定,举例来说,上述预定的区段阈值可以为10000。
步骤304,将当前遍历的回复划分在当前区段。然后执行步骤306。
步骤305,将当前遍历的回复划分在下一区段。然后执行步骤306。
步骤306,判断当前遍历的回复是否有效。如果是,则执行步骤307;如果当前遍历的回复无效,则执行步骤301。
步骤307,将当前遍历的回复所在区段的有效回复数加上预定数值。
其中,上述预定数值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定数值的大小不作限定,举例来说,上述预定数值可以为1。
步骤308,根据当前遍历的回复的回帖标识和当前遍历的回复所在区段中已遍历的回帖标识确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
在具体实现时,可以每遍历一个回帖标识,就将当前遍历的回帖标识与所在区段中已遍历的回帖标识进行对比,确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
进一步地,在将上述主题帖的所有回复的回帖标识遍历完毕之后,可以设置上述主题帖的头部信息(header),其中,上述主题帖的头部信息可以包括以下字段“tid”、“total_post_num”、“valid_post_num”和“max_unit_index”,其中,“tid”为上述主题帖的标识,“total_post_num”是上述主题帖的全部回复数,“valid_post_num”是上述主题帖的有效回复数,“max_unit_index”是对上述主题帖的回复进行区段划分所获得的区段的数量。如图4所示,图4为本申请主题帖回复的查找方法中对主题帖的回复进行区段划分一个实施例的示意图。
图5为本申请主题帖回复的查找方法再一个实施例的流程图,本实施例中,上述目标回复的标识信息可以为上述目标回复的回帖标识。如图5所示,本申请图1所示实施例中,步骤102可以包括:
步骤501,遍历对上述主题帖的回复进行划分所获得的区段。
步骤502,如果上述目标回复的回帖标识在当前遍历的区段的回帖标识的最大值和最小值所界定的闭区间内,则确定上述目标回复属于当前遍历的区段。
这时,步骤103可以为:
步骤503,对所属的区段内的回帖标识进行遍历。
步骤504,如果当前遍历的回帖标识与上述目标回复的回帖标识相等,则确定当前遍历的回帖标识所对应的回复为上述目标回复。
另外,如果当前遍历的回帖标识与上述目标回复的回帖标识不相等,并且当前遍历的回帖标识不是上述目标回复所属区段内的最后一个回帖标识,则将所属区段的有效回复数加上预定数值,然后继续执行步骤503。
本实施例中,在查找到上述目标回复之后,可以将上述目标回复所属区段的有效回复数作为结果中的信息之一返回。
图6为本申请主题帖回复的查找方法再一个实施例的流程图,本实施例中,上述目标回复的标识信息可以为上述目标回复的有效偏移量。如图6所示,本申请图1所示实施例中,步骤102可以包括:
步骤601,遍历对上述主题帖的回复进行划分所获得的区段。
步骤602,如果当前遍历区段的有效回复数与已遍历区段的有效回复数之和大于上述目标回复的有效偏移量,则确定上述目标回复属于当前遍历的区段。
其中,上述目标回复的有效偏移量可以为上述目标回复的索引(index)。举例来说,如果待查找的目标回复为上述主题帖的第N个有效回复,则上述目标回复的有效偏移量即为N,N为正整数。
当然,如果待查找的目标回复为上述主题帖的倒数第N个有效回复,则上述目标回复的有效偏移量为上述主题帖的有效回复数减去N所获得的差值。
这时,步骤103可以为:
步骤603,对所属的区段内的回帖标识进行遍历。
步骤604,如果当前遍历的回帖标识有效,则将当前获取的有效回复数加上预定数值。
如上所述,上述预定数值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定数值的大小不作限定,举例来说,上述预定数值可以为1。
具体地,可以使用比特位映射(bitmap)来判断回帖标识(post_id)的有效性。具体地,可以建立一个二进制位数组,然后将post_id与上述二进制位数组中的每一位建立一一对应关系。
其中,post_id所在的字节为byte_no=post_id/8;
post_id所在的位为byte_offset=post_id%8。
当判断一个post_id的有效性时,可以使用数组操作获取post_id所在的字节byte_no,再按按位运算获得post_id所在的位byte_offset。如果post_id所在的位byte_offset为“0”,表示post_id有效;如果post_id所在的位byte_offset为“1”,表示post_id无效。
步骤605,如果加上预定数值后的有效回复数等于上述目标回复的有效偏移量,则确定当前遍历的回帖标识对应的回复为上述目标回复。
另外,如果加上预定数值后的有效回复数不等于上述目标回复的有效偏移量,并且当前遍历的回帖标识不是上述目标回复所属区段内的最后一个回帖标识,则将所属区段的有效回复数加上上述预定数值,然后继续执行步骤603。
本实施例中,在查找到上述目标回复之后,可以将上述目标回复所属区段的有效回复数作为结果中的信息之一返回。
进一步地,本申请实施例中,对区段的有效回复数进行更新操作,可以在上述主题帖满足预定条件时执行,其中上述预定条件可以为主题帖的全部回复数大于或等于预定的回复阈值,或者上述主题帖的标题命中预定关键词等等,本实施例对上述预定条件不作限定。
本申请实施例提供的主题帖回复的查找方法可以有效降低主题帖中待查找的目标回复的查找耗时,提高上述目标回复的查找效率,对于主题帖的回复数达到十万以上时,目标回复的平均查找耗时下降60%,对于主题帖的回复数达到一百万以上时,目标回复的平均查找耗时下降92%。并且应对热点主题帖的能力大幅提高,对于回复达到一百万以上的主题帖的负载能力提升12倍。
图7为本申请主题帖回复的查找装置一个实施例的结构示意图,本申请实施例中的主题帖回复的查找装置可以实现本申请实施例提供的主题帖回复的查找方法。如图7所示,上述主题帖回复的查找装置可以包括:获取模块71、确定模块72和查找模块73;
获取模块71,用于获取主题帖中待查找的目标回复的标识信息;具体地,对于一个主题帖来说,待查找的目标回复的标识信息可以为目标回复的回帖标识,举例来说,上述回帖标识可以为8字节长度的正整数,由全局标识分配器按照累加规则递增分配;上述待查找的目标回复的标识信息也可以为上述目标回复的有效偏移量,举例来说,待查找的目标回复为主题帖A的所有回复中的第100个有效回复,那么上述目标回复的有效偏移量即为100。
确定模块72,用于根据获取模块71获取的标识信息确定上述目标回复所属的区段;
查找模块73,用于根据上述标识信息在确定模块72确定的所属的区段内,查找上述目标回复。
本实施例中,将主题帖的所有回复按连续N个回复划分为一个区段(Zone),举例来说,可以将连续10000个回复划分为一个区段。在需要查找目标回复时,查找模块73需要先根据待查找的目标回复的标识信息确定上述目标回复所属的区段,然后根据上述标识信息在所属的区段内,查找上述目标回复。
上述主题帖回复的查找装置中,获取模块71获取主题帖中待查找的目标回复的标识信息之后,确定模块72根据上述标识信息确定上述目标回复所属的区段,然后获取模块73根据上述标识信息在所属的区段内,查找目标回复,从而可以实现根据所属的区段对主题帖中待查找的目标回复进行查找,提高主题帖中目标回复的查找效率,提高服务器的负载能力。
图8为本申请主题帖回复的查找装置另一个实施例的结构示意图,与图7所示的主题帖回复的查找装置相比,不同之处在于,图8所示的主题帖回复的查找装置还可以包括:划分模块74;
划分模块74,用于在确定模块72确定上述标识信息所属的区段之前,当上述主题帖的回复数大于预定的回复阈值时,对上述主题帖的回复进行区段划分。
其中,上述预定的回复阈值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定的回复阈值的大小不作限定,举例来说,上述预定的回复阈值可以为100000。
本实施例中,划分模块74,具体用于遍历上述主题帖的每个回复的回帖标识,根据当前遍历的回帖标识获取上述主题帖当前的回复数;如果上述主题帖当前的回复数小于预定的区段阈值,则将当前遍历的回复划分在当前区段;如果上述主题帖当前的回复数大于或等于预定的区段阈值,则将当前遍历的回复划分在下一区段。
其中,上述预定的区段阈值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定的回复阈值的大小不作限定,举例来说,上述预定的区段阈值可以为10000。
进一步地,上述主题帖回复的查找装置还可以包括:计算模块75;
计算模块75,用于在划分模块74对上述主题帖的回复进行区段划分之后,如果当前遍历的回复有效,则将当前遍历的回复所在区段的有效回复数加上预定数值;其中,上述预定数值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定数值的大小不作限定,举例来说,上述预定数值可以为1。
确定模块72,还用于在划分模块74对上述主题帖的回复进行区段划分之后,如果当前遍历的回复有效,则根据当前遍历的回复的回帖标识和当前遍历的回复所在区段中已遍历的回帖标识确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
在具体实现时,可以每遍历一个回帖标识,确定模块72就将当前遍历的回帖标识与所在区段中已遍历的回帖标识进行对比,确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
进一步地,在将上述主题帖的所有回复的回帖标识遍历完毕之后,可以设置上述主题帖的头部信息(header),其中,上述主题帖的头部信息可以包括以下字段“tid”、“total_post_num”、“valid_post_num”和“max_unit_index”,其中,“tid”为上述主题帖的标识,“total_post_num”是上述主题帖的全部回复数,“valid_post_num”是上述主题帖的有效回复数,“max_unit_index”是对上述主题帖的回复进行区段划分所获得的区段的数量,如图4所示。
本实施例的一种实现方式中,上述目标回复的标识信息可以为上述目标回复的回帖标识;
本实现方式中,确定模块72,具体用于遍历对上述主题帖的回复进行划分所获得的区段;如果上述目标回复的回帖标识在当前遍历的区段的回帖标识的最大值和最小值所界定的闭区间内,则确定上述目标回复属于当前遍历的区段。
这时,查找模块73,具体用于对所属的区段内的回帖标识进行遍历;如果当前遍历的回帖标识与上述目标回复的回帖标识相等,则确定当前遍历的回帖标识所对应的回复为上述目标回复。
另外,如果当前遍历的回帖标识与上述目标回复的回帖标识不相等,并且当前遍历的回帖标识不是上述目标回复所属区段内的最后一个回帖标识,则计算模块75可以将所属区段的有效回复数加上预定数值,然后查找模块73继续对所属的区段内的回帖标识进行遍历。
本实施例中,在查找模块73查找到上述目标回复之后,可以将上述目标回复所属区段的有效回复数作为结果中的信息之一返回。
本实施例的另一种实现方式中,上述目标回复的标识信息可以为上述目标回复的有效偏移量;
确定模块72,具体用于遍历对上述主题帖的回复进行划分所获得的区段;如果当前遍历区段的有效回复数与已遍历区段的有效回复数之和大于上述目标回复的有效偏移量,则确定上述目标回复属于当前遍历的区段。
其中,上述目标回复的有效偏移量可以为上述目标回复的索引(index)。举例来说,如果待查找的目标回复为上述主题帖的第N个有效回复,则上述目标回复的有效偏移量即为N,N为正整数。
当然,如果待查找的目标回复为上述主题帖的倒数第N个有效回复,则上述目标回复的有效偏移量为上述主题帖的有效回复数减去N所获得的差值。
这时,查找模块73,具体用于对所属的区段内的回帖标识进行遍历;如果当前遍历的回帖标识有效,则将当前获取的有效回复数加上预定数值;如果加上预定数值后的有效回复数等于上述目标回复的有效偏移量,则确定当前遍历的回帖标识对应的回复为上述目标回复。
如上所述,上述预定数值可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定数值的大小不作限定,举例来说,上述预定数值可以为1。
具体地,可以使用比特位映射(bitmap)来判断回帖标识(post_id)的有效性。具体地,可以建立一个二进制位数组,然后将post_id与上述二进制位数组中的每一位建立一一对应关系。
其中,post_id所在的字节为byte_no=post_id/8;
post_id所在的位为byte_offset=post_id%8。
当判断一个post_id的有效性时,可以使用数组操作获取post_id所在的字节byte_no,再按按位运算获得post_id所在的位byte_offset。如果post_id所在的位byte_offset为“0”,表示post_id有效;如果post_id所在的位byte_offset为“1”,表示post_id无效。
另外,如果加上预定数值后的有效回复数不等于上述目标回复的有效偏移量,并且当前遍历的回帖标识不是上述目标回复所属区段内的最后一个回帖标识,则计算模块75可以将所属区段的有效回复数加上上述预定数值,然后查找模块73继续对所属的区段内的回帖标识进行遍历。
本实施例中,在查找模块73查找到上述目标回复之后,可以将上述目标回复所属区段的有效回复数作为结果中的信息之一返回。
本申请实施例提供的主题帖回复的查找装置可以有效降低主题帖中待查找的目标回复的查找耗时,提高上述目标回复的查找效率,对于主题帖的回复数达到十万以上时,目标回复的平均查找耗时下降60%,对于主题帖的回复数达到一百万以上时,目标回复的平均查找耗时下降92%。并且应对热点主题帖的能力大幅提高,对于回复达到一百万以上的主题帖的负载能力提升12倍。
图9为本申请计算机设备一个实施例的结构示意图,上述计算机设备可以包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时,可以实现本申请实施例提供的主题帖回复的查找方法。
其中,上述计算机设备可以为服务器,也可以为终端设备,上述终端设备可以为个人计算机(Personal Computer;以下简称:PC)或者笔记本电脑等智能终端设备,本实施例对上述计算机设备的具体形态不作限定。
图9示出了适于用来实现本申请实施方式的示例性计算机设备12的框图。图9显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图9所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图9中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的主题帖回复的查找方法。
本申请实施例还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时可以实现本申请实施例提供的主题帖回复的查找方法。
上述非临时性计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(Read Only Memory;以下简称:ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(Random AccessMemory;以下简称:RAM),只读存储器(Read Only Memory;以下简称:ROM),可擦除可编辑只读存储器(Erasable Programmable Read Only Memory;以下简称:EPROM)或闪速存储器,光纤装置,以及便携式光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(ProgrammableGate Array;以下简称:PGA),现场可编程门阵列(Field Programmable Gate Array;以下简称:FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (18)
1.一种主题帖回复的查找方法,其特征在于,包括:
获取主题帖中待查找的目标回复的标识信息;
根据所述标识信息确定所述目标回复所属的区段;
根据所述标识信息在所属的区段内,查找所述目标回复。
2.根据权利要求1所述的方法,其特征在于,所述确定所述标识信息所属的区段之前,还包括:
当所述主题帖的回复数大于预定的回复阈值时,对所述主题帖的回复进行区段划分。
3.根据权利要求2所述的方法,其特征在于,所述对所述主题帖的回复进行区段划分包括:
遍历所述主题帖的每个回复的回帖标识;
根据当前遍历的回帖标识获取所述主题帖当前的回复数;
如果所述主题帖当前的回复数小于预定的区段阈值,则将当前遍历的回复划分在当前区段;
如果所述主题帖当前的回复数大于或等于预定的区段阈值,则将当前遍历的回复划分在下一区段。
4.根据权利要求3所述的方法,其特征在于,所述对所述主题帖的回复进行区段划分之后,还包括:
如果当前遍历的回复有效,则将当前遍历的回复所在区段的有效回复数加上预定数值,以及根据当前遍历的回复的回帖标识和当前遍历的回复所在区段中已遍历的回帖标识确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述目标回复的标识信息包括所述目标回复的回帖标识;
所述根据所述标识信息确定所述目标回复所属的区段包括:
遍历对所述主题帖的回复进行划分所获得的区段;
如果所述目标回复的回帖标识在当前遍历的区段的回帖标识的最大值和最小值所界定的闭区间内,则确定所述目标回复属于当前遍历的区段。
6.根据权利要求5所述的方法,其特征在于,所述根据所述标识信息在所属的区段内,查找所述目标回复包括:
对所属的区段内的回帖标识进行遍历;
如果当前遍历的回帖标识与所述目标回复的回帖标识相等,则确定当前遍历的回帖标识所对应的回复为所述目标回复。
7.根据权利要求1-4任意一项所述的方法,其特征在于,所述目标回复的标识信息包括:所述目标回复的有效偏移量;
所述根据所述标识信息确定所述目标回复所属的区段包括:
遍历对所述主题帖的回复进行划分所获得的区段;
如果当前遍历区段的有效回复数与已遍历区段的有效回复数之和大于所述目标回复的有效偏移量,则确定所述目标回复属于当前遍历的区段。
8.根据权利要求7所述的方法,其特征在于,所述根据所述标识信息在所属的区段内,查找所述目标回复包括:
对所属的区段内的回帖标识进行遍历;
如果当前遍历的回帖标识有效,则将当前获取的有效回复数加上预定数值;
如果加上预定数值后的有效回复数等于所述目标回复的有效偏移量,则确定当前遍历的回帖标识对应的回复为所述目标回复。
9.一种主题帖回复的查找装置,其特征在于,包括:
获取模块,用于获取主题帖中待查找的目标回复的标识信息;
确定模块,用于根据所述获取模块获取的标识信息确定所述目标回复所属的区段;
查找模块,用于根据所述标识信息在所述确定模块确定的所属的区段内,查找所述目标回复。
10.根据权利要求9所述的装置,其特征在于,还包括:
划分模块,用于在所述确定模块确定所述标识信息所属的区段之前,当所述主题帖的回复数大于预定的回复阈值时,对所述主题帖的回复进行区段划分。
11.根据权利要求10所述的装置,其特征在于,
所述划分模块,具体用于遍历所述主题帖的每个回复的回帖标识,根据当前遍历的回帖标识获取所述主题帖当前的回复数;如果所述主题帖当前的回复数小于预定的区段阈值,则将当前遍历的回复划分在当前区段;如果所述主题帖当前的回复数大于或等于预定的区段阈值,则将当前遍历的回复划分在下一区段。
12.根据权利要求11所述的装置,其特征在于,还包括:计算模块;
计算模块,用于在所述划分模块对所述主题帖的回复进行区段划分之后,如果当前遍历的回复有效,则将当前遍历的回复所在区段的有效回复数加上预定数值;
所述确定模块,还用于在所述划分模块对所述主题帖的回复进行区段划分之后,如果当前遍历的回复有效,则根据当前遍历的回复的回帖标识和当前遍历的回复所在区段中已遍历的回帖标识确定当前遍历的回复所在区段的回帖标识的最大值和最小值。
13.根据权利要求9-12任意一项所述的装置,其特征在于,所述目标回复的标识信息包括所述目标回复的回帖标识;
所述确定模块,具体用于遍历对所述主题帖的回复进行划分所获得的区段;如果所述目标回复的回帖标识在当前遍历的区段的回帖标识的最大值和最小值所界定的闭区间内,则确定所述目标回复属于当前遍历的区段。
14.根据权利要求13所述的装置,其特征在于,
所述查找模块,具体用于对所属的区段内的回帖标识进行遍历;如果当前遍历的回帖标识与所述目标回复的回帖标识相等,则确定当前遍历的回帖标识所对应的回复为所述目标回复。
15.根据权利要求9-12任意一项所述的装置,其特征在于,所述目标回复的标识信息包括:所述目标回复的有效偏移量;
所述确定模块,具体用于遍历对所述主题帖的回复进行划分所获得的区段;如果当前遍历区段的有效回复数与已遍历区段的有效回复数之和大于所述目标回复的有效偏移量,则确定所述目标回复属于当前遍历的区段。
16.根据权利要求15所述的装置,其特征在于,
所述查找模块,具体用于对所属的区段内的回帖标识进行遍历;如果当前遍历的回帖标识有效,则将当前获取的有效回复数加上预定数值;如果加上预定数值后的有效回复数等于所述目标回复的有效偏移量,则确定当前遍历的回帖标识对应的回复为所述目标回复。
17.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-8中任一所述的方法。
18.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810607392.6A CN108874753B (zh) | 2018-06-13 | 2018-06-13 | 主题帖回复的查找方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810607392.6A CN108874753B (zh) | 2018-06-13 | 2018-06-13 | 主题帖回复的查找方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108874753A true CN108874753A (zh) | 2018-11-23 |
CN108874753B CN108874753B (zh) | 2022-05-10 |
Family
ID=64338180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810607392.6A Active CN108874753B (zh) | 2018-06-13 | 2018-06-13 | 主题帖回复的查找方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108874753B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569397A (zh) * | 2019-09-06 | 2019-12-13 | 百度在线网络技术(北京)有限公司 | 网络社区的信息查询方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184214A (zh) * | 2011-05-04 | 2011-09-14 | 东南大学 | 一种数据分组快速查找定位法 |
CN104462080A (zh) * | 2013-09-12 | 2015-03-25 | 北大方正集团有限公司 | 针对检索结果进行分组统计的索引结构创建方法和系统 |
US20150142848A1 (en) * | 2012-04-12 | 2015-05-21 | Omron Corporation | Device management apparatus and device search method |
CN105447075A (zh) * | 2014-09-18 | 2016-03-30 | 安普里达塔公司 | 用于动态划分的计算机实现方法 |
CN105468644A (zh) * | 2014-09-10 | 2016-04-06 | 阿里巴巴集团控股有限公司 | 一种用于在数据库中进行查询的方法与设备 |
-
2018
- 2018-06-13 CN CN201810607392.6A patent/CN108874753B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184214A (zh) * | 2011-05-04 | 2011-09-14 | 东南大学 | 一种数据分组快速查找定位法 |
US20150142848A1 (en) * | 2012-04-12 | 2015-05-21 | Omron Corporation | Device management apparatus and device search method |
CN104462080A (zh) * | 2013-09-12 | 2015-03-25 | 北大方正集团有限公司 | 针对检索结果进行分组统计的索引结构创建方法和系统 |
CN105468644A (zh) * | 2014-09-10 | 2016-04-06 | 阿里巴巴集团控股有限公司 | 一种用于在数据库中进行查询的方法与设备 |
CN105447075A (zh) * | 2014-09-18 | 2016-03-30 | 安普里达塔公司 | 用于动态划分的计算机实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569397A (zh) * | 2019-09-06 | 2019-12-13 | 百度在线网络技术(北京)有限公司 | 网络社区的信息查询方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108874753B (zh) | 2022-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241772B (zh) | 发票区块链记录方法、装置、区块链网关服务器和介质 | |
CN108197285A (zh) | 一种数据推荐方法以及装置 | |
CN108509569A (zh) | 企业画像的生成方法、装置、电子设备以及存储介质 | |
CN110309336A (zh) | 图像检索方法、装置、系统、服务器以及存储介质 | |
CN110324228A (zh) | 基于聊天群组的数据处理方法、装置和设备 | |
CN107025289A (zh) | 一种数据处理的方法及相关设备 | |
CN105912679A (zh) | 一种数据查询的方法和装置 | |
CN112860993A (zh) | 兴趣点的分类方法、装置、设备、存储介质及程序产品 | |
CN103905310B (zh) | 报文处理的方法及转发设备 | |
CN108874753A (zh) | 主题帖回复的查找方法、装置和计算机设备 | |
CN105681199A (zh) | 一种车载总线中报文数据的处理方法及装置 | |
CN108111390A (zh) | 联系人管理方法、设备及存储介质 | |
CN107451271A (zh) | 一种哈希表处理方法、装置、设备及存储介质 | |
CN112783971B (zh) | 交易记录方法、交易查询方法、电子设备及存储介质 | |
CN104252541B (zh) | 一种网页信息推送方法、数据服务器及终端 | |
CN109450963A (zh) | 消息推送方法及终端设备 | |
CN103294407A (zh) | 存储装置和数据读写方法 | |
CN106302374A (zh) | 一种用于提高表项访问带宽和原子性操作的装置及方法 | |
CN116991578A (zh) | 算力管理方法、装置、设备以及存储介质 | |
WO2023143595A1 (zh) | 处理器之间的通信方法、系统、存储介质以及处理器 | |
CN103414756A (zh) | 一种任务分发方法、分发节点及系统 | |
CN110113443A (zh) | 社交角色管理方法、计算机设备及存储介质 | |
CN106535102A (zh) | 一种移动终端定位方法及移动终端 | |
CN107908724A (zh) | 一种数据模型匹配方法、装置、设备及存储介质 | |
CN110825521B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |