大数据技术之_32_大数据面试题_01_Hive 基本面试 + Hive 数据分析面试 + Flume + Kafka 面试

2024-08-23 23:18

本文主要是介绍大数据技术之_32_大数据面试题_01_Hive 基本面试 + Hive 数据分析面试 + Flume + Kafka 面试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大数据技术之_32_大数据面试题_01

    • 一、Hive 基本面试
      • 1、什么是 metastore
      • 2、metastore 安装方式有什么区别
      • 3、什么是 Managed Table 跟 External Table?
      • 4、什么时候使用 Managed Table 跟 External Table?
      • 5、hive 有哪些复合数据类型?
      • 6、hive 分区有什么好处?
      • 7、hive 分区跟分桶的区别
      • 8、hive 如何动态分区
      • 9、map join 优化手段
      • 10、如何创建 bucket 表?
      • 11、hive 有哪些 file formats
      • 12、hive 最优的 file formats 是什么?
      • 13、hive 传参
      • 14、order by 和 sort by 的区别
      • 15、hive 跟 hbase 的区别
    • 二、Hive 数据分析面试
      • 1、分组 TopN,选出今年每个学校、每个年级、分数前三的科目
      • 2、今年,北航,每个班级,每科的分数,及分数上下浮动 2 分的总和
      • 3、where 与 having:今年,清华 1 年级,总成绩大于 200 分的学生以及学生数
    • 三、Flume + Kafka 面试
      • 1、flume 如何保证数据的可靠性?
      • 2、kafka 数据丢失问题,及如何保证?
      • 3、kafka 工作流程原理
      • 4、kafka 保证消息顺序
      • 5、zero copy 原理及如何使用?
      • 6、spark Join 常见分类以及基本实现机制

一、Hive 基本面试

1、什么是 metastore

  metadata 即元数据。包含 database、tabel、column names、partitions 信息、bucketing 信息等的元数据信息。
  元数据默认是存储在 Derby 中,建议存储在关系型数据库中。

2、metastore 安装方式有什么区别

内嵌模式
  内嵌模式使用的是内嵌的 Derby 数据库来存储元数据,也不需要额外起 Metastore 服务。这个是默认的,配置简单,但是一次只能一个客户端连接,适用于用来实验,不适用于生产环境。

本地元存储
  本地安装 mysql 替代 derby 存储元数据,这种安装方式和嵌入式的区别在于,不再使用内嵌的 Derby 作为元数据的存储介质,而是使用其他数据库比如 MySQL 来存储元数据。hive 服务和 metastore 服务运行在同一个进程中,mysql 是单独的进程,可以同一台机器,也可以在远程机器上。

远程元存储(HiveServer2)
  Hive 服务和 metastore 在不同的进程内,可能是不同的机器,该模式需要将 hive.metastore.uris 设置为 metastore 服务器 URL,如果有多个 metastore 服务器,将 URL 之间用逗号分隔,metastore 服务器 URL 的格式为 thrift://127.0.0.1:9083。

3、什么是 Managed Table 跟 External Table?

  • 1、Hive 有两种类型的表 Managed Table(内部表) 跟 External Table(外部表)。
  • 2、Managed Table:也被称作 Internal table,这种表是 hive 的默认类型。如果你在创建表的时候没有指明 Managed 或者 External,那么默认就会给你创建 Managed Table。
      a、Managed Table 的数据,会存放在 HDFS 中的特定的位置中,通常是 /user/username/hive/warehouse
      b、我们可以使用 describe formatted table_name; 命令来查看表的信息。
      c、当你删除 drop table table_name; 删除表时,数据文件也会一并删除。
  • 3、External Table:特别适用于想要在 Hive 之外使用表的数据的情况.当你删除 External Table 时,只是删除了表的元数据,它的数据并没有被删除。

4、什么时候使用 Managed Table 跟 External Table?

  • Managed Table
    • 适用于临时创建的中间表
  • External Table
    • 适用于数据多部门共享

5、hive 有哪些复合数据类型?

1、MAP

    a.Map 复合数据类型提供了 key-value 对存储,你可以通过 key 获取 value。b.zhangsan Math:90,Chinese:92,English:78i.create table score_map(name string, score map<string, int>) map keys terminated by ':';ii.select name, score['English'], size(score) from score_map;

2、STRUCT

    a.Struct 是不同数据类型元素的集合。b.zhangsan Math,90i.create table course_struct(name string, course struct<course: string, score: int>) collection items terminated by ',';ii.select name, course.score, course.course from course_struct;

3、ARRAY

    a.Array 是同类型元素的集合.b.zhangsan beijing,shanghai,hangzhoui.create table person_array(name string, work_locations array<string>) collection items terminated by ',';ii.select name

这篇关于大数据技术之_32_大数据面试题_01_Hive 基本面试 + Hive 数据分析面试 + Flume + Kafka 面试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1100777

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi