Hadoop是个庞大的重型解决方案,它的设计目标本来就是大规模甚至超大规模的集群,面对的是上百甚至上千个节点,这样就会带来两个问题:

自动化管理管任务分配机制:这样规模的集群,显然不大可能针对每个节点提供个性化的管理控制,否则工作量会大到累死人,必须采用自动化的管理和任务分配手段,而这并不是件简单的事情。

强容错能力:大规模集群在某个任务执行周期内,也就是几小时之内,都有可能发生设备故障。如果没有强容错能力可能任何任务都无法执行出来。而容错同样并不容易实现,同样非常消耗计算和存储资源。

而且,Hadoop的产品线丰富,这本来是好事情,但要把这些模块都放在一个平台上运行,还要梳理好各个模块之间的相互依赖性,就需要一个包罗万象的复杂框架,这也使得Hadoop体系显得很沉重。

但是,很多情况下,用户的数据并不总会有那么多。除了一些互联网巨头企业和国家级通信运营商及银行外,大多数用户的数据量并没有大到需要几百上千个节点才能处理的地步。而且,很多用户也只是为了常规的结构化数据运算(主要也就是SQL),用不着那么完整的产品线。

结果,我们经常看到的现象是:用户上了Hadoop,只有四个或八个节点,多的也就十来个,而且也只是安装个Hive(或别的类似解决方案)来跑跑SQL。

这就是“杀鸡用牛刀了”!

为什么会这样?

分享之前我还是要推荐下我自己创建的大数据学习交流Qun531629188
无论是大牛还是想转行想学习的大学生
小编我都挺欢迎,今天的已经资讯上传到群文件,不定期分享干货,包括我自己整理的一份最新的适合2018年学习的大数据教程,欢迎初学和进阶中的小伙伴。

道理很简单。现在大数据平台是个业界趋势,而经过几年的宣传,用户都觉得传统关系数据库不再是未来的方向,即使现在还能用,但总觉得继续投资在关系数据库上就有被时代甩下的风险,于是都想去尝试新技术。但找来找去,也只有Hadoop勉强可用了,选择Hadoop变成一个政治正确的事情了。

那么,选用Hadoop有什么不好呢?牛刀就牛刀,牛刀也可以用来杀鸡,反正它开源不要钱,

不是这样的。虽然Hadoop软件本身是开源免费的(其实很多用户上的是商业公司的产品,本来也并不便宜),但因为它的复杂性,想配置用好它并不容易,维护支持的成本一点也不低。Hadoop事实上是个高端产品,并不很适合数据量规模没有大到需要上百节点的中小用户。

大集群和小集群的实现技术是完全不一样的,Hadoop为了解决大集群问题而付出的努力并不是没有成本的。

统一的自动化管理机制固然让管理工作变简单了,但也限制了程序员的灵活性。开发人员只能去适应,难以写出适合业务和数据特征的代码,这样无法发挥机器的最大效能。比如想控制HDFS的文件冗余方案,让不同文件的冗余数不同,而特定的冗余方案能有效地减少网络传输量从而提高性能。这也许能够通过修改Hadoop源码来实现,但并不轻松,而且随意修改底层源码又会影响升级。

对于小规模的集群,则没有必要采用统一管理方式,可以针对每个节点进行个性化配置,程序员也可以自由决定每个节点的计算任务和数据分布,这样可以更有效地利用硬件资源,获得最高的性能,虽然会需要更细致的工作,但对于小规模集群,这增加的工作量仍然是可以接受的。

Hadoop投入了相当多资源来实现超强的容错,这对于大集群当然也非常必要的。比如MapReduce为了容错把任务拆得太碎,而且每次执行结果都会写盘,以保证任务过程中有节点故障时仍然可以执行下去,这会严重影响性能。而且,这种体系也难以直接控制执行次序,在编写有序有关联运算时就很困难,需要费劲去绕(这个问题以后还会再谈到)。

而对于几个到十几个节点的小集群,就不需要这么强的容错能力了。在几小时的任务周期内,整个集群所有节点都能正常工作是个大概率事件。对于小集群,我们只要保证有少数节点故障时整个集群还能继续工作以接受新任务,而让当前正在执行的任务失败也是可以容忍的,毕竟这并不会经常发生。

复杂的框架本身也会消耗很多资源。小集群本来就没有几个节点,还要把有限的资源花费在这些不实际计算的事情上,显然是不划算的。在目标任务类型较为单一时,应当选择更适合的框架,没必要去追求大而全的东西。

“牛刀”应当去做它适合做的事,也就数据量大但运算简单的任务,用俗话说就是“傻大笨粗”。真到了几百个节点的集群,那还只有Hadoop能做了,而精细的活儿真不合适它来干。

对于小集群,我们需要更轻量级的大数据解决方案。

大数据的技术本质是高性能,而提高性能的需求无处不在,并不是只有那种规模的大数据。比即时查询设计的数据量就不会也不可能太大(否则不可能即时),这种场景会要求有很好的集成性,但Hadoop基本上不可能被嵌到应用程序里面,它只能在边上作为一个数据源工作;有些临时性数据处理时需要随时使用,也不可能再为之专门建设大数据平台,比如为了处理一批日志而搭建一个Hadoop,等环境搭好时任务已经过期了。

有一句话叫做三人行必有我师,其实做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个我的大数据交流学习群531629188不管你是小白还是大牛欢迎入驻,正在求职的也可以加入,大家一起交流学习,话糙理不糙,互相学习,共同进步,一起加油吧。

大数据Hadoop:杀鸡用的宰牛刀相关推荐

  1. 从“杀鸡焉用宰牛刀”谈充分必要条件

    中国有句古语叫"杀鸡焉用宰牛刀",大概指办小事用不着花大力气,今天抛开这句话的比喻义不谈,仅仅沿着这句话来谈一谈充分必要条件. 首先这句话无非形容了一件事:用宰牛刀杀鸡,那么按照数 ...

  2. 驭势导读 | 通往深度学习之路,“杀鸡焉用宰牛刀”?

    AI天团出道已久,成员都是集颜值和才华于一身的男纸,之前我们已经见过其中三位了,压轴出场的到底是谁? 更为重要的是,他会带给我们关于人工智能的什么新鲜东东呢? 王宇航,博士毕业于中国科学院自动化研究所 ...

  3. 大数据面试杀招——Spark高频考点,必知必会!

    前面两篇文章分别为大家介绍了大数据面试杀招 关于Hive 与 Hadoop 的内容,收到读者朋友们一致的好评和赞赏.嘿嘿,本篇文章我们就继续来研究,关于Spark的面试热点,又有哪些~ 一.你是怎么理 ...

  4. 2021年大数据Hadoop(三十):Hadoop3.x的介绍

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 Hadoop3.x的介绍 介绍 Hadoop 3.0新特性 ...

  5. 2021年大数据Hadoop(二十九):​​​​​​​关于YARN常用参数设置

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 关于yarn常用参数设置 设置container分配最小内 ...

  6. 2021年大数据Hadoop(二十七):YARN运行流程

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 Yarn运行流程 本系列历史文章 2021年大数据Hado ...

  7. 2021年大数据Hadoop(二十六):YARN三大组件介绍

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 Yarn三大组件介绍 ResourceManager No ...

  8. 2021年大数据Hadoop(二十五):YARN通俗介绍和基本架构

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 YARN通俗介绍和基本架构 Yarn通俗介绍 Yarn基本 ...

  9. 2021年大数据Hadoop(二十二):MapReduce的自定义分组

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 MapReduce的自定义分组 需求 分析 实现 第一步: ...

最新文章

  1. 算法科普:神秘的 DES 加密算法
  2. 检查数据库的CPU和PSU补丁信息
  3. 【Android 插件化】Hook 插件化框架 ( 反射工具类 | 反射常用操作整理 )
  4. 初等数论--同余方程--同余方程组:中国剩余定理
  5. WSL安装Oracle,折腾记录:WSL(Windows Subsystem for Linux,Windows上的Linux子系统)安装后的环境配置-Go语言中文社区...
  6. __declspec(dllexport)、__declspec(dllimport)详解
  7. C++ new一个数组时,指针移动程序崩溃问题
  8. Cocos2d-x场景功能描述的生命周期
  9. C中使用memset
  10. Netty5 Write和Flush事件处理过程_源码讲解
  11. 包括8个html的网页设计作品,8个超棒的HTML5网站设计欣赏
  12. MySQL定时备份数据库(全库备份)
  13. 开发一个app多少钱?app开发费用明细、app开发成本计算
  14. Codeforces894A QAQ
  15. Artificial Intelligence-人工神经网络
  16. 最全银行核心系统架构解读(165页PPT)
  17. 等保三级,多级等保认证的一点了解
  18. 阿雪的学习记录|解决Linux下PPPoE拨号上网不稳定的问题
  19. idea怎样创建一个java项目?
  20. 教育行业电商SaaS系统解决方案:助力企业实现经营、管理一体化

热门文章

  1. C8051F 30x单片机低成本射频读卡器方案
  2. 自动驾驶“绝地求生”结束了,但深兰的造车故事才刚刚开始
  3. openedx搭建(汉化版)
  4. 初链——区块链的安全和效率问题辨析
  5. 微信商户号商家转账到零钱v3接口证书生成步骤
  6. 如何在线安装Axure插件?
  7. 浪潮NF5270 M4 无法识别大容量硬盘问题及处理办法
  8. 开源驰骋工作流引擎设计ccflow已读回执设计
  9. 用Python缩小证件照
  10. Ubuntu常用快捷键使用记录