2024年大数据高频面试题(上篇)

news2024/12/24 18:27:46

文章目录

  • HDFS读流程和写流程
  • HDFS读数据流程
  • NameNode和Secondary NameNode工作机制
    • Fsimage
    • Edits文件
    • Seen_txid
  • namenode工作机制
  • HA NameNode如何工作
    • ZKFC
    • HealthMonitor
    • ActiveStandbyElector
    • JouranlNode集群
    • DataNode工作机制
    • DataNode数据损坏
    • 压缩
  • MapReduce工作流程
    • MapTask工作流
    • ReduceTask工作流
  • Yarn工作机制(作业提交全过程)
    • Yarn调度器
    • 公平调度器(Fair Scheduler)
    • HDFS小文件处理
  • Shuffle及优化
  • Hadoop解决数据倾斜方法
    • Hadoop的参数优化
      • 资源相关参数
      • YARN
    • Shuffle
    • 容错相关参数
  • 异构存储(冷热数据分离)
  • Hive
    • Hive运行原理
    • 内部表与外部表
    • Hive分区与分桶
      • Hive分区
      • Hive的分桶
      • Hive分区分桶区别
  • 函数
    • 窗口函数
    • 排序函数
  • Hive 优化
    • 1. 表的优化
    • 合理设置Map及Reduce数
      • 3. 合理设置Reduce数
      • 4. 并行执行
      • 5. JVM重用
      • 6. 列式存储
      • 7. 压缩(选择快的)
  • Hive数据倾斜
    • Hive数据倾斜表现
    • Hive数据倾斜的原因
    • Hive数据倾斜解决
  • HBase
    • HBase架构与角色
      • 架构图
      • 角色
    • HBase存储结构
      • 逻辑结构
      • 物理存储结构
    • HBase写流程
    • MemStore刷写时机
    • HBase读流程
    • HBase与Hive的对比
    • 预分区
  • RowKey设计
    • 设计原则
    • HBase优化
      • 高可用
      • 内存优化
      • 配置优化
  • Phoenix二级索引
    • 全局索引
    • 本地索引
    • 覆盖索引
    • 函数索引
    • 索引优化

HDFS读流程和写流程

在这里插入图片描述

(1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件
是否已存在,父目录是否存在。
(2)NameNode返回是否可以上传。
(3)客户端请求第一个 Block上传到哪几个DataNode服务器上。
(4)NameNode返回3个DataNode节点,分别为dn1、dn2、dn3。
(5)客户端通过FSDataOutputStream模块请求dn1上传数据,dn1收到请求会继续调用dn2,然后
dn2调用dn3,将这个通信管道建立完成。
(6)dn1、dn2、dn3逐级应答客户端。
(7)客户端开始往dn1上传第一个Block(先从磁盘读取数据放到一个本地内存缓存),以Packet为单
位,dn1收到一个Packet就会传给dn2,dn2传给dn3;dn1每传一个packet会放入一个应答队列等待应
答。
(8)当一个Block传输完成之后,客户端再次请求NameNode上传第二个Block的服务器。(重复执行
3-7步)

HDFS读数据流程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1929073.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git常用命令以及使用IDEA集成Gitee

目录 一、设置用户签名 二、初始化本地库 三、查看本地库状态 四、添加文件到暂存区 五、提交本地库 六、修改文件 七、版本穿梭 八、Git分支 九、分支的操作 9.1、查看分支 9.2、创建分支 9.3、切换分支 9.4、合并分支 十、团队协作 十一、Idea集成Git 11.1、配…

Vulnhub:DC-1

1.环境搭建 靶机下载地址 将下载的靶机导入到Oracle VM VirtualBox中,设置仅主机模式,使用和kali相同的网卡 2.渗透过程 使用nmap工具进行主机发现扫描 nmap -sn 192.168.56.0/24 发现靶机ip地址,使用nmap工具进行靶机端口扫描 nmap -sS…

Golang | Leetcode Golang题解之第238题除自身以外数组的乘积

题目: 题解: func productExceptSelf(nums []int) []int {length : len(nums)// L 和 R 分别表示左右两侧的乘积列表L, R, answer : make([]int, length), make([]int, length), make([]int, length)// L[i] 为索引 i 左侧所有元素的乘积// 对于索引为 …

AIGC时代算法工程师的面试秘籍(2024.6.24-7.7第十七式) |【三年面试五年模拟】

写在前面 【三年面试五年模拟】旨在整理&挖掘AI算法工程师在实习/校招/社招时所需的干货知识点与面试方法,力求让读者在获得心仪offer的同时,增强技术基本面。也欢迎大家提出宝贵的优化建议,一起交流学习💪 欢迎大家关注Rocky…

如何使用ECharts和DataV.GeoAtlas创建广东省人口分布图

引言 数据可视化是数据分析中的重要环节,它可以帮助我们直观地理解数据。ECharts 是一个由百度团队开发的开源数据可视化库,它提供了丰富的图表类型和灵活的配置选项。DataV.GeoAtlas 是阿里云提供的一个地理数据可视化平台,它可以帮助我们获…

【Python爬虫教程】第7篇-requests模块的cookies保存和使用

文章目录 为什么要保存cookiesrequests.utils工具类保存cookies到本地文件从本地文件解析cookies使用使用实践 为什么要保存cookies 保存cookies是避免每次都登录获取权限,一遍权限是有过期时间的,不需要每次重复登录,可以将cookies保存起来…

vue数据缓存

data 对象未定义或未正确传递:确保 data 对象在你调用 onMounted 钩子时已经存在且包含 base.columns 属性。 columns 响应式引用未定义:确保 columns 是一个使用 ref 或 reactive 创建的响应式引用。 异步数据问题:如果 data 是通过异步操…

苹果手机相册怎么全部删除照片?这样做快人一步

使用苹果手机越久,大家手机里存储的照片也日益增多,内存逐渐变得紧张。不少用户在换上新手机后,将旧的苹果手机当作备用机。在为新手机腾出空间时,大家清理了大量不用的文件和内存,然而,清理手机相册却成了…

【找不到视图问题解决】@RestController 与 @Controller注解的使用区别

一、问题描述 苍穹外卖在菜品分页查询功能实现的过程中,出现了找不到视图的情况 2024-07-12 21:54:20.860 ERROR 22488 --- [nio-8080-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with p…

剖析 AI 对音乐的影响:创造还是毁灭之路

文章目录 📒一、引言 📒二、AI 降低音乐创作门槛 🚀(一)技术进步带来的便捷 🚀(二)对音乐普及的推动作用 📒三、AI 重塑音乐创作流程 🚀(一…

【多个Python版本存在,使用pip+不同版本安装库时,windows弹出打开方式窗口的解决方法】

问题描述 电脑上存在python3.9,3.10,3.11,安装顺序也是先安装3.9,然后3.10,最后3.11,那么直接使用pip安装,会装在3.11的位置,经过搜索可以通过pip版本,比如pip3.9 insta…

Java程序员转行大模型的机遇与挑战

随着人工智能技术的迅猛发展,大模型(Large Language Models, LLMs)正逐渐成为IT行业的热点。对于Java程序员来说,转行大模型领域不仅意味着新的机遇,也面临着诸多挑战。本文将探讨Java程序员转行大模型的机遇与挑战&am…

【系统架构设计师】十一、系统架构设计(层次架构风格|MVC|面向服务的架构风格|ESB)

目录 五、层次架构风格 5.1 两层C/S架构 5.2 三层C/S架构 5.3 三层B/S架构 5.4 MVC架构 5.5 MVP架构 5.6 MVVM架构 六、面向服务的架构风格 6.1 SOA特征 6.2 Web Service 6.2.1 关键技术 6.2.2 WEB Service 6.3 企业服务总线ESB 相关推荐 历年真题练习 五、层次…

PostgreSQL安装/卸载(CentOS、Windows)

说明:PostgreSQL与MySQL一样,是一款开源免费的数据库技术,官方口号:The World’s Most Advanced Open Source Relational Database.(世界上最先进的开源关系数据库),本文介绍如何在Windows、Cen…

【c++11】什么情况下需要封装set/get

文章目录 一、平凡类型与非平凡类型什么时候使用set/get1.平凡类型2.非平凡类型 二、构造函数参数较多解决办法1.把所有参数放到一个结构体里面2.使用build设计模式 三、如果构造函数众多(参数很多)1.模仿make_unique,就地构造2.基于build设计…

【Typescript】Interface和type的区别;探讨为什么interface赋值给Record需要索引签名

一、Interface与type的区别 1、Interface可以声明合并,type不行 声明同名的类型,Interface同名会合并,而type重名会报错 2、类型扩展的方式不同 Interface基于extends继承扩展基类类型,而type利用 & 扩展 3、type可以被基础…

使用geoipupdate自动更新GeoIP数据库

一、 什么是 GeoIP? 通过在数据库中将地理位置和 IP 地址相互映射,软件程序便可以使用 IP 地址来确定其对应的地理位置,其中包括国家/地区、州/省、城市、邮政编码、纬度/经度、ISP、区号和其他信息。 很多软件都使用 MaxMind 的数据库对 IP…

Hive的基本操作(查询)

1、基础查询 基本语法 select 字段列表|表达式|子查询 from 表(子查询|视图|临时表|普通表) where [not] 条件A and|or 条件B --先:面向原始行进行筛选 group by 字段A[,字段B,...] > 分组【去重处理】 having 聚合条件(非原始字段条件) --再&#x…

超市管理系统 需求分析与设计 UML 方向

一、项目介绍 1.1项目背景 随着经济一体化和电子商务的迅速发展,网络传播信息的速度打破了传统信息传递的模式,互联网的高速发展和计算机应用在各个高校进展迅速,更多信息化产品的突飞猛进,让现代的管理模式也发生了巨大的变化&…

Catena-x标准解读:CX-0005 Item Relationship Service API 2.1.1 项目关系服务

1 介绍 如今,大量数据存储在一个行业供应链的不同参与者之间。通过将数据与其相关上下文连接起来,可以极大地提高数据的价值。 为了实现跨企业链接数据,应用了方面模型、标准化协议和连接数据的标准化方法等标准。Catena-X为访问跨企业链接…