前雅虎CTO:Hadoop扩展过程中的7个危险信号

ZDNet至顶网软件频道消息:本文作者Raymie Stata是Hadoop即服务公司Altiscale的创始人兼CEO,也是雅虎前任CTO,协助雅虎完成开源策略,并参与Apache Hadoop项目的发起。Hadoop的扩展和运维是非常复杂的过程,在其具体的实施过程中隐藏着潜在的危机,Raymie根据经验罗列了7项危机信号和相应的解决方案,帮助使用者提前避免灾难的发生。

以下为译文: 

Hadoop扩展是一个非常复杂的过程,这里罗列了7种常见问题和解决方案。

所有Hadoop实施都存在着潜在的危机,包括一些非常棘手的Hadoop运行问题。这类问题出现在投入生产环境前会导致Hadoop被弃用,但是如果发生在投入生产环境后,则意味着一场“成功的灾难”(其实更有可能是一场纯粹的灾难)。

Hadoop的扩展和实施是非常复杂的。但是如果你能确切的认识到问题根源所在,还是可以避免“灾难”的发生,以下是根据经验总结出的一些危机信号。

危机信号1:无法投入生产环境

从概念验证到生产环境使用是大数据工作流程的重要一步。Hadoop扩展工作充满了挑战,较大的工作量往往不能被及时完成,测试环境不能完全覆盖真实运行环境,例如数据测试中常见的一种问题是:概念验证经常使用不切实际的小型或单一的数据集。

在投入生产环境之前,需要进行规模及压力测试,通过这类测试的应用程序具备可扩展性及容错能力,也可协助开发自身容量规划模型。

危机信号2:开始延期

第一个应用程序投入生产环境标志着你能够轻松实现SLA,但随着Hadoop集群数量增加,其运行时间变得不可预知,首次延期问题很容易被忽略,而随着时间的推移,这种情况变得越来越糟,最终导致危机出现。

千万不要等到危机爆发后再采取行动。在容量遭到挑战之前,可适当的扩展容量或优化程序。调整预期容量模型,尤其注意要在最糟糕的性能环境下进行容量检测,使其具备更加贴近现实的性能。

危机信号3:开始告诉客户不可能保存所有数据

危机爆发的另一征兆是减少数据保留需求。起初你希望为每年的数据分析保留13个月的数据,但由于空间限制,你开始缩减保留数据的时间,这在某种程度上等价于丢失了Hadoop大数据分析能力的优势。

缩减数据保留时间并不能解决问题,要避免这种问题必须要及早行动,重新审视容量模型,寻找预测失败原因,然后调整模型以便更好的追踪问题根源所在。

危机信号4:数据科学家们失去地位

过度使用Hadoop集群会扼杀创新,会导致数据科学家没有足够的资源去运行大型作业,没有足够的空间为科学家们存储大量运算结果。

容量规划经常容易被忽视,数据科学家的作用也经常被忽视。被忽视加上生产环境负载规划不足,意味着数据科学家经常被边缘化。请确定你的需求里包括对数据科学家的需求,并能在容量问题出现早期发挥作用。

危机信号5:数据科学家通过Stack Overflow解决问题

在Hadoop实施初期,运维团队和数据科学家协同工作。随着Hadoop实施的成功,运维团队的维护压力随之增加,科学家们必须自己解决Hadoop的问题,通常会通过Stock Overflow寻找处理方法。

随着Hadoop扩展及关键任务的增加,维护的工作量开始增加,如果想要保证数据专家们集中在数据研究上,则需要重新调整运维团队的大小。

危机信号6:服务器温度升高

分配服务器电力供应时,我们常常假设它们不会满负荷运行,但是大型的Hadoop作业很可能让服务器满载数个小时,严重威胁到你的电网(冷却方面也有类似的问题)。所以请确保你的Hadoop集群可长时间在全功率环境下运行。

危机信号7:开支失控

在基于IaaS部署的Hadoop环境中,排名第一的“成功灾难”是开支失控。你会突然发现账单费用是上个月的三倍,严重超出预算。

容量规划是基于IaaS的Hadoop实施中相当重要的一步,不仅仅是为了管理容量也为了管理成本。但好的容量规划只是一个开始,如果你想要扩展基于Iaas的Hadoop实施,最好要像Netflix那样大力投资系统来追踪并优化成本。

平缓Hadoop扩展

Hadoop计划通常低估了保持Hadoop集群稳定运行所需的工作量,这种误判是可以理解的。传统企业应用程序的初始优化实施成本比后续的维护与支持高出许多个数量级,人们通常误认为Hadoop遵循同样的模式,实际上Hadoop的维护非常困难,需要大量的运维工作。

优质的容量规划是必不可少的;拥有良好容量模型的同时,还需要及时的更新以避免其偏离实际应用场景;不要让创新成为后期问题,给予数据科学家足够的支持;扩容不是解决问题的唯一办法,管理使用情况也同样重要;让用户(及业务所有者)做足够的作业优化,一点点的优化都可以降低现有成本。

原文发布时间为:2014年09月05日

本文来自合作伙伴至顶网,了解相关信息可以关注至顶网。

时间: 2024-09-14 09:44:33

前雅虎CTO:Hadoop扩展过程中的7个危险信号的相关文章

Hadoop扩展过程中的7个危险信号

本文作者Raymie Stata是Hadoop即服务公司Altiscale的创始人兼CEO,也是雅虎前任CTO,协助雅虎完成开源策略,并参与Apache Hadoop项目的发起.Hadoop的扩展和运维是非常复杂的过程,在其具体的实施过程中隐藏着潜在的危机,Raymie根据经验罗列了7项危机信号和相应的解决方案,帮助使用者提前避免灾难的发生. 以下为译文: Hadoop扩展是一个非常复杂的过程,这里罗列了7种常见问题和解决方案. 所有Hadoop实施都存在着潜在的危机,包括一些非常棘手的Hado

大家在做Hadoop优化过程中数据都是哪里获取的

问题描述 大家通过什么方式进行数据的仿真,大家所需的大数据都是哪里获取的,比如并行实现了某项算法或者优化了副本的数量,大家的实验数据来源都是在哪里找到的.还有在实验条件有限的环境下可以租用免费的服务器进行试验吗,自己配置的完全分布式环境太小了. 解决方案 解决方案二:读研时没搞这方面,数据来源不清楚,但是机器实验室还是有几个的,实验室没机器就没辙了~~~

dedecms建站过程中常见却不知道怎么解决的问题

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 dedecms建站过程中常见却不知道怎么解决的问题 虽然现在已经是凌晨1点多了,可阿光还坐在电脑前写"dedecms建站过程中的常见却不知道怎么解决的问题"这篇文章旨在记录最近的工作收获,至少可以说现在用dede建设企业网站已经没有什么大碍了,但在这一路走来的过程中也遇到了不少麻烦和问题,都是通过自己不断的尝试和总结才得以

Hadoop-2.8.0集群搭建、hadoop源码编译和安装、host配置、ssh免密登录、hadoop配置文件中的参数配置参数总结、hadoop集群测试,安装过程中的常见错误

25.集群搭建 25.1 HADOOP集群搭建 25.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有NameNode / DataNode YARN集群: 负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager 25.1.2服务器准备 本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本: ü Vmware 11.

【白鳝的创业故事】创业过程中的机会与选择

今天早上起得有点晚,刚到公司楼下,就接到了王总的电话,让我准备一下,马上去趟北京.我说那我马上回家拿两件衣服.王总说不用了,我们去北京参加一个商务会晤,如果顺利的话,我们可以坐晚班飞机回来.我刚刚走进办公室,王总就拎着包走了进来说:"老白,准备好了吗?我们马上出发".就这样,我懵懵懂懂的跟着王总开始了这个改变我一生的旅程. 我们乘坐10点40分的航班飞往北京,下午2点的时候,我和王总就赶到了新世纪酒店.在飞机上,我大概了解了此行的目的,这次到北京是和Pansky的彭先生谈换股并购的事情

【HEVC学习与研究】38、HEVC编码过程中的块分割结构

[本文主要分为前后两部分,前半部分基本是Vivienne Sze.Madhukar BudagaviGary和J. Sullivan所编著的<High Efficiency Video Coding (HEVC) --Algorithms and Architectures>的第三章前半部分的笔记,后半部分是在HM-10.0中对Intra预测时块分割相应的代码研究.] 0.摘要 在基于块结构的混合编码框架中,每一帧图像被分割成多个像素结构的像素块(block),而一帧图像中多个像素块聚合成为一

ZooKeeper原理及其在Hadoop和HBase中的应用

ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现.分布式应用程序可以基于ZooKeeper实现诸如数据发布/订阅.负载均衡.命名服务.分布式协调/通知.集群管理.Master选举.分布式锁和分布式队列等功能. 简介 ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现.分布式应用程序可以基于ZooKeeper实现诸如数据发布/订阅.负载均衡.命名服务.分布式协调/通知.集群管理.Master选举.分布式锁

敏捷过程中如何保证代码质量

本文目录:一.为什么要做代码质量分析二.常见的代码质量分析工具三.DevOps平台中的代码质量分析四.DevOps平台中如何为代码质量提供保障 一.为什么要做代码质量分析 本文讲的是敏捷过程中如何保证代码质量,在软件开发过程中,当一个功能开发完成后,如何去保证代码是可用的.没问题的?一般情况下,基本都会有单元测试.每日构建.功能测试等环节来保证.但是,保证代码可用就够了吗?显然不是. 一个软件项目开发完一个版本会有下一个版本,会有新的需求,原来的功能也可能会变更.你写的代码可能会被别人使用,你也

搭建hadoop集群中遇到的各种问题,整理如下:

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;     和同伴一起搭建hadoop集群中遇到的各种问题,整理如下: 前言 在寒假前的一段时间,开始调研Hadoop2.2.0搭建过程,当时苦于没有机器,只是在3台笔记本上,简单跑通一些数据.一转眼一两个月过去了,有些东 西对已经忘了.现在实验室申请下来了,分了10台机器(4G+500G),这足够我们玩的了.开始搭建Hadoop2.2.0分布式集群,也趁着这个机会 把