[发明专利]一种基于CS架构的分布式数据采集方法及系统在审
申请号: | 202010306601.0 | 申请日: | 2020-04-17 |
公开(公告)号: | CN111538590A | 公开(公告)日: | 2020-08-14 |
发明(设计)人: | 姜海强;秦斌 | 申请(专利权)人: | 姜海强 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/2458;G06F16/25;G06F16/953;H04L29/06 |
代理公司: | 上海思牛达专利代理事务所(特殊普通合伙) 31355 | 代理人: | 丁剑 |
地址: | 100000 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cs 架构 分布式 数据 采集 方法 系统 | ||
本发明公开了一种基于CS架构的分布式数据采集方法及系统,一种基于CS架构的分布式数据采集系统,包括CS架构和分布式集群架构,其中,所述CS架构包括客户端和服务端,所述分布式集群架构包括主节点和从节点,且所述从节点设置于所述客户端上,所述主节点设置于所述服务端上。本发明通过基于CS架构的分布式数据采集,提出了将负载均衡代理服务用于解决代理数据采集,可以保证数据不丢失,同时支持国内外网站数据的合法请求;提出了分布式的策略,随时可以新增下载节点,扩充海量数据;前端提供了可视化前端,可以直观的看到集群的运行状态并进行管理。
技术领域
本发明涉及数据采集技术领域,具体来说,涉及一种基于CS架构的分布式数据采集方法及系统。
背景技术
随着AI底层算法架构的发展及稳定,想要提高算法的精度和泛化性能,需要收集大量的线上数据,并通过数据挖掘手段来获取其中的巨大价值,然而如何高效的获取数据是一个亟待解决及创新的问题。
目前已有的数据采集技术都是部署在本地物理机服务器上的,通常需要消耗大量的CPU(中央处理器)、网络带宽资源和IO(输入/输出(Input/Output))资源,其他服务器使用者会感觉很卡顿,影响资源使用。
主要存在以下问题:
1、现有的技术用户为了拓展数据下载节点需要将相同的程序和环境部署到新的机器上,程序的可拓展性差,不适用于动态延伸,更新版本流程繁琐。
2、现有的数据采集技术中,往往会因为网络环境的不稳定,导致网络丢包,数据损失且下载速度受限。
3、现有的爬虫技术,是将下载后的数据直接存储到SATA中,在分布式环境或者多并发写入,SATA的IO会阻塞使下载效率大打折扣。
4、现有分布式数据采集框架Scrapy-redis,封装了爬虫需要的大部分网络依赖库,小型采集任务可以按Scrapy框架规定的方案进行开发。但Scrapy-redis分布式架构存在三个缺点:
a)对于大规模分布式采集,针对特定的网站反爬取策略需要定制一套爬取方案,工作难度很大,如果使用Scrapy-redis的开发规则进行代码调整,或者修改Scrapy底层源码的工作量都很大。
b)Scrapy中调度器(Scheduler)主要负责对各个spider节点的申请优先级进行排序和下载任务的去重,无法监控spider的运行状态,无法根据不同申请者的情况对任务进行主动分配,各个spider节点的资源利用率无法被充分使用。
c)redis是一种内存级数据库,数据的读取快,但是当系统以外宕机的时候,可能因为持久化不及时导致数据丢失,且redis在公开网络中进行访问,容易受到攻击。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种基于CS架构的分布式数据采集方法及系统,以克服现有相关技术所存在的上述技术问题。
本发明的技术方案是这样实现的:
一种基于CS架构的分布式数据采集系统,包括CS架构和分布式集群架构,其中,所述CS架构包括客户端和服务端,所述分布式集群架构包括主节点和从节点,且所述从节点设置于所述客户端上,所述主节点设置于所述服务端上,其中;
所述客户端,搭建虚拟化容器引擎或搬瓦工云服务器,向资源池申请下载资源以及向目标网页进行网址解析下载和存储;
所述服务端,物理主机,接受客户机的请求,将数据响应给客户机;
所述分布式集群架构,用于实现大规模数据运算和分布式训练。
进一步还包括负载均衡代理、数据库、资源池、多级存储介质和可视化前端,其中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于姜海强,未经姜海强许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010306601.0/2.html,转载请声明来源钻瓜专利网。