
Apache Hadoop是存储和处理大数据的开源软件框架 Hadoop项目
Hadoop能够在上千台机器组成的集群上运行大规模集群的可靠性,不能仅仅靠硬件来保证,因为节点的失败、网络的失败等状况不可避免,为了能够在大规模集群上顺利运行,Hadoop的所有模块,其设计原则基于这样的基本假设,即**硬件的失败在所难免,每个节点都没有那么可靠,可能发生节点失败状况,软件框架应该能够自动检测和处理这些失败情况。 Hadoop通过软件,在大规模集群上提供高度的可用性(High Availability)
Hive是Hadoop平台上的数据仓库,用于对数据进行离线分析。它提供了一种类 似于SQL的查询语言HQL (Hive Query Language)。Hive将SQL转化为 MapReduce作业(Job)在Hadoop上执行。
HBase是Google Big Table在Hadoop平台上的开源实现。它是一个针对结构化数 据处理的、面向列分组(Column Family)的、可伸缩的、高度可靠的、高性能的分 布式数据库。一般用于数据服务(Data Serving)应用场合。
Pig实现了数据查询脚本语言Pig Latin。用Pig Latin脚本语言编写的应用程序,翻 译为MapReduce作业,在Hadoop上运行
Flume是一个可扩展的、高度可靠的、高可用的分布式海量日志收集系统,一般 用于把众多服务器上的大量日志,聚合到某一个数据中心。Flume提供对日志数 据进行简单处理的能力,比如过滤、格式转换等。同时,Flume可以将日志写往 各种目标(本地文件、分布式文件系统)。
Mahout是Hadoop平台上的机器学习软件包,它的主要目标是实现高度可扩展的 机器学习算法,以便帮助开发人员利用大数据进行机器学习模型训练。Mahout现 在已经包含聚类、分类、推荐引擎(协同过滤)、频繁集挖掘等经典数据挖掘和机 器学习算法。
Oozie是一个工作流调度器(Scheduler)。Oozie协调运行的作业,属于一次性非 循环的作业,比如MapReduce作业、Pig脚本、Hive查询、Sqoop数据导入/导出 作业等。Oozie基于时间、和数据可用性进行作业调度,根据作业间的依赖关 系,协调作业的运行
Zookeeper是模仿Google公司的Chubby系统的开源实现,Chubby是一个分布式 的锁(Lock)服务
原理:
读文件
在大数据处理的领域中,Hadoop 可谓是一位 “重量级选手”。然而,就像任何技术一样,Hadoop 1.0 也有它的不足之处。
Hadoop 1.0 存在着明显的单点故障问题。这就好比一个团队中,如果关键人物出了问题,整个团队的运作可能就会陷入混乱。在 Hadoop 1.0 中,一旦 NameNode 这个关键节点出现故障,整个系统就可能面临崩溃的风险。
而且,它的资源管理方式也不够灵活。就好像分配房间,如果只有一种固定的分配方式,很难满足各种不同的需求。
不过,技术总是在不断进步的。Hadoop 2.0(YARN)的出现,给我们带来了新的希望。
YARN 的原理就像是一个更聪明的 “管家”。它把资源管理和任务调度分开了。ResourceManager 就像是大管家,负责整体资源的分配和监控。而 ApplicationMaster 则像是每个任务的小管家,专门负责自己任务的资源申请和调度。
这种分离的方式,让系统的扩展性大大增强。就好比原来的房子不够住了,现在可以很方便地加盖新的房间,而不会影响原来的居住者。
同时,容错性也得到了提高。即使某个 “小管家” 出了问题,也不会让整个 “家” 乱了套。
资源利用率也因为这种更精细的管理而得到了提升,不再有资源浪费或者分配不均的情况。
YARN(Yet Another Resource Negotiator)
总的来说,Hadoop 2.0(YARN)的出现,解决了 Hadoop 1.0 的很多痛点,让大数据处理变得更加高效、可靠和灵活。相信在未来,它还会不断进化,为我们处理大数据带来更多的便利和惊喜!
ResourceManager的主要功能,是资源的调度工作。所以它能够轻松地 管理更大规模的集群系统,适应了数据量增长对数据中心的扩展性提出的挑战。
ResourceManager是一个单纯的资源管理器,它根据资源 预留要求、公平性、服务水平协议(Service Level Agreement, SLA)等标准,优化 整个集群的资源,使之得到很好的利用。
在Hadoop1.0平台上开发的 MapReduce应用程序,无需修 改,直接在YARN上运行。
当数据存储到HDFS以后,用户希望能够对数据以不同的 方式进行处理。除了MapReduce应用程序(主要对数据进行批处理),YARN支持 更多的编程模型,包括图数据的处理、迭代式计算模型、实时流数据处理、交互 式查询等。一般来讲,机器学习算法需要在数据集上,经过多次迭代,才能获得 最终的计算结果。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
2025被称为“AI元年”,而AI,与数据密不可分。网易公司创始人丁磊在《AI思维:从数据中创造价值的炼金术》一书中指出:AI思维, ...
2025-07-17数据分析师的技能图谱:从数据到价值的桥梁 在数据驱动决策的时代,数据分析师如同 “数据翻译官”,将冰冷的数字转化为清晰的 ...
2025-07-17Pandas 写入指定行数据:数据精细化管理的核心技能 在数据处理的日常工作中,我们常常需要面对这样的场景:在庞大的数据集里精 ...
2025-07-17解码 CDA:数据时代的通行证 在数字化浪潮席卷全球的今天,当企业决策者盯着屏幕上跳动的数据曲线寻找增长密码,当科研人员在 ...
2025-07-17CDA 精益业务数据分析:数据驱动业务增长的实战方法论 在企业数字化转型的浪潮中,“数据分析” 已从 “加分项” 成为 “必修课 ...
2025-07-16MySQL 中 ADD KEY 与 ADD INDEX 详解:用法、差异与优化实践 在 MySQL 数据库表结构设计中,索引是提升查询性能的核心手段。无论 ...
2025-07-16解析 MySQL Update 语句中 “query end” 状态:含义、成因与优化指南 在 MySQL 数据库的日常运维与开发中,开发者和 DBA 常会 ...
2025-07-16如何考取数据分析师证书:以 CDA 为例 在数字化浪潮席卷各行各业的当下,数据分析师已然成为企业挖掘数据价值、驱动决策的 ...
2025-07-15CDA 精益业务数据分析:驱动企业高效决策的核心引擎 在数字经济时代,企业面临着前所未有的数据洪流,如何从海量数据中提取有 ...
2025-07-15MySQL 无外键关联表的 JOIN 实战:数据整合的灵活之道 在 MySQL 数据库的日常操作中,我们经常会遇到需要整合多张表数据的场景 ...
2025-07-15Python Pandas:数据科学的瑞士军刀 在数据驱动的时代,面对海量、复杂的数据,如何高效地进行处理、分析和挖掘成为关键。 ...
2025-07-15用 SQL 生成逆向回滚 SQL:数据操作的 “后悔药” 指南 在数据库操作中,误删数据、错改字段或误执行批量更新等问题时有发生。 ...
2025-07-14t检验与Wilcoxon检验的选择:何时用t.test,何时用wilcox.test? t 检验与 Wilcoxon 检验的选择:何时用 t.test,何时用 wilcox. ...
2025-07-14AI 浪潮下的生存与进阶: CDA数据分析师—开启新时代职业生涯的钥匙(深度研究报告、发展指导白皮书) 发布机构:CDA数据科 ...
2025-07-13LSTM 模型输入长度选择技巧:提升序列建模效能的关键 在循环神经网络(RNN)家族中,长短期记忆网络(LSTM)凭借其解决长序列 ...
2025-07-11CDA 数据分析师报考条件详解与准备指南 在数据驱动决策的时代浪潮下,CDA 数据分析师认证愈发受到瞩目,成为众多有志投身数 ...
2025-07-11数据透视表中两列相乘合计的实用指南 在数据分析的日常工作中,数据透视表凭借其强大的数据汇总和分析功能,成为了 Excel 用户 ...
2025-07-11尊敬的考生: 您好! 我们诚挚通知您,CDA Level I和 Level II考试大纲将于 2025年7月25日 实施重大更新。 此次更新旨在确保认 ...
2025-07-10BI 大数据分析师:连接数据与业务的价值转化者 在大数据与商业智能(Business Intelligence,简称 BI)深度融合的时代,BI ...
2025-07-10SQL 在预测分析中的应用:从数据查询到趋势预判 在数据驱动决策的时代,预测分析作为挖掘数据潜在价值的核心手段,正被广泛 ...
2025-07-10