探码科技基于云计算研发的探码Web大数据采集系统——利用众多的云计算服务器协同工 作,能快速采集大量数据,避免了一台计算机硬件资源的瓶颈,另外随着行业之间对数据采集的要求越来越高,传统post采集不能解决的技术问题也逐步被解决,以探码Kapow/Dyson采集器为代表的新一代智能采集器,能模拟人的思维,模拟人的操作,从而彻底解决了ajax等技术难题。
网页一般是设计给人浏览的,所以探码Web大数据采集系统模拟人的智能采集器的工作是非常顺利的,不论后台技术是什么,当数据始终显示在人的面前的时候,智能采集器就能开始提取。最终把计算机的能力发挥到极致,使得计算机可以替代人完成网页数据采集的工作。并且利用大数据云采集技术,把计算机的计算能力也发挥到了极致。目前这一采集技术得到了越来越广泛的应用。各行各业只要是从网络上获取一些数据或者信息,都可以使用此类技术。
探码Web大数据采集系统分为8个子系统,分别为大数据集群系统、数据采集系统、采集数据源调研、数据爬虫系统、数据清洗系统、数据合并系统、任务调度系统、搜索引擎系统。
大数据集群系统
本系统可以储存TB级采集到的数据,实现数据持久化。数据存储采用MongoDB集群方案,此方案在集群上有两大特点:
分片:分片即MongoDB在服务器之间划分数据的一项技术。MongoDB能够自动在分片之间平衡数据,并且能够在不需要数据库离线的情况下增加和删除分片。
复制:为了保证高可用性,MongoDB维护了许多数据的冗余备份,复制被嵌入于MongoDB,并且在不需要专业网络的情况下就可以在广域网内工作。
数据采集系统
本系统配置Kapow、PhantomJS、Mechanize采集环境,运行于Docker容器中,由Rancher编排容器。
采集数据源调研
本系统是在“数据爬虫系统”开始之前,必不可少的一个环节,经过调研,得出需要采集页面、过滤的关键字、需要提取的内容等。
数据爬虫系统
爬虫程序都是独立的个体,结合需要的数据采集系统服务器,通过Rancher编排,自动在DigitalOcean中启动爬虫程序,根据输入参数,抓取到指定的数据,然后通过API发送回我们的大数据集群系统。
数据清洗系统
本系统通过Ruby on Rails + Vue技术框架,实现Web前端展示,展示出爬虫程序抓取到的数据,方便我们进行清洗。数据清洗系统主要由两部分组成:
手工清洗:通过Web前端展示出抓取到的数据,对数据进行直观分析,得出哪些条件的数据需要删除,哪些条件的数据需要修改。
自动清洗:经过手工清洗之后,可能会得出一些清洗模式,这种模式适用于所有数据。我们把这种模式记录在程序里,将来的数据只要匹配这种模式,数据将来会被自动清洗,不再需要人工清洗。
数据合并系统
本系统通过Ruby on Rails + Vue技术框架,实现Web前端展示,对数据进行合并。数据被清洗之后,数据合并系统会自动匹配大数据集群中的数据,通过相识度评分,关联可能相识的数据。通过Web前端展示匹配结果,可以人工或自动合并数据。
任务调度系统
本系统通过Ruby on Rails + Vue技术框架,Sidekiq队列调度,Redis调度数据持久化,实现Web前端任务调度系统。通过任务调度系统,可以动态开启、关闭,定时启动爬虫程序。
搜索引擎系统
本系统通过ElasticSearch集群,实现搜索引擎服务。搜索引擎是PC端检索系统能够从大数据集群中、快速地检索数据的必要工具,通过ElasticSearch集群,运行3个以上的Master角色保证群集系统的稳定性,2个以上Client角色保证查询的容错性,2个以上的Data角色保证查询、写入的时效性。通过负载均衡连接Client角色,分散数据查询压力。
领取专属 10元无门槛券
私享最新 技术干货