大数据环境下的数据采集工具方法有哪些

数据采集的设计,几乎完全取决于数据源的特性,毕竟数据源是整个大数据平台蓄水的上游,数据采集不过是获取水源的管道罢了。

一、大数据环境下的数据处理需求

大数据环境下数据来源非常丰富且数据类型多样,存储和分析挖掘的数据量庞大,对数据展现的要求较高,并且很看重数据处理的高效性和可用性。

二、传统大数据处理方法的不足

传统的数据采集来源单一,且存储、管理和分析数据量也相对较小,大多采用关系型数据库和并行数据仓库即可处理。

三、大数据采集

任何完整的大数据平台,一般包括以下的几个过程:(如果对大数据生命周期认识不够清晰,可参考还不懂什么是大数据?大数据的生命周期告白)

数据采集–>数据存储–>数据处理–>数据展现(可视化,报表和监控)

大数据生命周期

其中,数据采集是所有数据系统必不可少的,随着大数据越来越被重视,数据采集的挑战也变的尤为突出。我们今天就来看看大数据技术在数据采集方面采用了哪些方法:

1、离线采集:

工具:ETL;

在数据仓库的语境下,ETL基本上就是数据采集的代表,包括数据的提取(Extract)、转换(Transform)和加载(Load)。在转换的过程中,需要针对具体的业务场景对数据进行治理,例如进行非法数据监测与过滤、格式转换与数据规范化、数据替换、保证数据完整性等。

2、实时采集:

工具:Flume/Kafka;

实时采集主要用在考虑流处理的业务场景,比如,用于记录数据源的执行的各种操作活动,比如网络监控的流量管理、金融应用的股票记账和 web 服务器记录的用户访问行为。在流处理场景,数据采集会成为Kafka的消费者,就像一个水坝一般将上游源源不断的数据拦截住,然后根据业务场景做对应的处理(例如去重、去噪、中间计算等),之后再写入到对应的数据存储中。这个过程类似传统的ETL,但它是流式的处理方式,而非定时的批处理Job,些工具均采用分布式架构,能满足每秒数百MB的日志数据采集和传输需求

3、互联网采集:

工具:Crawler, DPI等;

Scribe是Facebook开发的数据(日志)收集系统。又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它支持图片、音频、视频等文件或附件的采集。

爬虫

除了网络中包含的内容之外,对于网络流量的采集可以使用DPI或DFI等带宽管理技术进行处理。

4、其他数据采集方法

对于企业生产经营数据上的客户数据,财务数据等保密性要求较高的数据,可以通过与数据技术服务商合作,使用特定系统接口等相关方式采集数据。比如八度云计算的数企BDSaaS,无论是数据采集技术、BI数据分析,还是数据的安全性和保密性,都做得很好。

数据的采集是挖掘数据价值的第一步,当数据量越来越大时,可提取出来的有用数据必然也就更多。只要善用数据化处理平台,便能够保证数据分析结果的有效性,助力企业实现数据驱动。

扩展一下 :所见即所得我们是不是真的做到?规则配置也是个重复的大任务?重复网页如何不抓取?

1、有些网站利用js生成网页内容,直接查看源代码是一堆js。 可以使用mozilla、webkit等可以解析浏览器的工具包解析js、ajax,不过速度会有点慢。

2、网页里有一些css隐藏的文字。使用工具包把css隐藏文字去掉。

3、图片flash信息。 如果是图片中文字识别,这个比较好处理,能够使用ocr识别文字就行,如果是flash目前只能存储整个url。

4、一个网页有多个网页结构。如果只有一套抓取规则肯定不行的,需要多个规则配合抓取。

5、html不完整,不完整就不能按照正常模式去扣取。这个时候用xpath肯定解析不了,我们可以先用htmlcleaner清洗网页后再解析。

6、 如果网站多起来,规则配置这个工作量也会非常大。如何帮助系统快速生成规则呢?首先可以配置规则可以通过可视化 配置,比如用户在看到的网页想对它抓取数据,只需要拉开插件点击需要的地方,规则就自动生成好了。另在量比较大的时候可视化还是不够的,可以先将类型相同 的网站归类,再通过抓取的一些内容聚类,可以统计学、可视化抓取把内容扣取出几个版本给用户去纠正,最后确认的规则就是新网站的规则。这些算法后续再讲。 这块再补充一下

扩展一下 :所见即所得我们是不是真的做到?规则配置也是个重复的大任务?重复网页如何不抓取?

1、有些网站利用js生成网页内容,直接查看源代码是一堆js。 可以使用mozilla、webkit等可以解析浏览器的工具包解析js、ajax,不过速度会有点慢。2、网页里有一些css隐藏的文字。使用工具包把css隐藏文字去掉。3、图片flash信息。 如果是图片中文字识别,这个比较好处理,能够使用ocr识别文字就行,如果是flash目前只能存储整个url。4、一个网页有多个网页结构。如果只有一套抓取规则肯定不行的,需要多个规则配合抓取。5、html不完整,不完整就不能按照正常模式去扣取。这个时候用xpath肯定解析不了,我们可以先用htmlcleaner清洗网页后再解析。6、 如果网站多起来,规则配置这个工作量也会非常大。如何帮助系统快速生成规则呢?首先可以配置规则可以通过可视化 配置,比如用户在看到的网页想对它抓取数据,只需要拉开插件点击需要的地方,规则就自动生成好了。另在量比较大的时候可视化还是不够的,可以先将类型相同 的网站归类,再通过抓取的一些内容聚类,可以统计学、可视化抓取把内容扣取出几个版本给用户去纠正,最后确认的规则就是新网站的规则。这些算法后续再讲。 这块再补充一下

0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论