• hive的初步认识与hive的本质


    Hive是什么?就从这儿开始学习。。。。

    Hive是建立在Hadoop hdfs上的数据仓库基础架构。

    Hive可以用来数据抽取转换加载(ETL)。

    Hive定义了简单的类SQL查询语句,称为HQL。

    Hive是SQL解析引擎,它将SQL语句转移成M/R Job,然后在Hadoop上执行。

    Hive的表其实就是HDFS的目录,Hive的数据对应相应目录下的文件。

     Hive使用场景非实时的海量数据分析/挖掘/建模

    Hive本质是将SQL转换为MapReduce程序

    那我就说哈本质过程,掌握本质就能掌握其核心思想。

    当我们在控制台输入一个HQL(类似sql),接下来hive处理转换成mapreduce,然后提交到hadoop运行计算,最后将结果返回到控制台。

    上面这个过程你就感觉自己在操作关系数据库一样,根本不需要底层是怎么实现的。就是这么简单自信。

    真正想理解hive必须要理解mapreduce。

    因为他的本质是跑的mapreduce程序,所以他将不适合实时任务处理。这就是和impala本质区别。

    虽然impala和hive都是建立在hadoop(hdfs)之上的。但是:impala没有使用 MapReduce进行并行计算,而hive依赖MapRduce.

    虽然MapReduce是非常好的并行计算框架,但它更多的面向批处理模式,而不是面向交互式的SQL执行。与 MapReduce相比:Impala把整个查询分成一执行计划树,而不是一连串的MapReduce任务,在分发执行计划后,Impala使用拉式获取 数据的方式获取结果,把结果数据组成按执行树流式传递汇集,减少的了把中间结果写入磁盘的步骤,再从磁盘读取数据的开销。Impala使用服务的方式避免每次执行查询都需要启动的开销,即相比Hive没了MapReduce启动时间.

    说的有点多了。。。想起一点就记录一些。这样也不错。

  • 相关阅读:
    斯坦福ML公开课笔记15—隐含语义索引、神秘值分解、独立成分分析
    [cocos2d-x]屏幕自适应解决的方法
    【机器学习实验】学习Python来分类现实世界的数据
    按花生酱,赞不绝口——敏捷12准则的敏捷解释
    linux命令笔记之ls
    HTML5 Canvas动画效果实现原理
    互联网+时代的人生必修课—逆商
    WebService的相关使用
    将一个链表中的结点依照奇偶分成两个链表
    web开发性能优化---用户体验篇
  • 原文地址:https://www.cnblogs.com/xubiao/p/5344956.html
Copyright © 2020-2023  润新知