大数据:指的是所涉及的数据集规模已经超过了传统数据库软件的获取、存储、管理和分析的能力
大数据的产生:三个阶段:运营式系统阶段,被动存储在数据库中;用户原创内容阶段,web2
0,主动;感知式系统阶段,感知式系统的广泛使用
物联网架构:三层,感知层、网络层、应用层
关系:物联网,移动互联网再加上传统互联网,每天都在产生海量数据,而大数据又通过云计算的形式,将这些数据筛选处理分析,提取出有用的信息,这就是大数据分析
大数据存储系统的分类:分布式数据库,存储结构化数据如Spanner,Oceanbase,RDS;分布式文件系统,存储非结构化数据,如HDFS、GFS、TFS;NoSQL(NotOnlySQL)数据库:键值存储,如Redis,类似Hash表,存储半结构化数据,常用于分布式缓存;列存储,如HBase、Bigtable,结构松散,单表操作,不支持多表连接
大数据的三大关键问题:存储(容量-NAS等、吞吐量-RAID)、计算(多核、并行)、容错
容错:数据容错、计算任务容错(故障检测、计算数据定位与获取、任务迁移)
RAID0:并行磁盘;RAID1:镜像冗余;RAID10:1+0;RAID5:校验冗余
Hadoop的特点:扩容能力、成本低(普通机器)、高效率(在数据所在的节点并行计算)、可靠性(冗余、自动重新部署失败任务)
缺点:用Java实现,Java的IO处理虽然没有性能瓶颈,但是对于CPU密集型的任务是一个麻烦,因此,有些算法效率不会提高很多
进程:MasterNode:Namenode、SecendaryNamenode、Jobtracker;SlaveNode:Tasktracker、Datanode
MapReduce流程:把(job的)输入拆分成固定大小的splits,每个split(默认对应1个block的大小)对应一个ma