System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 分布式开源数据采集系统技术方案_技高网

分布式开源数据采集系统技术方案

技术编号:40296839 阅读:5 留言:0更新日期:2024-02-07 20:45
本发明专利技术的技术方案是公开了一种开源数据分布式采集系统,其特征在于,基于容器技术,采用Python语言开发数据挖掘与搜集服务,采用Springboot+Vue开发数据挖掘与收集模块、采集任务管理模块、采集策略管理模块、采集驱动管理模块以及采集数据组织管理。本发明专利技术通过采集任务维护,自定义采集主题、采集策略和驱动模版,实现开源网页数据内容的定向分布式采集、清洗、分类、存储和检索,通过数据批量导出,实现采集数据整体打包后迁移到内部生成环境,实现对知识图谱构建等任务提供原始数据支撑。

【技术实现步骤摘要】

本专利技术属于开源数据采集。


技术介绍

1、在构建知识图谱的过程中,原始数据越丰富构建的知识图谱实体、关系实例类型就越多,知识图谱实例数据就越丰富,除了用户积累的办公文档、期刊论文、技术报告等内部成果数据外,互联网上的专业网站、技术博客等都可以为知识图谱构建提供海量的原始素材,能够极大提升构建的知识图谱质量。

2、随着互联网的大数据时代的来临,互联网上文本、图像、语音、视频等数据呈爆发式增长,互联网现在可以说是一个庞大的数据库资源,虽然互联网上海量的、多样的数据让人们获取有价值数据变得更加容易,但是数据类型、格式多样,处于无序状态,存在大量的无用数据,高效准确地获取有价值数据变得更加困难。如何才能获取有效的数据,为知识图谱构建等任务提供数据支撑,基于网络爬虫的分布式开源数据采集软件可以自动从互联网获取相关有价值的数据,并对采集的数据进行清洗、去重、分类、存储和检索等管理功能,能够实现个性化定制的网络数据获取需求。

3、现有的网络数据采集系统都是实现对某一类网站数据的采集,比喻影视网站评论信息、微博热点话题等,只关注网页数据的采集和存储功能,未提供数据分类、数据检索、数据管理等网页数据后期处理功能,不能满足将采集的网页数据进一步处理后方便地导入到生成环境中,实现高价值数据的利用。同时采集的信息主题、网站不能自定义配置,因此亟需一种互联网数据的系统,能够对采集任务进行采集任务维护,自定义采集主题、采集策略和驱动模版,不仅满足个性化定制的采集需求,同时提供数据检索、数据详情查看、数据维护、数据导出等功能,方便用户对采集的网络数据进一步过滤、处理,方便将高价值数据迁移到生成环境,为知识图谱构建等任务提供数据支撑。


技术实现思路

1、本专利技术要解决如下技术问题:

2、1)分布式网络数据挖掘与搜集:能够满足爬取不同爬取任务的多样性,以及爬取节点数量的动态可伸缩性;分布式网络数据挖掘与搜集主要是以任务的方式对指定资源进行定向采集,采用多线程设计,可以基于容器实现采集服务的自定义弹性伸缩;用于对外网的数据资源进行采集、清洗、去重、整合的功能,同时为存储的数据资源生成关键字、摘要等信息,提升数据资源检索的准确率和效率;

3、2)数据采集任务监控:能够对用户新建的采集任务进行状态监控,当采用分布式进行部署和采集的时候,有必要了解各个采集任务的状态(未启动、运行中、暂停、完成)、已采集记录数量、未完成的url数量等,方便用户及时了解任务采集进展;

4、3)采集数据组织管理:能够对采集的网页数据进行分类导航查询、关键字检索、详情查看、修改、删除、导出等操作,对数据资源根据实际需要进一步进行人工修改、过滤,对高价值数据进行导出,定向采集数据通过打包通过离线的方式迁移到内网环境中,实现对内网环境中数据的增量更新和补充,为知识图谱构建等任务提供数据支撑。

5、为了解决上述技术问题,本专利技术的技术方案是提供了一种开源数据分布式采集系统,其特征在于,基于容器技术,采用python语言开发数据挖掘与搜集服务,采用springboot+vue开发数据挖掘与收集模块、采集任务管理模块、采集策略管理模块、采集驱动管理模块以及采集数据组织管理,其中:

6、数据挖掘与收集模块,采用多线程设计,以任务的方式对指定资源进行定向采集,基于容器实现采集服务的自定义弹性伸缩,用于对外网的数据资源进行解析、下载、清洗、去重、存储,并在数据存储的过程中生成记录标题、摘要、关键字,并建立索引;

7、采集任务管理模块包括采集任务的新建、修改、删除和查询,新建采集任务时,支持为采集任务配置主题,支持包括根据设置的主题关键字筛选需要下载保存的数据,所新建的采集任务能按照用户配置的爬取策略计划定时或定期执行;

8、采集策略管理包括采集策略的新建、修改、删除和查询,其中,通过新建采集策略,为采集任务配置采集策略,从而生成开源数据获取计划,根据配置的采集策略执行相关的采集任务,实现采集数据的自动获取;任务调度器根据任务配置信息分配相应的资源,并根据配置的采集策略进行任务调度,实现对数据源数据的持续动态获取,并对获取的数据进行清洗、解析和整合;

9、采集驱动管理模块包括采集驱动的新建、修改、删除和查询,其中,采集驱动文件内容定义了对定向采集网站内容提取、过滤、清洗、去重,并根据网站特点,采取相应的反反爬虫策略;

10、采集数据组织管理模块通过人机交互界面提供对数据资源的分类、检索、详情查看、修改、删除、打包导出,对已采集的数据资源进行人工审查、清洗,同时通过数据资源打包,以离线的方式将采集的数据资源迁移到内部生产环境。

11、优选地,所述数据挖掘与收集模块通过对不同来源的数据按照目标源的内容格式进行自动提取解析,完成对原始数据的基础处理和初步标准化。

12、优选地,所述采集策略分为手动采集策略和自动采集策略,其中,手动采集策略可以设置起始时间和执行周期。

13、优选地,所述采集驱动管理模块对采集完成的数据进行特殊处理和通用处理,其中,特殊处理包括英文翻译、二进制数据解析,通用处理包括为数据资源生成标题、主题词、摘要,并建议索引。

14、优选地,基于主节点以及从节点实现数据获取流程,其中,主节点负责爬取任务的全生命周期管理以及从节点资源的协调;各从节点之间相互透明,每个从节点仅负责主节点当前分配的爬取任务,任务的元信息对从节点透明;同时,主节点还需要协调同一任务下发现的url的去重和优先级分配。

15、优选地,所述主节点和所有的所述从节点的交互都使用web服务进行包装,并通过web服务进行通信。

16、优选地,将所述从节点的爬取循环分为任务无关的爬取引擎,以及具体任务定义的爬取驱动两部分;爬取数据的持久化设计分为任务相关数据,以及任务无关数据两部分。

17、优选地,所述主节点和所有的所述从节点以及数据库服务均使用沙盒隔离的容器技术进行微服务搭建,服务化的容器基于docker技术,其中,小规模的伪分布式集群使用容器组件docker compose进行管理,大规模的分布式集群则依托docker swarm/k8s容器云实现。

18、本专利技术通过采集任务维护,自定义采集主题、采集策略和驱动模版,实现开源网页数据内容的定向分布式采集、清洗、分类、存储和检索,通过数据批量导出,实现采集数据整体打包后迁移到内部生成环境,实现对知识图谱构建等任务提供原始数据支撑。与现有技术方案相比,本专利技术具有如下有益效果:

19、1)能够实现公开源数据资源的分布式爬取,支持制定爬取主题,可以面向主题爬取指定url的数据,相比普通爬虫,面向主题的爬虫可以抓取有较高相关度页面下的链接页面,然后直接丢掉相关度较低的页面。通过为采集任务配置采集策略能够实现定时或定期的执行,实现对数据源数据的持续动态获取,满足用户定制可行化的采集需求。

20、2)能够对采集完成的数据资源进行检索、查看、本文档来自技高网...

【技术保护点】

1.一种开源数据分布式采集系统,其特征在于,基于容器技术,采用Python语言开发数据挖掘与搜集服务,采用Springboot+Vue开发数据挖掘与收集模块、采集任务管理模块、采集策略管理模块、采集驱动管理模块以及采集数据组织管理,其中:

2.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述数据挖掘与收集模块通过对不同来源的数据按照目标源的内容格式进行自动提取解析,完成对原始数据的基础处理和初步标准化。

3.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述采集策略分为手动采集策略和自动采集策略,其中,手动采集策略可以设置起始时间和执行周期。

4.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述采集驱动管理模块对采集完成的数据进行特殊处理和通用处理,其中,特殊处理包括英文翻译、二进制数据解析,通用处理包括为数据资源生成标题、主题词、摘要,并建议索引。

5.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,基于主节点以及从节点实现数据获取流程,其中,主节点负责爬取任务的全生命周期管理以及从节点资源的协调;各从节点之间相互透明,每个从节点仅负责主节点当前分配的爬取任务,任务的元信息对从节点透明;同时,主节点还需要协调同一任务下发现的URL的去重和优先级分配。

6.如权利要求5所述的一种开源数据分布式采集系统,其特征在于,所述主节点和所有的所述从节点的交互都使用web服务进行包装,并通过web服务进行通信。

7.如权利要求5所述的一种开源数据分布式采集系统,其特征在于,将所述从节点的爬取循环分为任务无关的爬取引擎,以及具体任务定义的爬取驱动两部分;爬取数据的持久化设计分为任务相关数据,以及任务无关数据两部分。

8.如权利要求5所述的一种开源数据分布式采集系统,其特征在于,所述所述主节点和所有的所述从节点以及数据库服务均使用沙盒隔离的容器技术进行微服务搭建,服务化的容器基于Docker技术,其中,小规模的伪分布式集群使用容器组件docker compose进行管理,大规模的分布式集群则依托docker swarm/k8s容器云实现。

...

【技术特征摘要】

1.一种开源数据分布式采集系统,其特征在于,基于容器技术,采用python语言开发数据挖掘与搜集服务,采用springboot+vue开发数据挖掘与收集模块、采集任务管理模块、采集策略管理模块、采集驱动管理模块以及采集数据组织管理,其中:

2.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述数据挖掘与收集模块通过对不同来源的数据按照目标源的内容格式进行自动提取解析,完成对原始数据的基础处理和初步标准化。

3.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述采集策略分为手动采集策略和自动采集策略,其中,手动采集策略可以设置起始时间和执行周期。

4.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,所述采集驱动管理模块对采集完成的数据进行特殊处理和通用处理,其中,特殊处理包括英文翻译、二进制数据解析,通用处理包括为数据资源生成标题、主题词、摘要,并建议索引。

5.如权利要求1所述的一种开源数据分布式采集系统,其特征在于,基于主节点以及从节点实现数据获取...

【专利技术属性】
技术研发人员:王盼盼许晓斐黄哲牛硕硕桑耘
申请(专利权)人:华东计算技术研究所中国电子科技集团公司第三十二研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1