网站开发课程设计说明书,营销型网站知识,专题学习网站开发流程,陕西建设监理协会网站大数据
1. 学习hadoop之前#xff0c;我们先了解一下什么是大数据#xff1f; 大数据通常指的是数据集规模非常庞大且难以在常规数据库和数据处理工具中有效处理的数据。 大数据的特点#xff1a;
容量#xff1a;大数据具有庞大的规模#xff0c;远远超出了传统数据库和…大数据
1. 学习hadoop之前我们先了解一下什么是大数据 大数据通常指的是数据集规模非常庞大且难以在常规数据库和数据处理工具中有效处理的数据。 大数据的特点
容量大数据具有庞大的规模远远超出了传统数据库和数据处理工具处理的能力。这可能涉及到以亿计或更多行的数据种类数据类型的多样性大数据可以包括来自不同来源、以不同格式存在的各种数据类型如结构化数据表格形式的数据如数据库中的数据、半结构化数据XML、JSON等和非结构化数据文本、图像、音频等速度大数据通常以极快的速度生成、传输和累积。实时或近实时的数据流是大数据环境下的一种常见情况真实性即数据的质量。数据的真实性低。价值价值密度低需要我们合理应用大数据以低成本创造高价值
2. 大数据的应用场景
数据处理的最典型应用公司的产品运营情况分析电商推荐系统基于海量的浏览行为购物行为数据进行大量的算法模型的运算得出各类推荐结论以供电商网站页面来为用户进行商品推荐精准广告推送系统基于海量的互联网用户的各类数据统计分析进行用户画像得到用户的各种属性标签然后科研为广告主进行有针对性的精准的广告投放
大数据技术点
存储框架
HDFS——分布式文件存储系统hadoop中的存储框架HBase——分布式数据库系统Kafka——分布式消息缓存系统实时流式数据处理场景中应用广泛Elasticsearch——分布式的搜索引擎 计算框架 要解决的核心问题就是帮用户将处理逻辑在很多机器上并行MapReduce——离线批处理/hadoop中的运算框架spark——离线处理/微批处理storm——实时流式计算flink——离线处理/微批处理/实时流处理blink——与flink类似国产 辅助类的工具hive——数据仓库工具可以接收SQL翻译成MapReduce或者spark程序运行flume——用于数据采集sqoop——数据迁移etl工具kibana——数据分析和可视化logstach——数据收集工具 等等
hadoop框架
1. hadoop是什么
Hadoop是一个有Apache基金会所开发的分布式系统基础框架主要解决海量数据的存储问题和海量数据的分析计算问题广义上来说hadoop通常是指一个更广泛的概念——Hadoop生态圈
2. Hadoop的优势
1高可靠性 因为Hadoop假设计算元素和存储会出现故障所以它会维护多个工作数据副本在出现故障时可以对失败的节点重新分布处理 2高扩展性 在集群间分配任务数据可方便的扩展数以千计的节点 3高效性 在MapReduce的思想下Hadoop是并行工作的以加快任务处理速度 4高容错性 自动保存多分副本数据并且能够自动将失败的任务重新分配
3. Hadoop的组成
Hadoop HDFS 一个高可靠、高吞吐量的分布式文件系统Hadoop MapReduce 一个分布式的离线并行计算框架Hadoop YARN 作业调度与集群资源管理的框架Hadoop Commen 支持其他模块的工具模块configuration、RPC、序列化机制日志操作
4. Hadoop发行版
Apache版本最原始最基础的版本对于入门学习最好cloudera在大型互联网企业中用的最多hortonworks文档最好
Hadoop环境搭建
这里不再过多赘述具体操作请查看https://blog.csdn.net/David_house/article/details/108627515
Hadoop运行环境
Hadoop运行环境有三种模式本地模式伪分布模式完全分布模式 本地模式standard mode 默认情况下Hadoop即处于该模式用于开发和调试 ①不对配置文件进行修改 ②使用本地文件系统而不是分布式文件系统 ③不会启动任何Hadoop守护进程map任务和reduce任务作为同一个进程的不同部分来执行 ④用于对MapReduce应用程序的开发或调试确保程序正确 ⑤当首次解压hadoop的源码包时默认选择了最低的配置。这时三个xml文件均为空当配置文件为空时hadoop会完全运行在本地 伪分布模式pseudo-distribution mode Hadoop的守护进程运行在本机机器模拟一个小规模的集群 ①在一台主机上模拟一个小规模集群使用分布式文件系统一般用于程序调试与测试可以说伪分布是完全分布的一个特例 ②所有的守护进行运行在一台机器上每个hadoop守护进程都是一个独立的java进程 ③该模式在本地模式的基础上添加了代码的调试功能允许你检查内存的使用情况、HDFS输入输出、其它的守护进程的交互 ④需要修改配置文件以及格式化文件系统 ⑤伪分布式模式也需要配置SSH无密码本机连接本机 注 从分布式存储的角度来说集群中的结点由一个NameNode和若干个DataNode组成,另有一个SecondaryNameNode作为NameNode的备份。从分布式应用的角度来说集群中的结点由一个JobTracker和若干个TaskTracker组成JobTracker负责任务的调度TaskTracker负责并行执行任务。TaskTracker必须运行在DataNode上这样便于数据的本地计算。JobTracker和NameNode则无须在同一台机器上。一个机器上既当namenode又当datanode,或者说既是jobtracker,又是tasktracker。没有所谓的在多台机器上进行真正的分布式计算故称为伪分布式。 完全分布模式cluster mode
Hadoop运行在由多台主机搭建的集群上是真正的生产环境
多个节点组成的hadoop集群NameNode和DataNode节点分开
xml文件属性名称本地模式伪分布模式完全分布模式core-site.xmlfs.defaultFs(fs.default.name)file:///(默认)hdfs://localhosthdfs://node1hdfs.site.xmldfs.replicationN/A13默认mapres-site.xmlmapreduce.framework.namelocal(默认)yarnyarnyarn-site.xmlyarn.resourcemanager.hostnameN/Alocalhostresourcemanageryarn-site.xmlyarn.nodemanager.auxserviceN/Amapreduce_shufflemaprecude_shuffle
Hadoop进程
Hadoop集群一般有两种节点主节点master和从节点slave 这些节点上一般有如下进程 1NameNodehdfs服务Master它是一个主管、管理者
管理HDFS的名称空间管理数据块Block映射信息配置副本策略处理客户端读写请求。
2DataNodehdfs服务SlaveNameNode下达命令DataNode执行实际的操作
存储实际的数据块执行数据块的读/写操作。
3Secondary NameNodenamenode的冷备并非NameNode的热备。当NameNode挂掉的时候它并不能马上替换NameNode并提供服务
辅助NameNode分担其工作量定期合并Fsimage文件系统镜像和Edits log编辑日志并推送给NameNode在紧急情况下可辅助恢复NameNode。
4ResourceManagerJobTrackeryarn服务
处理客户端请求监控NodeManager启动或监控ApplicationMaster资源的分配与调度
5NodeManagerTaskTrackeryarn服务
管理单个节点上的资源处理来自ResourceManager的命令处理来自ApplicationMaster的命令
6JobHistoryServer
负责管理MapReduce作业的历史记录和统计信息
7HttpServer
Hadoop的Web服务器用于显示各种监控和管理信息
8DFSZKFailoverController 高可用时它负责监控NN的状态并及时的把状态信息写入ZK。它通过一个独立线程周期性的调用NN上的一个特定接口来获取NN的健康状态。FC也有选择谁作为Active NN的权利因为最多只有两个节点目前选择策略还比较简单先到先得轮换。 9JournalNode 高可用情况下存放namenode的editlog文件。