1.大数据要了解的概念:
分而治之
并行计算:分布式存储、分布式算法
计算向数据移动
算法效率:空间复杂度和时间复杂度, 时间效率和空间效率
数据本地化读取
2.大数据发展简史:
hadoop.apache.org
Hadoop由 Apache Software Foundation 于 2005 年秋天作为Lucene的子项目Nutch的一部分正式引入
2006 年 3 月份,Map/Reduce 和 Nutch Distributed File System (NDFS) 分别被纳入称为 Hadoop 的项目中。
Cloudera公司在2008年开始提供基于Hadoop的软件和服务。
2016年10月hadoop-2.6.5
2017年12月hadoop-3.0.0
The project includes these modules:
Hadoop Common
Hadoop Distributed
File System (HDFS™) 一致性 分布式文件系统,1个主
Hadoop YARN Hadoop
MapReduce Other Hadoop-related projects at Apache include:
Ambari™
Avro™
Cassandra™
Chukwa™
Hbase™
Hive™
Mahout™
Pig™
Spark™
Tez™
ZooKeeper™
3.理论知识点
存储模型 架构设计 角色功能 元数据持久化 安全模式 副本放置策略 读写流程 安全策略
存储模型:
文件线性按字节切割成块(block),具有offset,id
文件与文件的block大小可以不一样
一个文件除最后一个block,其他block大小一致
block的大小依据硬件的I/O特性调整
block被分散存放在集群的节点中,具有location Block具有副本(replication),没有主从概念,
副本不能出现在同一个节点
副本是满足可靠性和性能的关键
文件上传可以指定block大小和副本数,
上传后只能修改副本数 一次写入多次读取,不支持修改 支持追加数据
角色及是进程
dataNode:
节点集群数量是dataNode数据量,不超过5000台
基于操作系统进程本地磁盘存储block块,以文件的形式存储;
保存bolck校验和数据,保证block的可靠性;
与nameNode保持心跳,汇报block列表状态
nameNode:
只有一个,持久化方案,完全基于内存存储文件的元数据、目录结构、文件block的映射;
需要持久化方案保证数据可靠性;
提供副本放置策略;
客户端: