CN110597630A - 一种分布式系统中内容资源的处理方法及系统 - Google Patents

一种分布式系统中内容资源的处理方法及系统 Download PDF

Info

Publication number
CN110597630A
CN110597630A CN201910837767.2A CN201910837767A CN110597630A CN 110597630 A CN110597630 A CN 110597630A CN 201910837767 A CN201910837767 A CN 201910837767A CN 110597630 A CN110597630 A CN 110597630A
Authority
CN
China
Prior art keywords
task
target
resource
resources
priority
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910837767.2A
Other languages
English (en)
Other versions
CN110597630B (zh
Inventor
梅启渊
李涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Apas Technology Co Ltd
Original Assignee
Zhengzhou Apas Technology 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 Zhengzhou Apas Technology Co Ltd filed Critical Zhengzhou Apas Technology Co Ltd
Priority to CN201910837767.2A priority Critical patent/CN110597630B/zh
Publication of CN110597630A publication Critical patent/CN110597630A/zh
Application granted granted Critical
Publication of CN110597630B publication Critical patent/CN110597630B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了分布式系统中内容资源的处理方法及系统,方法部分包括:将抓取的内容资源存储至分布式系统中的资源池,并按既定的任务类型进行划分;提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;将所述目标资源按优先级分别写入任务资源表中,并分别对所述目标资源按各自对应的优先级进行排序;前端服务器向所述任务资源表发起提取请求,提取至所述前端服务器。本申请通过任务资源表适合海量数据查询的这一性能优于关系型数据库的特点,对表中的内容资源进行优先级控制,使优先级越高的内容资源更快的进行响应,前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。

Description

一种分布式系统中内容资源的处理方法及系统
技术领域
本申请涉及计算机技术领域,尤其涉及一种分布式系统中内容资源的处理方法及系统。
背景技术
目前,随着网络中信息的爆发式增长,需要不断地对待加工的内容资源进行标注。在分布式系统中,为了应对上游持续不断产生的资源数据,各节点往往通过定时任务将待标注的内容资源分别加载至队列,然后供前端服务器领取对应的内容资源后,由前端服务器对这些内容资源进行标注。
针对队列中的场景,采用的方案往往有以下三种:
1.内存控制:将内容资源加载到内存中的有序集合中,实现指定的排序算法,顺序领取任务资源即可,这种方式很容易造成内存溢出,而且一旦服务重启,之前内存中的数据都没有了,需要重新加载数据;
2.消息队列控制:如rabbitmq3.5.0支持优先级队列,容易造成存储消息队列的对应服务器中内存的使用率过高,从而对服务器的正常运行造成影响。
3.数据库控制:关系型数据库的排序功能可以实现按指定的优先级领取对应的内容资源,但关系型数据库通常不适用于高并发场景,领取之后还要在数据库中对已领取的内容资源进行删除,操作比较繁琐且性能较低。
发明内容
本申请实施例的目的是提供一种分布式系统中内容资源的处理方法及系统,采用任务资源表的数据结构代替传统的任务队列,通过利用mongodb形式的任务资源表适合海量数据查询的这一性能优于关系型数据库的特点,对表中的内容资源进行优先级控制,使前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。
为解决上述技术问题,本申请实施例是这样实现的:
一种分布式系统中内容资源的处理方法,所述方法包括:
将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
可选地,所述将抓取的内容资源存储至分布式系统中的资源池时,
各数据源分别向所述资源池发送对应的内容资源;
提取所述内容资源自身对应的文本标记,并将所述文本标记进行整合,形成既定标签;
将所述既定标签按所述任务类型进行关联,并将所述内容资源统一按既定的任务类型进行划分。
可选地,所述从所述资源池中提取所述任务类型对应的目标资源时,
分别提取所述任务类型各自对应的优先级;
按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
将所述目标资源分别从所述资源池中进行提取。
可选地,所述任务资源表分别记录不同优先级对应的目标资源;所述目标资源写入所述任务资源表后,
提取所述目标资源所属的任务类型对应的优先级;
以所述优先级在所述任务资源表中建立索引,根据所述索引将对所述任务资源表中各任务类型对应的目标资源进行排序;
提取所述写入任务对应任务类型的优先级,将所述目标资源按所述写入任务对应任务类型的优先级插入所述任务资源表中,使所述任务资源表中各任务类型的目标资源统一按对应优先级的顺序进行排序。
可选地,所述方法还包括:
所述任务资源表接收到所述提取请求时,对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索,形成目标记录集;
将所述目标记录集从所述任务资源表中进行提取,并在所述任务资源表中删除所述目标记录集对应的目标资源;
所述前端服务器将所述目标记录集中的内容资源进行标注。
可选地:所述对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索时,
提取所述提取请求中的分布式锁,根据所述分布式锁对所述任务资源表中进行锁定;
在所述任务资源表中删除所述目标记录集对应的目标资源后,解除所述分布式锁。
本申请的其他实施例还公开了一种分布式系统中内容资源的处理系统,,所述系统包括:
存储模块,用于将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
写入模块,用于提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
排序模块,用于将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
提取模块,用于前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
可选地,所述存储模块中,具体包括
发送单元,用于各数据源分别向所述资源池发送对应的内容资源;
标记提取单元,用于提取所述内容资源自身对应的文本标记,并将所述文本标记进行整合,形成既定标签;
关联单元,用于将所述既定标签按所述任务类型进行关联,并将所述内容资源统一按既定的任务类型进行划分。
可选地,所述写入模块具体包括,
任务提取单元,用于分别提取所述任务类型各自对应的优先级;
任务排序单元,用于按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
资源提取单元,用于将所述目标资源分别从所述资源池中进行提取。
可选地,所述任务资源表分别记录不同优先级对应的目标资源;所述排序模块具体包括,
资源提取单元,用于提取所述目标资源所属的任务类型对应的优先级;
索引单元,用于以所述优先级在所述任务资源表中建立索引,根据所述索引将对所述任务资源表中各任务类型对应的目标资源进行排序;
领取单元,用于提取所述写入任务对应任务类型的优先级,将所述目标资源按所述写入任务对应任务类型的优先级插入所述任务资源表中,使所述任务资源表中各任务类型的目标资源统一按对应优先级的顺序进行排序。
可选地,所述提取模块具体包括:
检索单元,用于对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索,形成目标记录集;
删除单元,用于将所述目标记录集从所述任务资源表中进行提取,并在所述任务资源表中删除所述目标记录集对应的目标资源;
标注单元,用于所述前端服务器将所述目标记录集中的内容资源进行标注。
可选地,所述检索单元具体包括,
锁定子单元,用于提取所述提取请求中的分布式锁,根据所述分布式锁对所述任务资源表中进行锁定;
解除子单元,用于在所述任务资源表中删除所述目标记录集对应的目标资源后,解除所述分布式锁。
本申请实施例中的分布式系统中内容资源的处理方法及系统,将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。本申请通过利用mongodb形式的任务资源表适合海量数据查询的这一性能优于关系型数据库的特点,对表中的内容资源进行优先级控制,使优先级越高的内容资源更快的进行响应,前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的分布式系统中内容资源的处理方法的应用场景示意图;
图2为本申请实施例提供的分布式系统中内容资源的处理方法的流程图;
图3为本申请实施例提供的分布式系统中内容资源的处理系统的结构示意图。
具体实施方式
内容推荐系统中,引入的数据源形式多样,机器标注能在一定程度上节省人力,提高效率;但在很多情况下会遇到机器无法识别或者识别不准确,或者含有各种敏感信息的内容资源。针对这些机器无法准确识别的内容资源,就需要有一个标注子系统来专门通过人工去做一些标注或者审核的任务,使推荐的内容资源保持准确。
为了解决上述问题,本申请实施例提供了一种的分布式系统中内容资源的处理方法及系统,将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器。本申请直接从资源池中获取待推广的内容资源进行处理,无需再次向第三方资源提供方进行请求,以获取相应的内容资源,而且通过利用mongodb形式的任务资源表进行内容资源的管理,使查询性能优于普通的关系型数据库,更好地对表中的内容资源进行优先级控制,使优先级越高的内容资源更快的进行响应,前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。
图1为本说明书一个或多个实施例提供的分布式系统中内容资源的处理系统的应用场景示意图,如图1所示,整个系统运行于分布式系统中,系统包括:抓取服务器、资源池、任务资源表和前端服务器。
抓取服务器从各数据源中分别抓取对应的内容资源,并将内容资源分别缓存至既定节点中设置的资源池中;
控制端发布写入任务后,提取写入任务对应的任务类型,从资源池中提取对应任务类型的目标资源,并将目标资源从资源池中提后写入至任务资源表;
任务资源表中以mongodb的形式设置与分布式系统的既定节点中,分别存储各写入任务所提取的目标资源,目标资源分别按对应写入任务对应的优先级进行排序后存储;
前端服务器向存储任务资源表的节点发起资源提取请求,在任务资源表中进行检索后,按对应类型的优先级将对应的检索结果进行提取后返回至前端服务器,由前端服务器进行资源标注等相关操作。
图2为本申请一实施例提供的分布式系统中内容资源处理方法的第一种流程示意图,如图2所示,该方法至少包括以下步骤:
S201,将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
对内容资源进行数据加工时,往往需要对各内容资源进行标记,由抓取服务器对各数据源对应的内容资源分别进行抓取,将抓取到的内容资源按批次分别存储至分布式系统中的资源池,资源池设置在分布式系统的既定节点中,可以由单个服务器节点存储,也可以有多个服务器节点共同存储。
本实施例中,数据源为发布既定类别的内容资源的第三方服务器,如合作方用于资源新闻、视频、广告的服务器等,第三方服务器发送内容资源后,由抓取服务器进行抓取,并按统一的格式进行标记整理。在分布式系统中按数据源的类型设定对应的任务类型,如视频、文本、图片等,任务类型设定后,后续的写入任务和提取任务均按设定的任务类型进行定义,控制各类型的内容资源以任务为单位在分布式系统中进行传输。按既定的任务类型对内容资源统一进行管理,即提取资源池中内容资源的对应文本标记,按文本标记进行语义分析后得到关键词,将关键词进行整合后形成既定标签,将任务类型与既定标签进行匹配,从而将各内容资源按任务类型进行划分。
在其他实施例中,任务类型可按各数据源对应的属性信息进行设定,如数据源在发送各自对应的内容资源时,数据源对应的渠道标号,发送时间等,任务类型可根据数据源对应的属性信息进行设定,同时任务类型可根据业务需要设置对应的优先级,优先级高的任务类型在资源池中优先进行响应。
内容资源存储至资源池后分别按任务类型进行划分,将各类型的数据源所发送的内容资源统一进行整合,使资源池中的内容资源被相应的业务需求提取时,将内容资源对应的任务类型作为标记统一进行提取。
S202:提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
控制端发布写入任务后,对写入任务进行信息提取,提取写入任务对应的任务类型,及确定将何种类型的内容资源写入至任务资源表。
本实施例中,任务类型根据内容资源对应的行业类别进行设定,各内容资源从数据源分别进行提取后,在资源池中分析内容资源自身对应的文本标记,调用近义词词典对各文本标记进行整合,形成各内容资源对应的既定标签。
按写入任务对应的任务类型与资源池中各既定标签分别进行匹配,提取匹配度大于既定阈值的目标标签,将目标标签下对应的内容资源作为写入任务对应的目标资源。
在其他实施例中,为了便于对写入任务进行调度,控制端对写入任务添加了优先级,当有多个写入任务到达资源池时,资源池按优先级从大到小的顺序分别对各写入任务进行响应。具体地,对各写入任务进行解析,除任务类型外,还得到各写入任务各自对应的优先级字段。按优先级对各写入任务进行排序,将排前的写入任务对应的任务类型对资源池中的内容资源进行匹配,得到所述任务类型对应的目标资源,后续地,按优先级较低的写入任务对应的任务类型对资源池中的内容资源再次进行匹配,从而从资源池中不断提取对应任务类型的内容资源,以完成对不同优先级的写入任务的响应。按写入任务为单位,分别从资源池中对目标资源进行提取,并在后续步骤中分别写入任务资源表。
S203:将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
所述任务资源表分别接收各写入任务注入的内容资源,本实施例中,采用mongodb的形式创建任务资源表,mongodb数据库适合海量数据查询,性能大大由于传统的关系型数据库,包括以下字段:
_id:全局唯一的标识id,由写入任务id、内容资源id组成;
task_id:long类型,写入任务对应的唯一身份id,不同写入任务对应的task_id不同;
resource_id:字符串类型,内容资源id,用来标识存储的内容资源;
priority:long类型,记录写入任务对应的优先级,以进行内容资源的排序。
本实施例中,索引分别创建于字段task_id和字段priority上,按优先级字段priority对所述任务资源表中各任务类型对应的目标资源进行排序,可有效的提升领取任务时任务进行检索和获取最大优先级对应任务的性能。当写入任务将内容资源写入任务资源表时,通过字段priority按优先级从高到低将内容资源加载至任务资源表中,优先级越高的写入任务越优先执行对应的任务资源表写入操作,同时为后续的前端服务器发起的提取请求提供前置条件。
当写入任务带有优先级时,以写入任务为单位,提取写入任务中参数的优先级信息后,将目标资源按优先级写入至任务资源表中,任务资源表记录了各批次对应的目标资源后,统一按各批次目标资源对应的优先级进行索引后排序,同时将任务字段task_id作为次序参数进行排序,则各目标资源以优先级进行排序后,在统一优先级的目标资源中再以任务字段进行二次排序,以提高后续对内容资源进行提取时对应的提取效率。
S204:前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
分布式系统中,作为前端服务器的节点根据业务需求向任务资源表所在的节点发起提取请求,解析出提取请求中对应的优先级参数,按优先级在任务资源表进行检索,将检索到的同一优先级的目标资源以目标记录集的方式从任务资源表中进行提取,提取至前端服务器,由前端服务器按批次对目标记录集中的目标资源统一进行标注。
本实施例中,提取事件包括对内容资源的复制和删除操作,即从任务资源表中复制具有对应优先级的目标资源,同时从任务资源表中删除这些目标资源,对目标资源的复制和删除操作通过mongodb的findAndRemove()方法实现,且具有原子性,即或者复制并删除,或者未复制且未删除,从而保持了任务资源表中各内容资源的一致性,避免了内容资源的流失和重复提取。
具体地,如果前端服务器发起的提取请求要求强优先级,即在分布式系统中要求先到达任务资源表中的提取请求对应的优先级最高,则可以以分布式锁的方式,将task_id设置为主键对任务资源表中其他节点发起的提取请求进行挂起,即锁定分任务资源表中的目标资源,以保证提取请求优先执行。执行完毕后,即优先级最高目标资源被提取完毕后,再解除分布式锁,允许接收其他节点发起的提取请求并进行响应。如果前端服务器发起的提取请求不要求强优先级,则任务资源表所在节点分别接收各前端服务器发来的提取请求,分别按提取请求中的优先权信息,选取对应优先权的目标资源分别以记录集的方式进行响应。
本申请实施例中的分布式系统中内容资源的处理方法,通过利用mongodb形式的任务资源表适合海量数据查询的这一性能优于关系型数据库的特点,对表中的内容资源进行优先级控制,使优先级越高的内容资源更快的进行响应,前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。
本申请另一实施例提供的分布式系统中内容资源处理方法至少包括以下步骤:
步骤1:将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
本实施例的标注系统是一个多节点部署的分布式系统,会接收爬虫服务器从各数据源抓取过来的内容资源,由于数据源种类很多,有图文、视频等,每种数据源对应的数据格式不同,需要标注和审核的范围也不同,同时针对数据处理的优先级有着不同的要求。
数据源对应的内容资源包括对应的文本标记,本实施例中对内容资源进行文本分析后得到对应的文本标记,如某些内容资源的文本标记为“自驾游”、“低调”、“游记”、“景点”、“沙漠”、“景区”等关键词;将文本标记进行整合,按近义词分析将“景点”、“景区”等作为近义词进行合并,形成既定标签,通过语义模型将这些既定标签分别与任务类型进行划分,本实施例中,经模型分析后,任务类型为“旅游”时,与各既定标签的匹配度较大,则将含有这些关键词的内容资源划分为“旅游”的任务类型。
步骤2:提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
分别提取所述任务类型各自对应的优先级;
按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
将所述目标资源分别从所述资源池中进行提取。
步骤3:将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
本实施例中,通过以定时器进行定时的方式将资源池中的符合任务条件的目标资源写入至任务资源表task_resource_load中,同时在任务资源表task_resource_load中启动定时提取,由前端服务器定时将对应优先级的目标任务提取至前端服务器。每隔5分钟(时间可配置)自动触发写入任务执行—>从资源池中按任务类型对应的优先级从高到低查询,提取匹配任务类型对应的目标资源—>按优先级高低依次加载到task_resource_load表中—>下一次定时的写入任务执行....
本实施例中,采用mongodb的形式建立任务资源表task_resource_load,由如下属性组成:
_id:全局唯一的标识id,由写入任务id、内容资源id组成,写入任务id具有唯一性,内容资源id在某数据源下也是唯一的,则可以有效的避免同一写入任务、同一内容资源在资源映射表中被重复写入或者删除,构成了不能重复提取的前提条件。
task_id:long类型,写入任务对应的唯一身份id,不同写入任务对应的task_id不同;建立索引可以有效提升表中目标数据对应的查询性能;
resource_id:字符串类型,内容资源id,用来标识存储的内容资源;
priority:long类型,记录写入任务对应的优先级,以进行内容资源的排序,建立索引可以优先提升表中目标资源对应的排序性能。
本实施例中通过mongodb表来代替传统的队列提升了灵活性,可以实现不同业务类型的数据源采取不同的优先级方式去领取,并且不会造成队列数量膨胀,一旦任务资源表中存储的内容资源过多,采用mongodb分片存储的方式来进行优化,提高了系统的维护性和扩展性。
步骤4:前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
本实施例中,根据不同任务类型发起提取请求,在任务资源表中提取对应的目标资源随即进行删除,这样能防止对应的目标资源被重复领取。
对应上述图1至图2描述的分布式系统中内容资源的处理方法,基于相同的技术构思,本申请实施例还提供了一种分布式系统中内容资源的处理系统,图3为本申请实施例提供的分布式系统中内容资源的处理系统的第一种模块组成示意图,该系统用于执行图1至图2描述的内容资源的处理方法,如图3所示,该系统包括:
存储模块301,用于将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
写入模块302,用于提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
排序模块303,用于将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
提取模块304,用于前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
可选地,所述存储模块301中,具体包括
发送单元,用于各数据源分别向所述资源池发送对应的内容资源;
标记提取单元,用于提取所述内容资源自身对应的文本标记,并将所述文本标记进行整合,形成既定标签;
关联单元,用于将所述既定标签按所述任务类型进行关联,并将所述内容资源统一按既定的任务类型进行划分。
可选地,所述写入模块302具体包括,
任务提取单元,用于分别提取所述任务类型各自对应的优先级;
任务排序单元,用于按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
资源提取单元,用于将所述目标资源分别从所述资源池中进行提取。
可选地,所述任务资源表分别记录不同优先级对应的目标资源;所述排序模块303具体包括,
资源提取单元,用于提取所述目标资源所属的任务类型对应的优先级;
索引单元,用于以所述优先级在所述任务资源表中建立索引,根据所述索引将对所述任务资源表中各任务类型对应的目标资源进行排序;
领取单元,用于提取所述写入任务对应任务类型的优先级,将所述目标资源按所述写入任务对应任务类型的优先级插入所述任务资源表中,使所述任务资源表中各任务类型的目标资源统一按对应优先级的顺序进行排序。
可选地,所述提取模块304具体包括:
检索单元,用于对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索,形成目标记录集;
删除单元,用于将所述目标记录集从所述任务资源表中进行提取,并在所述任务资源表中删除所述目标记录集对应的目标资源;
标注单元,用于所述前端服务器将所述目标记录集中的内容资源进行标注。
可选地,所述检索单元具体包括,
锁定子单元,用于提取所述提取请求中的分布式锁,根据所述分布式锁对所述任务资源表中进行锁定;
解除子单元,用于在所述任务资源表中删除所述目标记录集对应的目标资源后,解除所述分布式锁。
本申请实施例的分布式系统中内容资源的处理方法及系统,将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。本申请通过利用mongodb形式的任务资源表适合海量数据查询的这一性能优于关系型数据库的特点,对表中的内容资源进行优先级控制,使优先级越高的内容资源更快的进行响应,前端服务器则可按批次对高优先级的资源数据进行优先标注,提高了数据加工的实时性。
需要说明的是,本申请实施例提供的内容资源的处理系统与本申请实施例提供的内容资源的处理方法基于同一发明构思,因此该实施例的具体实施可以参见前述内容资源的处理方法的实施,重复之处不再赘述。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种分布式系统中内容资源的处理方法,其特征在于,所述方法包括:
将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
2.根据权利要求1所述的方法,其特征在于,所述将抓取的内容资源存储至分布式系统中的资源池时,
各数据源分别向所述资源池发送对应的内容资源;
提取所述内容资源自身对应的文本标记,并将所述文本标记进行整合,形成既定标签;
将所述既定标签按所述任务类型进行关联,并将所述内容资源统一按既定的任务类型进行划分。
3.根据权利要求1所述的方法,其特征在于,所述从所述资源池中提取所述任务类型对应的目标资源时,
分别提取所述任务类型各自对应的优先级;
按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
将所述目标资源分别从所述资源池中进行提取。
4.根据权利要求1所述的方法,其特征在于,所述任务资源表分别记录不同优先级对应的目标资源;所述目标资源写入所述任务资源表后,
提取所述目标资源所属的任务类型对应的优先级;
以所述优先级在所述任务资源表中建立索引,根据所述索引将对所述任务资源表中各任务类型对应的目标资源进行排序;
提取所述写入任务对应任务类型的优先级,将所述目标资源按所述写入任务对应任务类型的优先级插入所述任务资源表中,使所述任务资源表中各任务类型的目标资源统一按对应优先级的顺序进行排序。
5.根据权利要求1或4所述的方法,其特征在于,所述方法还包括:
所述任务资源表接收到所述提取请求时,对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索,形成目标记录集;
将所述目标记录集从所述任务资源表中进行提取,并在所述任务资源表中删除所述目标记录集对应的目标资源;
所述前端服务器将所述目标记录集中的内容资源进行标注。
6.根据权利要求5所述的方法,其特征在于:所述对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索时,
提取所述提取请求中的分布式锁,根据所述分布式锁对所述任务资源表中进行锁定;
在所述任务资源表中删除所述目标记录集对应的目标资源后,解除所述分布式锁。
7.一种分布式系统中内容资源的处理系统,其特征在于,所述系统包括:
存储模块,用于将抓取的内容资源存储至分布式系统中的资源池,并在所述资源池中将所述内容资源按既定的任务类型进行划分;
写入模块,用于提取写入任务对应的任务类型,分别从所述资源池中提取所述任务类型对应的目标资源;
排序模块,用于将所述目标资源按所述任务类型对应的优先级分别写入任务资源表中,并在所述任务资源表中分别对所述目标资源按各自对应的优先级进行排序;所述任务资源表用于缓存从所述资源池中提取的目标资源,各目标资源按对应任务类型的优先级分别进行索引后存储;
提取模块,用于前端服务器向所述任务资源表发起提取请求,按优先级在任务资源表中进行检索,形成目标记录集后提取至所述前端服务器,供所述前端服务器对所述记录集中的内容资源进行标注。
8.根据权利要求7所述的系统,其特征在于,所述存储模块中,具体包括
发送单元,用于各数据源分别向所述资源池发送对应的内容资源;
标记提取单元,用于提取所述内容资源自身对应的文本标记,并将所述文本标记进行整合,形成既定标签;
关联单元,用于将所述既定标签按所述任务类型进行关联,并将所述内容资源统一按既定的任务类型进行划分。
9.根据权利要求7所述的系统,其特征在于,所述写入模块具体包括,
任务提取单元,用于分别提取所述任务类型各自对应的优先级;
任务排序单元,用于按所述优先级将对应的写入任务进行排序,按优先级顺序分别在所述资源池对所述任务类型的内容资源进行匹配,得到所述任务类型对应的目标资源;
资源提取单元,用于将所述目标资源分别从所述资源池中进行提取。
10.根据权利要求7所述的系统,其特征在于,所述任务资源表分别记录不同优先级对应的目标资源;所述排序模块具体包括,
资源提取单元,用于提取所述目标资源所属的任务类型对应的优先级;
索引单元,用于以所述优先级在所述任务资源表中建立索引,根据所述索引将对所述任务资源表中各任务类型对应的目标资源进行排序;
领取单元,用于提取所述写入任务对应任务类型的优先级,将所述目标资源按所述写入任务对应任务类型的优先级插入所述任务资源表中,使所述任务资源表中各任务类型的目标资源统一按对应优先级的顺序进行排序。
11.根据权利要求7或10所述的系统,其特征在于,所述提取模块具体包括:
检索单元,用于对所述任务资源表中所述任务类型的优先级对应最高的所述目标资源进行检索,形成目标记录集;
删除单元,用于将所述目标记录集从所述任务资源表中进行提取,并在所述任务资源表中删除所述目标记录集对应的目标资源;
标注单元,用于所述前端服务器将所述目标记录集中的内容资源进行标注。
12.根据权利要求11所述的系统,其特征在于:所述检索单元具体包括,
锁定子单元,用于提取所述提取请求中的分布式锁,根据所述分布式锁对所述任务资源表中进行锁定;
解除子单元,用于在所述任务资源表中删除所述目标记录集对应的目标资源后,解除所述分布式锁。
CN201910837767.2A 2019-09-05 2019-09-05 一种分布式系统中内容资源的处理方法及系统 Active CN110597630B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910837767.2A CN110597630B (zh) 2019-09-05 2019-09-05 一种分布式系统中内容资源的处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910837767.2A CN110597630B (zh) 2019-09-05 2019-09-05 一种分布式系统中内容资源的处理方法及系统

Publications (2)

Publication Number Publication Date
CN110597630A true CN110597630A (zh) 2019-12-20
CN110597630B CN110597630B (zh) 2022-02-15

Family

ID=68857627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910837767.2A Active CN110597630B (zh) 2019-09-05 2019-09-05 一种分布式系统中内容资源的处理方法及系统

Country Status (1)

Country Link
CN (1) CN110597630B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147571A (zh) * 2019-12-24 2020-05-12 京东数字科技控股有限公司 分布式任务调度方法、装置、系统、存储介质及电子设备
CN111626835A (zh) * 2020-04-27 2020-09-04 口碑(上海)信息技术有限公司 任务配置方法、装置、系统、存储介质及计算机设备
CN114816512A (zh) * 2022-06-28 2022-07-29 广州博士信息技术研究院有限公司 一种资源池构建方法、系统及云平台
WO2022236816A1 (zh) * 2021-05-14 2022-11-17 华为技术有限公司 一种任务分配方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259744A1 (en) * 2005-05-11 2006-11-16 Wolfgang Matthes Method for information processing
US20110145930A1 (en) * 2009-12-14 2011-06-16 International Business Machines Corporation Method, Program Product and Server for Controlling a Resource Access to an Electronic Resource Stored Within a Protected Data
CN102460394A (zh) * 2009-06-22 2012-05-16 思杰系统有限公司 用于多核系统中的分布式哈希表的系统和方法
CN105187771A (zh) * 2015-07-31 2015-12-23 山东创德软件技术有限公司 一种厂级综合监管平台
CN107544999A (zh) * 2016-06-28 2018-01-05 百度在线网络技术(北京)有限公司 用于检索系统的同步装置及同步方法、检索系统及方法
CN107851108A (zh) * 2015-06-23 2018-03-27 微软技术许可有限责任公司 使用位向量搜索索引的匹配文档
CN109792410A (zh) * 2016-09-12 2019-05-21 思杰系统有限公司 压缩流量的服务质量优先级重新排序的系统和方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259744A1 (en) * 2005-05-11 2006-11-16 Wolfgang Matthes Method for information processing
CN102460394A (zh) * 2009-06-22 2012-05-16 思杰系统有限公司 用于多核系统中的分布式哈希表的系统和方法
US20110145930A1 (en) * 2009-12-14 2011-06-16 International Business Machines Corporation Method, Program Product and Server for Controlling a Resource Access to an Electronic Resource Stored Within a Protected Data
CN107851108A (zh) * 2015-06-23 2018-03-27 微软技术许可有限责任公司 使用位向量搜索索引的匹配文档
CN105187771A (zh) * 2015-07-31 2015-12-23 山东创德软件技术有限公司 一种厂级综合监管平台
CN107544999A (zh) * 2016-06-28 2018-01-05 百度在线网络技术(北京)有限公司 用于检索系统的同步装置及同步方法、检索系统及方法
CN109792410A (zh) * 2016-09-12 2019-05-21 思杰系统有限公司 压缩流量的服务质量优先级重新排序的系统和方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147571A (zh) * 2019-12-24 2020-05-12 京东数字科技控股有限公司 分布式任务调度方法、装置、系统、存储介质及电子设备
CN111147571B (zh) * 2019-12-24 2023-04-18 京东科技控股股份有限公司 分布式任务调度方法、装置、系统、存储介质及电子设备
CN111626835A (zh) * 2020-04-27 2020-09-04 口碑(上海)信息技术有限公司 任务配置方法、装置、系统、存储介质及计算机设备
CN111626835B (zh) * 2020-04-27 2024-02-02 口碑(上海)信息技术有限公司 任务配置方法、装置、系统、存储介质及计算机设备
WO2022236816A1 (zh) * 2021-05-14 2022-11-17 华为技术有限公司 一种任务分配方法及装置
CN114816512A (zh) * 2022-06-28 2022-07-29 广州博士信息技术研究院有限公司 一种资源池构建方法、系统及云平台
CN114816512B (zh) * 2022-06-28 2022-09-23 广州博士信息技术研究院有限公司 一种资源池构建方法、系统及云平台

Also Published As

Publication number Publication date
CN110597630B (zh) 2022-02-15

Similar Documents

Publication Publication Date Title
CN110597630B (zh) 一种分布式系统中内容资源的处理方法及系统
US7849227B2 (en) Stream data processing method and computer systems
JPH10228486A (ja) 分散ドキュメント分類システム及びプログラムを記録した機械読み取り可能な記録媒体
US7536512B2 (en) Method and apparatus for space efficient identification of candidate objects for eviction from a large cache
CN109726177A (zh) 一种基于HBase的海量文件分区索引方法
WO2012026140A1 (ja) データベース処理方法、データベース処理システム及びデータベースサーバ
CN109766318B (zh) 文件读取方法及装置
WO2020143181A1 (zh) 数据存储方法、装置、计算机设备及存储介质
WO2023236257A1 (zh) 文档搜索平台、搜索方法、装置、电子设备及存储介质
CN111125213A (zh) 数据采集的方法、装置及其系统
CN113076290A (zh) 文件删除方法、装置、设备、系统及存储介质
CN114281819A (zh) 数据查询方法、装置、设备及存储介质
CN107291938A (zh) 订单查询系统及方法
CN116662327B (zh) 一种用于数据库的数据融合清理方法
CN111382180B (zh) 一种本地缓存的数据清除方法和装置
CN110263060B (zh) 一种erp电子附件管理方法及计算机设备
CN112997172B (zh) 针对数据资产的计算高效的有效标签确定
CN111859042A (zh) 一种检索方法、装置及电子设备
CN107590233A (zh) 一种文件管理方法及装置
CN112052248A (zh) 一种审计大数据处理方法及系统
US12013861B2 (en) Method and apparatus for retrieving and enumerating object metadata in distributed storage system
CN103886028A (zh) 从存储设备拷贝文件到广告机的方法和装置
CN115080504A (zh) 文件管理方法、终端及存储介质
CN112612865A (zh) 一种基于Elasticsearch的文档存储方法和装置
CN112783843A (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