大数据简介

大数据的概念

Volume(数据容量)、Variety(数据类型)、Viscosity(价值密度)、Velocity(速度)、Veracity(真实性)

大数据的性质

非结构性、不完备性、时效性、安全性、可靠性

大数据处理的全过程

数据采集与记录 –>  数据抽取、清洗、标记  –>  数据集成、转换、简约  –>  数据分析与建模  –>  数据解释

大数据技术的特征

1.分析全面的数据而非随机抽样

2.重视数据的复杂性,弱化精确性

3.关注数据的相关性,而非因果关系

大数据的关键技术

流处理、并行化、摘要索引、可视化

大数据应用趋势

细分市场、推动企业发展、大数据分析的新方法出现、大数据与云计算高度融合、大数据一体化设备陆续出现、大数据安全

科学研究范式

第一范式(科学实验)、第二范式(科学理论)、第三范式(系统模拟)、第四范式(数据密集型计算)

格雷法则

1.科学计算数据爆炸式增长

2.解决方案为横向扩展的体系结构

3.将计算用于数据而不是数据用于计算(把程序向数据迁移。以计算为中心转变为以数据为中心)

CAP理论

Consistency(一致性)、Availability(可用性)、Partition Tolerance(分区容错性)

CAP定理

一个分布式系统不可能同时满足一致性、可用性、分区容错性三个系统需求,最多只能同时满足两个。

CAP选择

1.放弃分区容错,导致可扩展性不强:MySQL、Postgres

2.放弃可用性,导致性能不是特别高:Redis、MongoDB、MemcacheDB、HBase、BigTable、Hypertable

3.放弃一致性,对一致性要求低:Cassandra、Dynamo、Voldemort 、CouchDB

HDFS

HDFS目标

1.兼容廉价的硬件设备

2.流数据读写

3.大数据集

4.简单的文件模型

5.强大的跨平台兼容性

HDFS主要组件(图来自哈尔滨理工大学大数据课程李老师的课件)

整理大数据期末考试复习提纲概念整理-风君雪科技博客

HDFS读文件

整理大数据期末考试复习提纲概念整理-风君雪科技博客


整理大数据期末考试复习提纲概念整理-风君雪科技博客

HDFS写文件

整理大数据期末考试复习提纲概念整理-风君雪科技博客

HDFS容错

1.心跳检测:NameNode和DataNode之间

2.文件块完整性:记录新建文件所有块的校验和

3.集群负载均衡:自动从负载重的DataNode上迁移数据

4.文件删除:存放在/trash下,过一段时间才正式删除。在hdfs-site.xml中配置

MapReduce

函数式编程优点

1.逻辑可证

2.模块化

3.组件化

4.易于调试

5.易于测试

6.更高的生产率

函数式编程的特征

1.没有副作用:没有修改过函数在其作用域之外的量并被其他函数使用

2.无状态的编程:将状态保存在参数中,作为函数的附赠品来传递(不是很懂)

3.输入值和输出值:在函数式编程中,只有输入值和输出值。函数是基本的单位。在面向对象编程中,将对象传来传去;在函数式编程中,是将函数传来传去。

MapReduce流程图(图来自南京大学黄宜华老师的课件)

整理大数据期末考试复习提纲概念整理-风君雪科技博客

大数据流式计算

流式数据的特征

实时性、易失性、突发性、无序性、无限性、准确性

大数据流式计算模型

数据流管理系统:固定查询、ad hoc查询

大数据流式计算:Twitter Storm、Yahoo S4

Storm总体架构

主节点Nimbus:负责全局资源分配、任务调度、状态监控、故障检测

从节点Supervisor:接收任务,启动或停止工作进程Worker。每个Worker内部有多个Executor。每个Executor对应一个线程。每个Executor对应一个或多个Task。

Zookeeper:协调、存储元数据、从节点心跳信息、存储整个集群的所有状态信息、所有配置信息

Storm特征

1.编程简单

2.支持多语言

3.作业级容错

4.水平扩展

5.底层使用Zero消息队列,快

Storm缺点

1.资源分配没有考虑任务拓扑的结构特征,无法适应数据负载的动态变化

2.采用集中式的作业级容错,限制了系统的可扩展性

搜索引擎

搜索引擎的定义

根据一定的策略、运用特定的计算机程序、从互联网上搜集信息,对信息进行组织和处理之后,将这些信息展示给用户的系统叫搜索引擎。

搜索引擎的组成

搜索器:搜集信息

索引器:抽取索引

检索器:在库中检索,排序。

用户接口:展示

搜索引擎的工作过程

爬行 -> 抓取存储 -> 预处理 -> 排名

搜索引擎的评价指标

查全率、查准率、响应时间、覆盖范围、用户方便性

大数据分析

数据分析的目的

对杂乱无章的数据进行集中、萃取、提炼,进而找出所研究对象的内在规律,发现其价值。

数据分析的意义

在杂乱的数据中分析出有价值的内容,获得对数据的认知。

数据分析的类型

1.探索性数据分析(为了形成值得假设的检验)

2.定性数据分析(非数值型数据)

3.离线数据分析(先存于磁盘,批处理)

4.在线数据分析(实时)

———————————————————
学如不及,犹恐失之