赞
踩
一、大数据概述
大数据的特征(4V):
1、Volume,数据量大
2、Variety,数据类型多
大数据由结构化和非结构化数据组成:
10%的结构化数据,存储在数据库中;
90%的非结构化数据,与人类信息密切相关。
3、Velocity,处理速度快
4、Value,价值密度低
大数据的关键技术:
1、分布式存储
分布式数据库
分布式文件系统
2、分布式处理
分布式并行处理技术MapReduce
大数据的计算模式:不同的计算模式需要使用不同的产品
1、批处理模式:一堆数据一起做批量处理,不能满足实时性要求。
如MapReduce,Spark(实时性比MapReduce好,可以做迭代计算,MapReduce不能)
2、流计算:针对流数据(日志流、用户点击流)的实时计算,需要实时处理。只能用流计算框架做。
流计算代表产品:S4+Storm+Flume
3、图计算:如社交网络数据,地理信息数据等。MapReduce也能处理,但效率不高。
代表软件:Google Pregel
4、查询分析计算:交互式查询,要求实时性高
代表产品:Google Dremel、Hive、Cassandra、Impala
云计算,通过网络以服务的方式为用户提供非常廉价的IT资源。
两个特征:
1、解决了分布式存储和分布式处理问题
2、虚拟化和多租户
三种云服务:
IaaS:面向网络架构师
PaaS:面向应用开发者
SaaS:面向用户
二、大数据处理架构Hadoop
Hadoop两大核心:
1、分布式文件系统HDFS:解决分布式存储
2、分布式并行框架MapReduce:解决分布式处理
Hadoop 2.0中,
1、HDFS新技术(原来可扩展性不好):NN Federation,多个名称节点,分区管理(不能解决单点失效问题,彼此联盟关系,非备份关系,需要为每个名称节点部署备份节点);HA(高可用性),热备份的NameNode,防止单点失效。
2、MapReduce分出了YARN,负责资源调度管理(MapReduce1.0既是计算框架,也是资源调度管理框架,MapReduce2.0是纯粹的计算框架)。YARN框架可以支持MapReduce、Storm、Spark等。
Hadoop项目结构:
Linux基础知识:
1、Shell:命令解析器,接收用户命令,然后调用相应的应用程序。
2、sudo:Ubuntu中一种权限管理机制,可以授权给一些普通用户去执行需要root权限执行的操作。
3、输入密码:终端不会显示你当前输入的密码。
4、输入法中英文切换:“shift”键
5、复制粘贴快捷键:快捷键需要加上Shift,如Ctrl+Shift+V
三、分布式文件系统HDFS(Hadoop Distributed File System)
主节点(一个):承担数据目录(元数据)服务
从节点(多个):完成数据的存储任务
HDFS实现目标:
1、兼容廉价的硬件设备
2、实现流数据读写
3、支持大数据集
4、支持简单的文件模型
5、强大的跨平台兼容性
HDFS自身的局限性:
1、不适合低延迟数据访问,实时性不高
2、无法高效储存大量小文件
3、不支持多用户写入及任意修改文件
块(HDFS的核心概念):
为了分摊磁盘读写开销,也就是在大量数据间分摊磁盘寻址的开销;
HDFS的一个块要比普通文件系统的块大很多(普通文件系统的块一般几千个字节,而HDFS默认64MB,可设置为128MB)
好处:
1、支持大规模文件存储,将文件切割成块,块可以分布地存储在不同机器上,突破单机存储容量的上限
2、简化系统设计,块的大小是固定的
3、适合数据备份
HDFS两大组件:
1、名称节点(主节点,NameNode):整个HDFS集群的管家,负责元数据的存储,相当于数据目录
元数据包含:文件是什么;文件被分成多少块;每个块和文件是怎么映射的;每个块被存储在哪个服务器上面
包含两个核心数据结构:
(1)FsImage:保存系统文件树
文件的复制等级、修改和访问时间、访问权限、块大小以及组成文件的块
(2)EditLog:记录对数据进行的诸如创建、删除、重命名等操作
运作方式:
第二名称节点:
(1)解决EditLog不断增大的问题
(2)可以当做名称节点的冷备份
2、数据节点(DataNode):存、取实际数据
HDFS命名空间:目录-文件-块
访问HDFS文件系统:/+目录名称,如/usr/shares
HDFS体系结构的局限性:1.0版本
1、命名空间限制:名称节点是保存在内存中的,因此,名称节点能容纳的对象(文件、块)的个数会受到空间大小限制
2、性能的瓶颈:整个分布式文件的吞吐量,受限于单个名称节点的吞吐量
3、隔离问题:由于集群中只有一个名称节点,只有一个命名空间,因此无法对不同应用程序进行隔离
4、集群的可用性:单点故障,一旦这个唯一的名称节点发生故障,会导致整个集群变得不可用。第二名称节点是冷备的。2.0版本设置两个名称节点,并进行分区管理,设置热备(HDFS HA)。
HDFS中数据以块的方式冗余存储,一般冗余因子是3,好处:
1、加快数据传输速度
2、容易检查数据错误
3、保证数据可靠性
Shell命令:
启动hadoop
./bin/hadoop fs:查看fs总共支持哪些命令
./bin/hadoop fs -help put:查看put命令的帮助
./bin/hadoop fs -ls:显示指定文件的详细信息
./bin/hadoop fs -mkdir:创建相关文件夹
./bin/hadoop fs -cat:指定文件内容输出到标准输出
./bin/hadoop fs -cp 本地文件 HDFS:将本地文件上传到HDFS中
浏览器中查看HDFS信息&#
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。