大数据首次是在1998rh USENIX大会上由JohnR.Masey提出的。

一、什么是大数据?

大数据不是特指hadoop,它是一系列技术的集合,而hadoop只是其中一种具体处理数据的框架技术。

二、数据分类

(1)结构化数据:结构固定,每个字段有固定的语义和长度,计算机程序可以直接处理

(2)非结构化数据:计算机程序无法直接处理,需要先对数据进行格式转换或信息提取。

注意:半结构化数据

三、如何获取数据

1、探针

(1)按探针位置进行分类,探针可以分类:

1)内置探针:探针设备和已有网络设备部署在同一个机框内,直接获取数据。

2)外置探针:无法改变原有网络,需要额外部署探针

(2)探针能力

1)探针设备的高容量、高度集成

2)流量解析(网络数据解析),流量数据解析(协议识别)常用方法

1)端口检测技术:根据TCP/UDP的端口来识别应用。比如DNS协议默认采用53端口、Windows远程调用采用135端口。

2)SPI检测技术:对IP包的5元组进行分析。5元组分别为源地址、源端口、目的地址、目的端口、协议类型

3)协议智能识别技术

(3)转发能力(对网络要求高)

(4)探针类型:http探针、tcp探针等。

2、网页采集(网络爬虫)

网络爬虫是搜索引擎抓取系统的重要组成部分。爬虫的主要目的是将互联网上的网页下载到本地,形式一个或联网内容的镜像备份。

(1)从爬虫角度对互联网进行分类

1)已下载未过期见多页

2)已下载已过期网页:抓取的网嶚已过期

3)待下载网页:待抓取URL队列中的那些页面

4)可知网页:可以通过已抓取页面或待抓取URL对应页面进行分析获取到URL;

5)不可知网页:无法通过爬虫直接抓取下载的。

(2)抓取URL策略:待抓取URL队列中URL排列序列决定了先要抓取哪个页,后抓取哪个页面。

1)深度优先遍历策略

从起始页开始,一个链接一个链接地跟踪下去,处理完这条线络之后再转入下一个超台页,继续跟踪链接。

2)宽度优先遍历策略

首先抓取超始网页中链接的所有网页,然后再选择其中一个链接网页,继续抓取此网页中链接的所有网页。

3)反向链接数策略

反向链接数表示一个网页的内容受其他人推荐的程度。

反向链接数指一个网页被其他网页链接指向的数量。

4)PartialPageRank策略

5)OPIC历策略

6)大站优先策略

将待抓取URL队列中的所有网页按所属的网站进行分类,待下载页面数多的网站则优先下载。

(3)更新策略:决定什么时候更新已下载的页面。

1)历史参考策略

根据页面以往的历史更新数据,一般通过泊松过程进行建模预测页面未来何时会发生变化。

2)用户体验策略

保留网页的多个历史版本,根据过去每次的内容变化对搜索质量影响得出一个平均值,该值决定什么时候重新抓取数据。

3)聚类抽样策略

注意:1)和2)都需用到历史信息,仍会存在以下问题:

第一点,系统保留每个网页的多个历史版本信息,则会增加系统负但;

第二点,如果是新的网页,新网页没有历史记录,则无法确定更新策略。

3、日志收集

任何生产系统在运行过程中都会大量日志,且日志存储一段时间后会被自动清理,如何收集各生产系统的日志信息并对其进行分析。常用组件Flume(日志收集系统)+ZooKeepper、Kafka+ZooKeepper(将前端采集的信息转发至后端,保证信息的可靠性、实时性)

三、流处理

1、流数据:随时间延续无限增长动态数据集合。

2、大数据处理按处理时间跨度维度分为以下几类:

(1)基于实时数据流的数据处理:数百毫秒到数秒之间

(2)基于历史数据的交互式查询:数十秒到数分钟之间

(3)复杂的批量数据处理:几分钟到数小时之间