大数据首次是在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)复杂的批量数据处理:几分钟到数小时之间