大多数企业大数据应用案例尚处于实验和试点阶段,对于少数***在生产环境部署Hadoop系统的用户来说,最常遇到的就是扩展问题,此类问题往往导致企业因噎废食,终止大数据应用项目。
部署和扩展Hadoop系统是一件高度复杂的事情,如果用户能提前对Hadoop扩展可能会遇到的各种问题和危险信号有所了解,就能避免很多“救火”场面。
以下是Hadoop大数据系统出现扩展问题的七大危险信号:
危险信号一: 永远进入不了生产阶段
大数据应用从概念验证到生产环境是一个巨大的飞跃,Hadoop系统的可扩展性将面临巨大的挑战。生产环境的数据规模产生的一些问题实验环境很难碰到。另外数据本身也存在差异,概念验证阶段使用的测试数据集往往是不真实的,或者类型单一。
在进入生产环境前,大数据团队需要对Hadoop系统进行模拟真实数据规模的压力测试,此类测试能够检验大数据应用的可扩展性和容错性能,还能帮你做出更加准确的性能(资源需求)规划模型。
危险信号二: 分析计算任务不断超时
当Hadoop集群中运行的大数据应用很少或者只有一个时,一切都行云流水,按部就班,但是随着Hadoop集群的增长,数据分析任务的运行时间变得难以预测起来。一开始,只是有零星的超时现象,问题容易被忽视,但随着时间增长,超时问题会越来越严重,***导致危机。
在危机爆发前,你必须提前采取行动,根据任务峰值调整计算性能规划模型。
危险信号三: 你开始告诉人们不要保留所有数据
危机出现的另一个征兆是数据保留时间窗口不断缩水。一开始你想保留13个月的数据进行年度分析。但是由于空间限制,你开始减少保留数据的月份数。到***,你的Hadoop系统因为没有足够多的数据而不再是“大数据”系统。
数据保留窗口的缩水是因为存储的扩展性遇到问题,这与前面的计算性能问题类似。当你的容量预测模型出现问题时,需要尽快调整。
危险信号四: 数据科学家被“饿死”
任务负荷过重的Hadoop集群会扼杀创新,因为数据科学家们将没有足够的计算资源来开展大型任务,也没有足够的空间来存储中间结果。
性能和容量规划通常会忽略或者低估数据科学家的需求,在加之前面提到的对生产环境任务的估计不足,会严重限制数据科学家的开拓性和创新性工作。
危险信号五:数据科学家们开始查看Stack Overflow
在Hadoop系统部署的早期,你的运营团队与科学家紧密协作。运营团队随时为数据科学家提供支持。(编者按:类似串联的协作模式)但是当 Hadoop 系统成功上线后,系统的运维和扩展任务就会让运营团队疲于奔命,这时候数据科学家遇到Hadoop问题就只好自己解决,例如经常去技术问答网站Stack Overflow查看问题帖子。
危险信号六:数据中心越来越热
数据中心服务器的电力都不是按服务器的功率峰值配置的,但是一个Hadoop集群运行任务的时候经常会连续“拷机”数小时,会烧坏功率不匹配的供电线路,同样的问题也存在于制冷系统中。部署Hadoop系统时请确保数据中心支持其长时间全速运行。
危险信号七:费用超支
基于IaaS的Hadoop部署,例如AWS,在支出上是失控的。一个月的费用很有可能是上个月的三倍,远远超出你的预算。
性能规划对于基于IaaS的Hadoop部署来说也是非常重要的,但是好的性能规划只是开始,如果你需要扩展IaaS上的Hadoop系统,那么你需要学习Netflix在成本监控和优化系统上投入大量资金。