大数据开发面试题1

时间:2025-02-17 07:04:18

列举几个hadoop生态圈组件或其他Apache的*项目,并做简要的描述

1、hive:
  • hive是由Facebook开发的用于解决海量结构化数据的开源组件
  • hive是基于hadoop的一个数据仓库工具,可以将hdfs中结构化的数据映射为一张表并提供了类SQL查询(将SQL语句转化为MapReduce程序执行)
  • hive处理的数据存放在hdfs中,分析数据底层的实现是MapReduce,执行程序运行在yarn上。
2、HBase
  • HBase是一款适合大数据分析的数据库(按列存储)
  • HBase主要解决快速存储、分布式存储和大量数据分析
3、spark
  • Spark是一种快速、通用、可扩展的大数据分析引擎。
  • spark是基于内存计算的大数据并行计算框架,spark适用于各种原先需要多种不同分布式平台的场景,包括批处理、迭代 算法、交互式查询、流处理。通过在一个统一的框架下支持这些不同的计算,Spark使我们可以简单而帝豪的把各种处理流程 整合在一起。

简要描述数据库中的 null,说出null在hive底层如何存储,并解释selecta.* from t1 a left outer join t2 b on = where =null;

null与 任何值运算的结果都是null,可以用is null和is not null来判断null值的情况,null在底层使用‘\N’来存储的
  • 1

列举几个常用数据库中的数据分析处理中的分析函数,并说明用法以及含义

  • sum() 求和
  • max() 最大值
  • min() 最小值
  • avg() 平均值
  • count() 总行数

写出hive中的split、coalesce和collect_list函数的用法

1、split
split(string str, string pat) :按照pat对str字符串进行分割,得到一个字符串数组。
  • 1
2、coalesce
coalesce(T v1,T v2,....):非空函数查找,返回第一个非空的值,如果所有的值都是null,则返回null。
  • 1
3、collect_list
将分组中的某列转化为一个数组输出,collect_list不去重,collect_set去重 
  • 1