概述
1.什么是hadoop?
Hadoop是一个由Apache基金会所开发的分布式系统基础架构
用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS
HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上
而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序
HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据
Hadoop的框架最核心的设计就是:HDFS和MapReduce
HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算
2.hadoop的优点?
Hadoop是一个能够对大量数据进行分布式处理的软件框架。
Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理。
Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。
Hadoop 还是可伸缩的,能够处理 PB 级数据。
此外,Hadoop 依赖于社区服务,因此它的成本比较低,任何人都可以使用。
Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。
用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。主要有以下几个优点
高可靠性 | Hadoop按位存储和处理数据的能力值得人们信赖 |
---|---|
高扩展性 | Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中 |
高效性 | Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快 |
高容错性 | Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配 |
低成本 | 与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低 |
3.hadoop大数据处理的意义
Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。
Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,
因为类似这样操作的批处理结果可以直接走向存储。
Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,
之后再以单个数据集的形式加载(Reduce)到数据仓库里
4.hadoop生态圈中 各个组件的作用描述
(1)hdfs:就是一个文件系统,可以存储海量的数据。
(2)mapreduce:从海量的数据中,通过一定的算法,计算出有用信息。
(3)hive:就是sql语句解释器,接收用户输入的sql语句,然后将该sql语句翻译成复杂的mapreduce程序,并发布到mr集群中进行运算,也是计算出有用的信息。
(4)hbase:mysql是基于linux/window的文件系统的数据库,而hbase就是基于hdfs文件系统的数据库。
(5)flume:就是一个水泵,将水从一个源水坑,抽到到另一个目的水坑中。当然flume抽的是 “数据”。将数据从一个文件中抽取到另一个文件中。
(6)sqoop:将hdfs文件系统的文件,导出到linux文件系统的文件中。就像“豌豆荚”应用程序,实现 android系统与window系统之间文件的导入导出。
(7)ooize/azkaban:一个完整的业务(work)是由多个任务(task)相互配合完成的。该组件就是负责协调各个task的执行顺序。
重点组件
HDFS:分布式文件系统
MAPREDUCE:分布式运算程序开发框架
HIVE:基于大数据技术(文件系统+运算框架)的SQL数据仓库工具
HBASE:基于HADOOP的分布式海量数据库
ZOOKEEPER:分布式协调服务基础组件
Mahout:基于mapreduce/spark/flink等分布式运算框架的机器学习算法库
Oozie:工作流调度框架
Sqoop:数据导入导出工具
Flume:日志数据采集框架
最后
以上就是精明大地为你收集整理的企业实战——Hadoop大数据平台基础知识的全部内容,希望文章能够帮你解决企业实战——Hadoop大数据平台基础知识所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复