CN110569397A - 网络社区的信息查询方法、装置、设备及存储介质 - Google Patents
网络社区的信息查询方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110569397A CN110569397A CN201910847085.XA CN201910847085A CN110569397A CN 110569397 A CN110569397 A CN 110569397A CN 201910847085 A CN201910847085 A CN 201910847085A CN 110569397 A CN110569397 A CN 110569397A
- Authority
- CN
- China
- Prior art keywords
- index
- reply
- target
- layer
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000015654 memory Effects 0.000 claims description 29
- 238000011084 recovery Methods 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000008901 benefit Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000001914 filtration Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000002035 prolonged effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000699 topical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种网络社区的信息查询方法、装置、设备及存储介质,涉及计算机领域中的信息查询技术。具体实现方案为:响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID。采用本申请的方案,能够保证磁盘IO次数大幅度下降,进而大幅度降低查询耗时,从而提高了网络社区中回复帖的查询速率。
Description
技术领域
本申请实施例涉及计算机领域中的信息查询技术,尤其涉及一种网络社区的信息查询方法、装置、设备及存储介质。
背景技术
网络社区的主题帖种类数量庞大,并且单一主题帖的最大回复数超过3000万楼。网络社区的主题帖浏览存在如下困难:数据量大;由于回复数据的实时过滤、实时回复,回复数据的有效性调整多。因此采用遍历方式浏览主题帖效率低下、性能差。
发明内容
本申请实施例中提供了一种网络社区的信息查询方法、装置、设备及存储介质,以实现提高网络社区中回复帖的查询速率。
第一方面,本申请实施例中公开了一种网络社区的信息查询方法,包括:
响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;
根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;
从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;
根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID;
其中,所述网络社区索引结构包括至少两个索引层,第一索引层的第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
上述申请中的一个实施例具有如下优点或有益效果:能够保证磁盘IO次数大幅度下降,进而大幅度降低查询耗时,从而提高了网络社区中回复帖的查询速率。
可选地,每一个索引层包括固定数量个索引块,所述第一索引块中存储有固定数量个回复帖ID的索引信息,其他索引块中存储有固定数量个上一层索引块的索引信息。
可选地,所述网络社区索引结构通过如下方式构建:
遍历网络社区中的回复帖ID,为固定数量个回复帖ID生成第一索引块,以得到所述第一索引层;
遍历上一索引层,为固定数量个上一层索引块生成当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于所述固定数量为止。
上述申请中的一个实施例具有如下优点或有益效果:通过构建一套分层、分块最终到磁盘的立体查找方案,在依据网络社区索引结构查询时可以保证磁盘IO大幅度下降,多次磁盘IO降低到1次磁盘IO,磁盘IO量明显下降,进而使得平均耗时大幅下降。
可选地,所述索引块中存储的索引信息包括如下至少一项:该索引块的层级信息,该索引块关联的回复帖最大ID、回复帖最小ID,该索引块关联的有效回复帖数量,以及该索引块关联的总回复帖数量;
该索引块的层级信息包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。
可选地,所述方法还包括:
若检测到任一回复帖的失效事件,则降低该回复帖所属的各层索引块所关联的有效回复帖数量;
若检测到任一回复帖的恢复有效事件,则增加该回复帖所属的各层索引块所关联的有效回复帖数量。
可选地,根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
若所述目标回复帖位置信息为待浏览页面的目标页数信息,则将所述目标页数信息与单页中有效帖数量相乘,以得到待浏览页面中的有效回复帖序号;
根据所述待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
上述申请中的一个实施例具有如下优点或有益效果:能够依据待浏览页面的目标页数信息和有效帖数量计算得到有效回复贴序号,并按照网络社区索引机构中各个索引层的各索引块关联的有效回复帖数量,实现在网络社区索引结构中分层级和分块的查找回复贴ID,进而保证在查询时磁盘IO大幅度下降。
可选地,根据所述待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
遍历所述网络社区索引结构中的最高索引层,根据最高索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标最高索引块;
遍历所述目标最高索引块所关联的下一层索引块,根据下一层索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标下一层索引块,直至下一层索引块为所述第一索引层为止。
可选地,根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
若所述目标回复帖位置信息为所述待浏览页面中的目标回复帖ID,则由高到低逐层查询网络社区索引结构,以得到目标回复帖ID在第一索引层中所属的目标第一索引块。
上述申请中的一个实施例具有如下优点或有益效果:能够依据待浏览页面中的目标回复帖ID,并按照网络社区索引结构中各个索引层的各个索引块关联的回复帖最大ID和回复帖最小ID所组成的ID区间,实现在网络社区索引结构中进行分层级和分块的查找回复贴ID,可以保证在查询时磁盘IO大幅度下降。
可选地,所述方法还包括:通过如下方式确定所述候选回复帖的状态信息:
根据所述候选回复帖ID以及网络社区的回复帖状态数组,确定候选回复帖的状态信息;
其中,所述回复帖状态数组中每一位的取值表示该位所关联的回复帖的状态信息;
若该回复帖有效,则该位取值为第一数值;否则,该位取值为第二数值。
上述申请中的一个实施例具有如下优点或有益效果:能避免由于回复贴的删除、屏蔽、审核等多种状态影响对回复贴的过滤查询。
可选地,所述方法还包括:
若检测到任一回复帖的失效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值;
若检测到任一回复帖的恢复有效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值。
上述申请中的一个实施例具有如下优点或有益效果:采用标记删除的思路,将按位标记的方式存储回复贴的多种状态,避免回复在查询回复贴时回复贴的多种状态影响过滤查询操作。
第二方面,本申请实施例中还公开了一种网络社区的信息查询装置,包括:
回复贴位置确定模块,用于响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;
索引块确定模块,用于根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;
候选回复贴确定模块,用于从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;
目标回复帖确定模块,用于根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID;
其中,所述网络社区索引结构包括至少两个索引层,第一索引层的第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
第三方面,本申请实施例中还公开了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意实施例中所提供的所述的网络社区的信息查询方法。
第四方面,本申请实施例中还公开了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意实施例中所提供的所述的网络社区的信息查询方法。
根据本申请提供的一种网络社区的信息查询方案,网络社区索引结构是一种区间范围的分层查找结构,因为采用了空间换时间,内存换磁盘,通过分层、分块到磁盘的立体查找技术手段,解决了k-list存储引擎查找性能问题,所以克服了全量数据遍历引起磁盘IO突增,IO等待时间变长的技术问题,进而保证磁盘IO次数大幅度下降,大幅度降低了查询耗时,从而实现了提高网络社区中回复帖的查询速率的技术效果。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请实施例一中的一种网络社区的信息查询方法的流程图;
图2是本申请实施例一中提供的一种网络社区索引结构的查询示意图;
图3是本申请实施例一中提供的一种网络社区索引结构的构建示意图;
图4是本申请实施例二中的一种网络社区的信息查询方法的流程图;
图5是本申请实施例三中的一种网络社区的信息查询方法的流程图;
图6是用来实现本申请实施例的网络社区的信息查询方法的网络社区的信息查询装置的结构框图;
图7是用来实现本申请实施例的网络社区的信息查询方法的电子设备的结构框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
实施例一
图1是本申请实施例一中的一种网络社区的信息查询方法的流程图,本实施例可适用于在网络社区中浏览查询回复贴的情况。该方法可以由网络社区的信息查询装置来执行,该装置可以采用软件和/或硬件的方式实现,并集成在任何具有网络通信功能的电子设备上。如图1所示,本申请实施例中提供的网络社区的信息查询方法,包括以下步骤S110~S140:
S110、响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息。
在本实施例中,网络社区是指包括BBS/论坛、贴吧、公告栏、个人知识发布、群组讨论、个人空间、无线增值服务等形式在内的网上交流空间,同一主题的网络社区集中了具有共同兴趣的访问者。可选地,当用户需要查询网络社区中某一待浏览页面的回复贴时,可以向电子设备发送查询请求。
在本实施例中,可选地,目标回复贴是指网络社区的待浏览页面中的回复贴。例如,目标回复贴具体可以是待浏览页面中的首个回复贴或者待浏览页面中的尾部回复贴。当接收到用户发送的查询请求后,电子设备能够响应用户发送的查询请求,确定网络社区中待浏览页面的目标回复贴在待浏览页面的位置信息,并将该位置信息记为目标回复贴位置信息。其中,目标回复贴位置信息可以为待浏览页面的目标页数信息,即待浏览页面是位于全部回复贴页面的哪个页面;或者,目标回复贴位置信息还可以为待浏览页面中的目标回复帖ID。
S120、根据目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
在本实施例中,网络社区中的主题和所有回复可以抽象理解为K-List数据结构,K即为主题帖ID,List为回复贴ID(PID)的拉链。这样,本申请的网络社区的信息查询方案可以具体为针对K-List数据结构进行数据过滤和数据查找的方案。
在本实施例中,图2是本申请实施例一中提供的一种网络社区索引结构的查询示意图。参见图2,网络社区索引结构中包含至少两个索引层,第一索引层为网络社区索引结构中的最低索引层。可选地,对于网络社区索引结构中的每一个索引层而言,每一个索引层中可以包含固定数量个索引块。可选地,第一索引层的各第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
在一个可选示例中,第一索引层包含固定数量个第一索引块,第一索引层对应的各第一索引块中存储有固定数量个回复贴ID的索引信息;而其他索引层中也包含有固定数量个其他索引块,且各其他索引块中存储有固定数量个上一层索引块的索引信息。例如,第二索引层中包含有固定数量个第二索引块,每一个第二索引块可以存储第一索引层中固定数量个第一索引块的索引信息;第三索引层中包含有固定数量个第三索引块,每一个第三索引块可以存储第二索引层中固定数量个第二索引块的索引信息,依次类推。
在本实施例中,参见图2,对于第二索引层的每一第二索引块,第二索引块可以与第一索引层中固定数量个连续的第一索引块关联,并存储该固定数量个连续的第一索引块的索引信息;进而,对于第三索引层的每一第三索引块,第三索引块可以与第二索引层中固定数量个连续的第二索引块存在关联,并存储该固定数量个连续的第二索引块的索引信息;按照上述方式,依次类推,网络社区索引结构可以包含多个索引层。
在本实施例的一种可选方式中,本实施例中提供的网络社区索引结构通过如下方式构建(具体参见步骤A1~步骤A2):
步骤A1、遍历网络社区中的回复帖ID,为固定数量个回复帖ID生成第一索引块,以得到第一索引层。
在本实施方式中,图3是本申请实施例一中提供的一种网络社区索引结构的构建示意图。参见图3,网络社区中的回复贴ID(PID)一般是8字节长度的正整数,并且回复贴ID的值是按照回复贴的发布时间严格自增且不变。根据回复贴ID的这一特性,可以遍历网络社区中的回复帖ID为固定数量个回复帖ID生成第一索引块,实现将网络社区中的回复帖ID按照固定数量分别划分到不同的第一索引块中,各第一索引模块组成了网络社区索引结构的第一索引层。可选地,对于每一个第一索引块中存储的固定数量的的回复贴ID而言,固定数量的的回复贴ID是连续的。
步骤A2、遍历上一索引层,为固定数量个上一层索引块生成当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于固定数量为止。
在本实施方式中,当主题帖具有千亿级回复贴时,第一索引层中包含的第一索引块的数量仍然非常多,针对第一索引块的计算量也很大。例如第一索引块中存储有33万各连续回复贴ID,那么1千亿回复贴需要33万个第一索引块,一次最佳拆分的最差查找过程最多要遍历66万次,计算量非常大。为此,需要对第一索引层中的多个第一索引块继续拆分,形成多个索引层。具体过程为:遍历上一索引层,针对每一固定数量个的上一层索引块,为上一索引层中固定数量个连续的上一层索引块生成当前层索引块,从而可以分别得到多个当前索引块,多个当前索引块可以组成当前索引层。若确定当前索引层中包含的当前层索引块的数量大于固定数量,则将当前索引层作为上一索引层,继续遍历并生成多个当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于固定数量为止。
示例性地,参见图3,以构建三个索引层的网络社区索引结构为例,遍历社区网络社区中的所有的回复帖ID,为固定数量的回复帖ID生成一个第一索引块,可以得到多个第一索引块,进而得到的多个第一索引块组成图3所示的第一索引层。由于第一索引层中的第一索引块的数量非常多,因此继续遍历第一索引层中的各第一索引块,为固定数量个连续的第一索引块生成一个第二索引块,可以得到多个连续的第二索引块,多个连续的第二索引块组成第二索引层。此时,第二索引层中的每一个第二索引块可以关联第一索引层中的多个第一索引块。同样,由于第二索引层中的第二索引块的数量仍然比较多,因此继续遍历第二索引层中的第二索引块,为固定数量个连续的第二索引块生成一个第三索引块,可以得到多个连续的第三索引块,进而得到的多个连续的第三索引块能够组成第三索引层。此时,第三索引层中的每一个第三索引块可以关联第二索引层中的多个第二索引块。依次类推,如果第三索引层中的第三索引块的数量小于或等于固定数量,则停止继续遍历;否则继续遍历形成下一索引层。
采用上述步骤,采用空间换时间,多次磁盘IO降到1次磁盘IO,构建一套分层、分块最终到磁盘的立体查找方案,在依据网络社区索引结构查询时可以保证磁盘IO大幅度下降,多次磁盘IO降低到1次磁盘IO,磁盘IO量明显下降,进而使得平均耗时大幅下降。并且,由于采用了离线计算在线查询的方式,网络社区索引结构的构建过程是离线计算实现,不会影响在网络社区查询信息时在线使用网络社区索引结构。
在本实施例中,由于网络社区索引结构的第一索引层的各第一索引块中存储有连续的固定数量个回复帖ID的索引信息。为此,在确定待浏览页面中目标回复贴位置信息后,可以依据目标回复贴的位置信息查询网络社区索引结构,确定目标回复帖属于第一索引层中的哪一个第一索引块,并将确定的第一索引块记为目标第一索引块。
在本实施例中,一般1000亿回复数据大概需要12.5GB的存储空间,而插入、删除和恢复等操作都是O(1)时间复杂度。可选地,在确定目标回复贴位置信息后,可以依据目标回复贴的位置信息在网络社区索引结构中逐层查询各索引层中的索引块,在每一个索引层内均以O(1)时间复杂度访问索引块,即在第一索引层内以O(1)时间复杂度访问第一索引块中存储的索引信息,在第二索引层内同样以O(1)时间复杂度访问第二索引块中存储的索引信息,依次类推。其中,O(1)时间复杂度是常数阶,其基本操作重复执行的次数是一个固定的常数,执行次数不存在变化。
在本实施例的一种可选方式中,本实施例中提供的网络社区索引结构中的每一索引层的索引块中均存储有多个索引信息。可以理解的是,参加图2和图3所示,第一索引块、第二索引块以及第三索引块中均存储有索引信息。
在一个可选示例中,上述索引块存储的索引信息可以包括:该索引块的层级信息,记为index。具体地,索引块的层级信息用于指示索引块在网络社区索引结构中的层级信息,即指示该索引块位于网络社区索引结构的哪一个索引层。可选地,该索引块的层级信息具体包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。
在另一可选示例中,上述索引块存储的索引信息还可以包括:该索引块关联的回复帖最大ID和回复帖最小ID;其中,回复帖最大ID记为max_pid,回复帖最小ID记为min_pid。具体地,由于第一索引块中存储有固定数量个回复帖ID的索引信息,第二索引块中存储有固定数量个第一索引块的索引信息,第二索引块中存储有固定数量个第二索引块的索引信息,以此类推。可见,每一个索引块均关联有多个回复贴ID,不同的回复贴具有不同的ID,从中可以获知回复贴的最大ID和回复贴的最小ID。
在又一可选示例中,上述索引块存储的索引信息还可以包括:该索引块关联的有效回复帖数量,记为valid pid_num;以及该索引块关联的总回复帖数量,记为total pid_num。
S130、从磁盘中读取目标第一索引块所关联的回复帖ID,作为候选回复帖ID。
在本实施例中,第一索引层在网络社区索引结构中属于最低的索引层,且第一索引块中存储有固定数量个回复帖ID的索引信息。在从第一索引层的多个第一索引块中确定目标第一索引块后,可以从磁盘中读取目标第一索引块所关联的回复帖ID,并将读取的回复贴ID记为候选回复贴ID。
S140、根据候选回复帖ID以及候选回复帖的状态信息,确定待浏览页面中包括的目标回复帖ID。
在本实施例中,在得到候选回复贴ID后,并不是直接将全部的候选回复贴ID作为最终的目标回复贴ID。由于候选回复贴ID中可能存在一些回复贴是失效的,为此需要将失效的回复贴ID进行剔除。可选地,随着回复贴的失效或重新恢复有效,回复帖的状态信息会实时进行更新,为此在从候选回复贴ID中筛选回复贴ID时,可以依据候选回复帖的状态信息将无效的回复贴ID进行剔除,将有效的回复贴ID进行保留,作为待浏览页面中包括的目标回复帖ID。采用上述状态信息的有益效果在于,可以避免由于回复贴的删除、屏蔽、审核等多种状态影响对回复贴的过滤查询。
在本实施例中,可选地,在网络社区查询信息时,本申请方案并不会将所有回复贴数据都放在内存中,而是将分层和分块信息放在内存中,即将构建的网络社区索引结构中的分层和分块的索引信息放在内存中。由于与内存遍历相比,磁盘IO耗时非常高,将网络社区索引结构的分层和分块的索引信息放在内存不仅可以加快查询效率,而且使得内存增长具有可控性,避免内存造成不足。
本申请实施例中提供了一种网络社区的信息查询方案,采用上述方案的有益效果在于:随着主题帖对应的回复贴数量线性增长,千亿级数据预计要500秒以上,严重不符合预期查找时间;并且全量数据遍历会引起磁盘IO突增,IO等待时间变长,如果不能在1s内返回数据,那么很容易引发业务超时。然而,本申请方案在查询回复贴时,借助采用空间换时间,离线计算在线查询,由多次磁盘IO降到1次磁盘IO,构建一套分层、分块最终到磁盘的立体查找方案,即借助构建的网络社区索引结构进行回复贴ID查询,可以保证在查询时磁盘IO大幅度下降,能够由多次磁盘IO降低到1次磁盘IO,磁盘IO量明显下降,这样会使得查询的平均耗时大幅下降,实验分析可知优化前耗时需要500s+,而优化后平均耗时保持在10ms之内,耗时下降99.9998%。并且,随着查询效率的加快,解决由大翻页性能问题而影响服务稳定性。
在上述实施例的可选方案的基础上,本申请实施例中的网络社区的信息查询方法,还包括以下步骤B1和步骤B2:
步骤B1、若检测到任一回复帖的失效事件,则降低该回复帖所属的各层索引块所关联的有效回复帖数量。
步骤B2、若检测到任一回复帖的恢复有效事件,则增加该回复帖所属的各层索引块所关联的有效回复帖数量。
在本实施例中,当检测到某一回复贴失效时,可以在网络社区索引结构中遍历各个索引层,以O(1)时间复杂度找到该失效的回复贴属于哪个索引层的哪个索引块,并对该回复帖所属的各层索引块所关联的有效回复帖数量进行降低处理。当检测到某一回复贴重新恢复有效时,可以在网络社区索引结构中遍历各个索引层,以O(1)时间复杂度找到该重新恢复有效的回复贴属于哪个索引层的哪个索引块,并对重新恢复有效的该回复帖所属的各层索引块所关联的有效回复帖数量进行增加处理。
实施例二
图4是本申请实施例二中的一种网络社区的信息查询方法的流程图,本申请实施例在上述实施例的基础上进行优化,本申请实施例可以与上述一个或者多个实施例中各个可选方案结合。如图4所示,本申请实施例中提供的网络社区的信息查询方法,包括以下步骤S410~S450:
S410、响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息。
S420、若目标回复帖位置信息为待浏览页面的目标页数信息,则将目标页数信息与单页中有效帖数量相乘,以得到待浏览页面中的有效回复帖序号。
在本实施例中,目标回复帖位置信息指示了待浏览页面中的目标回复贴所在的页数信息。对于每一页的回复贴而言,单页中的有效帖数量是固定的,例如有效帖数量可以设置为30个。可选地,在确定待浏览页面的目标页数后,可以将目标页数与单页中的有效帖数量相乘,得到待浏览页面中的有效帖的序号,记为有效回复贴序号。
S430、根据待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
在本实施例中,在网络社区索引结构中,对于每一个索引层而言,每一个索引层中的索引块可以关联有效回复帖数量,以及该索引块关联的总回复帖数量。并且,有效回复帖序号可以反映回复贴的在总回复帖中的排列序号。因此,在得到有效回复帖序号后,可以依据有效回复帖序号由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
在本实施例的一种可选方式中,根据待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括以下步骤C1~步骤C2:
步骤C1、遍历网络社区索引结构中的最高索引层,根据最高索引块所关联的有效回复帖数量,确定有效回复帖序号所属的目标最高索引块。
步骤C2、遍历目标最高索引块所关联的下一层索引块,根据下一层索引块所关联的有效回复帖数量,确定有效回复帖序号所属的目标下一层索引块,直至下一层索引块为第一索引层的索引块为止。
在本实施方式中,以图2和图3所示的三个索引层为例,索引块的层级信息包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。通过遍历第三索引层,可以根据第三索引层中各第三索引块关联的有效回复帖数量(记为valid pid_num),确定有效回复贴序号所属的目标第三索引块,即确定有效回复贴序号具体属于第三索引层的哪一个第三索引块。继续,遍历目标第三索引块所关联的第二索引块,根据第二索引块关联的有效回复帖数量(记为valid pid_num),确定有效回复贴序号所属的目标第二索引块,即确定有效回复贴序号具体属于第二索引层的哪一个第二索引块。继续,遍历目标第二索引块所关联的第一索引块,根据第一索引块关联的有效回复帖数量(记为valid pid_num),确定有效回复需要所属的目标第一索引块,即确定有效回复贴序号具体属于第一索引层的哪一个第一索引块。其中,第一索引块中存储有固定数量个连续的回复帖ID的索引信息。
S440、从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID。
S450、根据候选回复帖ID以及候选回复帖的状态信息,确定待浏览页面中包括的目标回复帖ID。
在本实施例的一种可选方式中,本实施例中的网络社区的信息查询方法还包括:通过如下方式确定候选回复帖的状态信息。其中,确定候选回复帖的状态信息具体包括:根据候选回复帖ID以及网络社区的回复帖状态数组,确定候选回复帖的状态信息。
在本实施方式中,回复帖状态数组中每一位的取值表示该位所关联的回复帖的状态信息;若该回复帖有效,则该位取值为第一数值;否则,该位取值为第二数值。可选地,第一数值为1,第二数值为0。
在本实施方式中,若检测到任一回复帖的失效事件,即检测到某一回复贴失效,则调整回复帖状态数组中该回复帖所关联位的取值。若检测到任一回复帖的恢复有效事件,即检测到某一回复贴重新恢复有效性,则调整所述回复帖状态数组中该回复帖所关联位的取值。
采用上述方式的有益效果在于:采用标记删除的思路,将按位标记的方式存储回复贴的多种状态,为每种状态申请一块连续的内存空间,以二进制数组方式存储,每一位表示0/1。将回复贴ID与数组中的每一位bit建立一一对应关系。
本申请实施例中提供了一种网络社区的信息查询方案,在查询回复贴时,借助采用空间换时间,离线计算在线查询,由多次磁盘IO降到1次磁盘IO,构建一套分层、分块最终到磁盘的立体查找方案,即借助构建的网络社区索引结构,能够依据待浏览页面的目标页数信息和有效帖数量计算得到有效回复贴序号,进而依据有效回复贴序号,按照网络社区索引机构中各个索引层的各索引块关联的有效回复帖数量,实现在网络社区索引结构中分层级和分块的查找回复贴ID,进而保证在查询时磁盘IO大幅度下降,能够由多次磁盘IO降低到1次磁盘IO,磁盘IO量明显下降,这样会使得查询的平均耗时大幅下降。
实施例三
图5是本申请实施例三中的一种网络社区信息查询方法的流程图,本申请实施例在上述实施例的基础上进行优化,本申请实施例可以与上述一个或者多个实施例中各个可选方案结合。如图5所示,本申请实施例中提供的网络社区的信息查询方法,包括以下步骤S510~S540:
S510、响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息。
S520、若目标回复帖位置信息为待浏览页面中的目标回复帖ID,则由高到低逐层查询网络社区索引结构,以得到目标回复帖ID在第一索引层中所属的目标第一索引块。
在本实施例中,目标回复帖位置信息指示了待浏览页面中的目标回复贴的ID,即目标回复贴ID。在查询网络社区索引结构时,对于每一个索引层而言,每一个索引层中的索引块可以关联有回复帖最大ID和回复帖最小ID。因此,在得到回复帖最大ID和回复帖最小ID后,可以依据回复帖最大ID和回复帖最小ID组成的ID区间范围,由高到低逐层查询网络社区索引结构,确定目标回复贴ID位于哪一个ID区间范围,以得到目标回复帖在第一索引层中所属的目标第一索引块。
在本实施例的一种可选方式中,由高到低逐层查询网络社区索引结构,以得到目标回复帖ID在第一索引层中所属的目标第一索引块,包括以下步骤D1~步骤D2:
步骤D1、遍历网络社区索引结构中的最高索引层,根据最高索引块所关联的回复帖最大ID和回复帖最小ID,确定目标回复贴ID所属的目标最高索引块。
步骤D2、遍历目标最高索引块所关联的下一层索引块,根据下一层索引块所关联的回复帖最大ID和回复帖最小ID,确定目标回复贴ID所属的目标下一层索引块,直至下一层索引块为第一索引层的索引块为止。
在本实施方式中,以图2和图3所示的三个索引层为例,索引块的层级信息包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。通过遍历第三索引层,可以根据第三索引层中各第三索引块关联的回复帖最大ID和回复帖最小ID组成的ID区间,确定目标回复贴ID所属的目标第三索引块,即确定目标回复贴ID具体属于第三索引层的哪一个第三索引块所关联的ID区间。继续,遍历目标第三索引块所关联的第二索引块,根据第二索引块关联的回复帖最大ID和回复帖最小ID组成的ID区间,确定目标回复贴ID所属的目标第二索引块,即确定目标回复贴ID具体位于第二索引层的哪一个第二索引块所关联的ID区间。继续,遍历目标第二索引块所关联的第一索引块,根据第一索引块关联的回复帖最大ID和回复帖最小ID组成的ID区间,确定目标回复贴ID所属的目标第一索引块,即确定目标回复贴ID具体属于第一索引层的哪一个第一索引块所关联的ID区间,即可确定目标第一索引块。其中,第一索引块中存储有固定数量个连续的回复帖ID的索引信息。
S530、从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID。
S540、根据候选回复帖ID以及候选回复帖的状态信息,确定待浏览页面中包括的目标回复帖ID。
本申请实施例中提供了一种网络社区的信息查询方案,在查询回复贴ID时,借助采用空间换时间,离线计算在线查询,由多次磁盘IO降到1次磁盘IO,构建一套分层、分块最终到磁盘的立体查找方案,即借助构建的网络社区索引结构,能够依据待浏览页面中的目标回复帖ID,按照网络社区索引结构中各个索引层的各个索引块关联的回复帖最大ID和回复帖最小ID所组成的ID区间,实现在网络社区索引结构中分层级和分块的查找回复贴ID,可以保证在查询时磁盘IO大幅度下降,能够由多次磁盘IO降低到1次磁盘IO,磁盘IO量明显下降,这样会使得查询的平均耗时大幅下降。
实施例四
图6是用来实现本申请实施例的网络社区的信息查询方法的网络社区的信息查询装置的结构框图,本申请实施例可适用于在网络社区中浏览查询回复贴的情况。该装置可以采用软件和/或硬件的方式实现,并集成在任何具有网络通信功能的电子设备上。
如图6所示,本申请实施例中提供的网络社区的信息查询装置600具体包括:回复贴位置确定模块610、索引块确定模块620、候选回复贴确定模块630和目标回复帖确定模块640。其中:
回复贴位置确定模块610,用于响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;
索引块确定模块620,用于根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;
候选回复贴确定模块630,用于从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;
目标回复帖确定模块640,用于根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID;
其中,所述网络社区索引结构包括至少两个索引层,第一索引层的第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
在上述实施例的技术方案的基础上,可选地,每一个索引层包括固定数量个索引块,所述第一索引块中存储有固定数量个回复帖ID的索引信息,其他索引块中存储有固定数量个上一层索引块的索引信息。
在上述实施例的技术方案的基础上,可选地,所述网络社区索引结构通过如下方式构建:
遍历网络社区中的回复帖ID,为固定数量个回复帖ID生成第一索引块,以得到所述第一索引层;
遍历上一索引层,为固定数量个上一层索引块生成当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于所述固定数量为止。
在上述实施例的技术方案的基础上,可选地,所述索引块中存储的索引信息包括如下至少一项:该索引块的层级信息,该索引块关联的回复帖最大ID、回复帖最小ID,该索引块关联的有效回复帖数量,以及该索引块关联的总回复帖数量;
该索引块的层级信息包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。
在上述实施例的技术方案的基础上,可选地,所述装置还包括:
回复贴失效处理模块,用于若检测到任一回复帖的失效事件,则降低该回复帖所属的各层索引块所关联的有效回复帖数量;
回复贴恢复处理模块,用于若检测到任一回复帖的恢复有效事件,则增加该回复帖所属的各层索引块所关联的有效回复帖数量。
在上述实施例的技术方案的基础上,可选地,索引块确定模块620包括:
有效回复贴序号确定单元,用于若所述目标回复帖位置信息为待浏览页面的目标页数信息,则将所述目标页数信息与单页中有效帖数量相乘,以得到待浏览页面中的有效回复帖序号;
目标索引块确定单元,用于根据所述待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
在上述实施例的技术方案的基础上,可选地,目标索引块确定单元用于:
遍历所述网络社区索引结构中的最高索引层,根据最高索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标最高索引块;
遍历所述目标最高索引块所关联的下一层索引块,根据下一层索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标下一层索引块,直至下一层索引块为所述第一索引层为止。
在上述实施例的技术方案的基础上,可选地,索引块确定模块620具体包括:
若所述目标回复帖位置信息为所述待浏览页面中的目标回复帖ID,则由高到低逐层查询网络社区索引结构,以得到目标回复帖ID在第一索引层中所属的目标第一索引块。
在上述实施例的技术方案的基础上,可选地,所述装置还包括:
回复贴状态确定模块,所述回复贴状态确定模块通过如下方式确定所述候选回复帖的状态信息:
根据所述候选回复帖ID以及网络社区的回复帖状态数组,确定候选回复帖的状态信息;
其中,所述回复帖状态数组中每一位的取值表示该位所关联的回复帖的状态信息;
若该回复帖有效,则该位取值为第一数值;否则,该位取值为第二数值。
在上述实施例的技术方案的基础上,可选地,所述回复贴状态确定模块具体包括:
若检测到任一回复帖的失效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值;
若检测到任一回复帖的恢复有效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值。
本发明实施例中所提供的网络社区的信息查询装置可执行上述本发明任意实施例中所提供的网络社区的信息查询方法,具备执行该网络社区的信息查询方法相应的功能和有益效果,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例中所提供的网络社区的信息查询方法。
实施例五
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。图7是用来实现本申请实施例的网络社区的信息查询方法的电子设备的结构框图。
如图7所示,是根据本申请实施例的网络社区的信息查询方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的网络社区的信息查询方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的网络社区的信息查询方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的网络社区的信息查询方法对应的程序指令/模块(例如,附图6所示的回复贴位置确定模块610、索引块确定模块620、候选回复贴确定模块630和目标回复帖确定模块640)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的网络社区的信息查询方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据网络社区的信息查询方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至网络社区的信息查询的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
用于执行网络社区的信息查询的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与用于执行网络社区的信息查询的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,能够保证磁盘IO次数大幅度地下降,进而大幅度降低查询耗时,从而提高了网络社区中回复帖的查询速率。因为采用了空间换时间,内存换磁盘,通过分层、分块到磁盘的立体查找技术手段,所以克服了全量数据遍历引起磁盘IO突增,IO等待时间变长的技术问题,进而达到保证磁盘IO次数大幅度下降,大幅度降低查询耗时的技术效果。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (15)
1.一种网络社区的信息查询方法,其特征在于,包括:
响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;
根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;
从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;
根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID;
其中,所述网络社区索引结构包括至少两个索引层,第一索引层的第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
2.根据权利要求1所述的方法,其特征在于,每一个索引层包括固定数量个索引块,所述第一索引块中存储有固定数量个回复帖ID的索引信息,其他索引块中存储有固定数量个上一层索引块的索引信息。
3.根据权利要求1所述的方法,其特征在于,所述网络社区索引结构通过如下方式构建:
遍历网络社区中的回复帖ID,为固定数量个回复帖ID生成第一索引块,以得到所述第一索引层;
遍历上一索引层,为固定数量个上一层索引块生成当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于所述固定数量为止。
4.根据权利要求1所述的方法,其特征在于,所述索引块中存储的索引信息包括如下至少一项:该索引块的层级信息,该索引块关联的回复帖最大ID、回复帖最小ID,该索引块关联的有效回复帖数量,以及该索引块关联的总回复帖数量;
该索引块的层级信息包括该索引块所属的索引层标识,以及该索引块在该索引层中的块标识。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述方法还包括:
若检测到任一回复帖的失效事件,则降低该回复帖所属的各层索引块所关联的有效回复帖数量;
若检测到任一回复帖的恢复有效事件,则增加该回复帖所属的各层索引块所关联的有效回复帖数量。
6.根据权利要求1所述的方法,其特征在于,根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
若所述目标回复帖位置信息为待浏览页面的目标页数信息,则将所述目标页数信息与单页中有效帖数量相乘,以得到待浏览页面中的有效回复帖序号;
根据所述待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块。
7.根据权利要求6所述的方法,其特征在于,根据所述待浏览页面中的有效回复帖序号,由高到低逐层查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
遍历所述网络社区索引结构中的最高索引层,根据最高索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标最高索引块;
遍历所述目标最高索引块所关联的下一层索引块,根据下一层索引块所关联的有效回复帖数量,确定所述有效回复帖序号所属的目标下一层索引块,直至下一层索引块为所述第一索引层为止。
8.根据权利要求1所述的方法,其特征在于,根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块,包括:
若所述目标回复帖位置信息为所述待浏览页面中的目标回复帖ID,则由高到低逐层查询网络社区索引结构,以得到目标回复帖ID在第一索引层中所属的目标第一索引块。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过如下方式确定所述候选回复帖的状态信息:
根据所述候选回复帖ID以及网络社区的回复帖状态数组,确定候选回复帖的状态信息;
其中,所述回复帖状态数组中每一位的取值表示该位所关联的回复帖的状态信息;
若该回复帖有效,则该位取值为第一数值;否则,该位取值为第二数值。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
若检测到任一回复帖的失效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值;
若检测到任一回复帖的恢复有效事件,则调整所述回复帖状态数组中该回复帖所关联位的取值。
11.一种网络社区的信息查询装置,其特征在于,包括:
回复贴位置确定模块,用于响应于用户的查询请求,确定网络社区中待浏览页面的目标回复帖位置信息;
索引块确定模块,用于根据所述目标回复帖位置信息查询网络社区索引结构,以得到目标回复帖在第一索引层中所属的目标第一索引块;
候选回复贴确定模块,用于从磁盘中读取所述目标第一索引块所关联的回复帖ID,作为候选回复帖ID;
目标回复帖确定模块,用于根据所述候选回复帖ID以及候选回复帖的状态信息,确定所述待浏览页面中包括的目标回复帖ID;
其中,所述网络社区索引结构包括至少两个索引层,第一索引层的第一索引块中存储有回复帖ID的索引信息,其他索引层的其他索引块中存储有上一层索引块的索引信息。
12.根据权利要求11所述的装置,其特征在于,每一个索引层包括固定数量个索引块,所述第一索引块中存储有固定数量个回复帖ID的索引信息,其他索引块中存储有固定数量个上一层索引块的索引信息。
13.根据权利要求10所述的装置,其特征在于,所述网络社区索引结构通过如下方式构建:
遍历网络社区中的回复帖ID,为固定数量个回复帖ID生成第一索引块,以得到所述第一索引层;
遍历上一索引层,为固定数量个上一层索引块生成当前层索引块,以得到当前索引层,直至当前索引层中索引块数量小于或等于所述固定数量为止。
14.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的网络社区的信息查询方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的网络社区的信息查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910847085.XA CN110569397A (zh) | 2019-09-06 | 2019-09-06 | 网络社区的信息查询方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910847085.XA CN110569397A (zh) | 2019-09-06 | 2019-09-06 | 网络社区的信息查询方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110569397A true CN110569397A (zh) | 2019-12-13 |
Family
ID=68778403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910847085.XA Pending CN110569397A (zh) | 2019-09-06 | 2019-09-06 | 网络社区的信息查询方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110569397A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136005A (zh) * | 2011-03-29 | 2011-07-27 | 北京航空航天大学 | 数据查询方法和装置 |
CN103186542A (zh) * | 2011-12-27 | 2013-07-03 | 腾讯科技(北京)有限公司 | 一种数据查询的方法及装置 |
JP2013200861A (ja) * | 2012-03-23 | 2013-10-03 | Nec (China) Co Ltd | データ索引付けシステム、データ索引付け方法、およびデータクエリ方法 |
CN105260446A (zh) * | 2015-10-09 | 2016-01-20 | 上海瀚之友信息技术服务有限公司 | 一种数据查询系统及方法 |
CN107391600A (zh) * | 2017-06-30 | 2017-11-24 | 北京百度网讯科技有限公司 | 用于在内存中存取时序数据的方法和装置 |
CN108228865A (zh) * | 2018-01-15 | 2018-06-29 | 沈阳延云云计算技术有限公司 | 一种数据查询方法和装置 |
CN108255958A (zh) * | 2017-12-21 | 2018-07-06 | 百度在线网络技术(北京)有限公司 | 数据查询方法、装置和存储介质 |
CN108874753A (zh) * | 2018-06-13 | 2018-11-23 | 百度在线网络技术(北京)有限公司 | 主题帖回复的查找方法、装置和计算机设备 |
-
2019
- 2019-09-06 CN CN201910847085.XA patent/CN110569397A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136005A (zh) * | 2011-03-29 | 2011-07-27 | 北京航空航天大学 | 数据查询方法和装置 |
CN103186542A (zh) * | 2011-12-27 | 2013-07-03 | 腾讯科技(北京)有限公司 | 一种数据查询的方法及装置 |
JP2013200861A (ja) * | 2012-03-23 | 2013-10-03 | Nec (China) Co Ltd | データ索引付けシステム、データ索引付け方法、およびデータクエリ方法 |
CN105260446A (zh) * | 2015-10-09 | 2016-01-20 | 上海瀚之友信息技术服务有限公司 | 一种数据查询系统及方法 |
CN107391600A (zh) * | 2017-06-30 | 2017-11-24 | 北京百度网讯科技有限公司 | 用于在内存中存取时序数据的方法和装置 |
CN108255958A (zh) * | 2017-12-21 | 2018-07-06 | 百度在线网络技术(北京)有限公司 | 数据查询方法、装置和存储介质 |
CN108228865A (zh) * | 2018-01-15 | 2018-06-29 | 沈阳延云云计算技术有限公司 | 一种数据查询方法和装置 |
CN108874753A (zh) * | 2018-06-13 | 2018-11-23 | 百度在线网络技术(北京)有限公司 | 主题帖回复的查找方法、装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7221342B2 (ja) | ラベルデータ処理方法、装置、機器及び記憶媒体 | |
CN111475750B (zh) | 页面预加载控制方法、装置、系统、设备和存储介质 | |
CN111241108B (zh) | 基于键值对kv系统的索引方法、装置、电子设备和介质 | |
CN111813828B (zh) | 一种实体关系挖掘方法、装置、电子设备及存储介质 | |
CN111045985A (zh) | 文件存储处理方法、服务器、电子设备及存储介质 | |
CN110598059B (zh) | 数据库操作方法及装置 | |
CN113407649A (zh) | 数据仓库建模方法、装置、电子设备及存储介质 | |
CN111461343A (zh) | 模型参数更新方法及其相关设备 | |
CN111767321A (zh) | 节点关系网络的确定方法、装置、电子设备和存储介质 | |
CN111782147A (zh) | 用于集群扩缩容的方法和装置 | |
CN112182292A (zh) | 视频检索模型的训练方法、装置、电子设备及存储介质 | |
CN111831752B (zh) | 分布式数据库的空间整理方法、装置、设备以及存储介质 | |
CN112565356A (zh) | 数据存储方法、装置以及电子设备 | |
CN112559522A (zh) | 数据存储方法、装置、查询方法、电子设备及可读介质 | |
CN113364877A (zh) | 数据处理方法、装置、电子设备和介质 | |
CN111767477A (zh) | 一种检索方法、装置、电子设备和存储介质 | |
CN111414487A (zh) | 事件主题的关联扩展方法、装置、设备及介质 | |
CN111782632B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN111415011B (zh) | 量子脉冲的确定方法、装置、设备及可读存储介质 | |
CN111290714A (zh) | 数据读取方法和装置 | |
CN111782633A (zh) | 数据处理方法、装置及电子设备 | |
CN110569397A (zh) | 网络社区的信息查询方法、装置、设备及存储介质 | |
CN111552439B (zh) | 数据存储方法、装置、系统、电子设备及存储介质 | |
KR20220106719A (ko) | 인스턴트 메시징 대상의 검색 방법, 장치, 전자 기기 및 저장 매체 | |
CN112328630B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191213 |