海量数据存储:
HDFS、Hive(本质存储数据还是hdfs)、HBASE、ES
海量数据分析:
MapReduce、Spark、SQL
最原始的Hadoop框架
数据存储:HDFS(Hadoop Distributed File System)
数据分析:MapReduce
Hadoop的起源
Google的三篇论文(推荐看这篇博客 https://blog.csdn.net/wyz0516071128/article/details/80629055)
虽然Google没有公布这三个产品的源码,但是他发布了这三个产品的详细设计论文,奠定了风靡全球的大数据算法的基础!
Google FS HDFS
MapReduce MapReduce
BigTable HBase
将任务分解然后在多台处理能力较弱的计算节点中同时处理,然后将结果合并从而完成大数据处理。
google:android,搜索,大数据框架,人工智能框架,pagerank
Hadoop介绍
大数据绝大多数框架,都属于Apache顶级项目
hadoop官网:
分布式
相对于【集中式】
需要多台机器,进行协助完成。
元数据:记录数据的数据
架构:
主节点Master 老大,管理者
管理:
从节点Slave 从属,奴隶,被管理者,干活
Hadoop也是分布式架构
HDFS:
主节点:NameNode,决定着数据存储到那个DataNode上
从节点:DataNode,存储数据
MapReduce:分而治之思想,将海量的数据划分为多个部分,每部分数据进行单独的处理,最后将所有结果进行合并
map task:单独处理每一部分的数据、
reduce task:合并map task的输出
YARN:分布式集群资源管理框架,管理者集群的资源(Memory,cpu core)合理调度分配给各个程序(MapReduce)使用主节点:resourceManager掌管集群中的资源,从节点:nodeManager管理每台集群资源
总结:Hadoop的安装部署,都属于java进程,就是启动了JVM进程,运行服务。
HDFS:存储数据,提供分析的数据 NameNode/DataNode
YARN:提供程序运行的资源:ResourceManager/NodeManager