Hadoop概念理解
大数据:数据从GB (2的30次方byte) 急速增长到ZB (2的70次方byte),需要通过分部署存储和分布式计算解决数据处理问题。
理解Hadoop概念
hadoop是基于分布式处理的框架,可以不关心底层物理硬件的性能,管理大量的集群节点(几千个)。
hadoop的核心技术是hdfs和mapreduce。
hdfs是分布式文件系统,真正的解决大量分布式集群节点的文件存储问题(可靠性、高并发、高效访问、HA等)。
mapreduce是分布式计算模型,将大量的计算分解成许多并行的函数计算分布到各节点去处理,快速得到结果。main、map和reduce函数,map分解,reduce归纳。
通过分布式存储和分布式计算可以完成海量数据的分析,这就是大数据分析,如10亿人每天吃早餐的数据中统计排名前10的早餐种类,人员年龄结构等。普通计算几乎无法执行,大数据分析可以得到结果。
理解其它工具概念
hive是hadoop的数据仓库工具,通过hive可以不用写mapreduce函数去进行分布式计算操作,hive提供一种HQL的类SQL语句(内部封装了mapreduce)操作非结构化数据。所以hive是基于mapreduce的。
hbase是基于谷歌的bigtable的一种分布式数据库,是nosql数据库,基于hdfs存储,基于列访问(传统数据库基于行访问),支持随机访问,快速查询。可以用mapreduce操作hbase。
由于hdfs更好的是顺序访问速度,并不支持随机访问,所以hive和mapreduce更适用的场景是海量数据(广义的数据)全(顺序)遍历统计–大数据分析。
而hbase适用于非结构化数据的快速随机访问(查询),相对于mapreduce,hbase支持的数据量级要小。mapreduce和hbase分别解决大数据的两个方面问题,一个解决海量数据顺序遍历(通过分布式计算),一个大量数据的快速定位和更新。两者都基于hdfs的分布式存储。
zookeeper是一个分布式应用程序协调服务。说白了就是进行应用分布式部署时的管理,或者说应用的节点(集群)同步管理。包括配置管理、集群管理、同步管理等。
ambari是是一种基于Web的工具,支持Apache Hadoop集群的供应、管理和监控。
Hcatlog是数据表和存储管理服务,或者说是统一元数据管理工具,即实现非结构化数据和元数据之间的转换,实现关系型数据和hdfs之间的关联,并提供类似关系型数据库的操作工具。
v 分布式存储—HDFS
v 分布式并行计算—MapReduce
v 基于Hadoop的数据仓库—Hive
v 统一元数据管理—Hcatlog
v 集群管理工具—ambari
v 工作流工具—Oozie
v 数据的并行采集—Flume
v MapReduce脚本工具—Pig
v 与关系型数据库之间的数据迁移—Sqoop
v 资源管理平台—Yarn
v 数据生命周期管理—Falcon
v 数据挖掘算法—Mahout
v 分布式统一服务—Zookeeper
v Hadoop安全工具—Knox
v 流式计算框架—Storm
v 内存计算框架—Spark
v 数据挖掘框架—Mahout、Mllib和Graphx
- 点赞
- 收藏
- 关注作者
评论(0)