常用大数据技术名词通俗解释

常用大数据技术名词通俗解释

 

Hadoop:

最早出现的大数据的概念就是体现在Hadoop上面,简单理解就是虚拟了一个存储系统,一个文件在多台机器上保存多份,丢失几率很小。由于机器集群可以横向扩充,因此能保存理论上无穷多的文件,因此称为大数据平台。

 

MapReduce:

在Hadoop存文件的基础上,MapReduce担任处理文件的角色,它读到文件,并把处理文件的任务分成很多子任务,让它们在多台机器上执行,然后汇总结果。因此,只要机器足够多,处理文件的能力可以无限扩充。但它的一个缺点是每个任务的衔接,都是通过中间文件来完成,因此,除了CPU外,有很多磁盘读写的操作。

 

Hive:

Hive是基于Hadoop和MapReduce而衍生出来的,hadoop上文件的存放在hive里面抽象为数据库的表,访问表的SQL会被自动解析成MapReduce的任务。在hive出现之前,玩Hadoop大数据写MapReduce任务就是个高大上的玩意,难理解,难开发,难维护。 而在hive出现后,同样的需求,原来MapReduce可能要几百行实现,hive则只要十多行sql就能实现,一下子就把大数据平民化了。

 

Spark:

Spark是类似于MapReduce的文件处理引擎, 也是把读到的数据源文件分解成处理任务,然后分发到多台机器执行。不同的地方是,他以在内存执行为主。好处是速度快了, 坏处是内存玩不好容易奔溃,因此暂时还不是特别稳定,有效。

 

SparkSQL:

在Spark基础上增加了一种数据源的引入方式, 之前是从各种文件引入源数据, SparkSQL支持用SQL导入源数据处理(各种DB,包括Hive),在spark中分析处理,并把结果用SQL导回去。 这个方案好是好,结构化存储了数据,也避免了MapReduce的中间结果IO读写, 但是,开发人员要多学习一种开发语言Scala才能够把数据处理这个事情做完整,增加了开发维护的难度。

 

Hive on Spark:

在hive的基础上升级,目前看起来最完美的解决方案了。把原来Hive所依赖的任务计算引擎替换成Spark(set hive.execution.engine=spark;),一个配置而已,原来已经存在的代码都无需改动,性能直接提升100倍。但是,目前还没有正式版本GA, 估计要到Hive 1.3.0, 当前最新是Hive 1.2.1

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值