Hadoop开发过程中使用的算法及应用场景

问题分析

考官考核的主要是面试人员对算法是否有了解,以及对Hadoop运用的熟练度。

核心问题讲解

  • 单词计数
  • 数据去重
  • 排序:按某个Key进行升序或降序排列
  • TopN:对源数据中所有数据进行排序,取出前N哥数据
  • 选择:关系代数基本操作再现
  • 投影:关系代数基本操作再现
  • 分组:Group By XXXX
  • 多表连接
  • 单表关联

问题扩展

MapReduce:写Mapreduce进行数据处理,需要利用java、python等语言进行开发调试,如果没有一项技术(如 Java)基础,几乎不可能学会 MapReduce。

Hive:Hive 构建于传统的数据库和数据仓库理念之上。它对待数据的方式就像是它有一个基于 SQL 或基于架构的结构。Apache Hive提供了一种更具体和更高级的语言,通过运行Hadoop作业来查询数据,而不是直接编写脚本来逐步操作Hadoop上的几个MapReduce作业。Hive的初步设计思路在于提供与SQL类似的使用体验,开发人员只需要掌握Sql相关的知识就可以使用。

结合项目中使用

在大数据的复杂统计分析中,可以使用Hive的SQL功能来便捷的实现不同算法,降低入门难度,提高研发效率。

点击此处
隐藏目录