百度大数据开发面试题集锦及参考答案(持续更新)

目录

Java GC算法有哪些?

项目中遇到过的有关GC的情况,相关的设置参数

存储引擎、B+树和B树的区别、B+树的结构实现

布隆过滤器

内存的管理方式、虚拟内存和物理内存的区别

TCP、UDP、TCP三次四次握手、如何保证可靠传输

数据仓库主题域及其建设过程

数仓的指标体系构建

Hadoop小文件的危害

Flink里面断流怎么处理

Flink的exactly-once是怎么实现的

Checkpoint的Chandy-Lamport算法

Checkpoint的时候barrier什么时候发送

Sparkstreaming和Flink的区别

Spark任务提交流程

Spark的stage切分原理

Checkpoint的时候Barrier什么时候发送

Checkpoint产生了很多快照,怎么进行处理呢

SparkStreaming和StructuredStreaming的区别

Zookeeper的分布式一致性协议是什么,Raft讲一下,Paxos讲一下

Hive调优怎么调的

数据倾斜怎么处理的

你在做需求的过程中遇到过的最大的难点是什么

常见的排序算法,时间复杂度,空间复杂度

synchronized关键字的使用

volatile关键字,和synchronized的区别

Java的内存回收怎么做的

HashMap和TreeMap的区别

红黑树有什么特点

队列和栈结构

你项目里的熔断器的原理?

SQL调优怎么做的?

MVC架构里用到了什么设计模式?

那你讲讲Java里的设计模式

HDFS的读流程

项目里用到的 hive on spark 和 普通的hive有什么区别

数据倾斜的优化,如果group by A的字段倾斜怎么优化

Hadoop的序列化和java的序列化的区别?

Spark的shuffle过程

宽窄依赖是什么

Stage是如何划分的

Spark SQL的调优

Spark SQL怎么实现持久化,缓存

窗口函数中3个rank的区别

T+1生成数据但下午才生成数据,你的排查思路

数据倾斜你如何解决,小文件你如何解决

Hive和Spark区别和优劣势?

Spark有没有什么不好的地方?

Spark参数调优?

HashMap和Map有啥区别?

横向讲一下几个ETL工具的优缺点?

数据共享服务怎么做的?过程中如何做到的安全合规?

Hadoop的Checkpoint流程?

在集群计算的时候,什么是集群的主要瓶颈?

用Java语言编程实现带括号的字符串反转

写题-搜索螺旋排序数组

写非递归二叉树中序遍历

SQL实现求所有学科都及格的学生id,GROUP BY HAVING

SQL实现统计各省男女生人数,行转列

用SQL实现留存率

写SQL,date、dept、name、work_time,四个字段的表,求最近一个月内每个部门的平均工作时长前三的员工


Java GC算法有哪些?

Java的垃圾回收(Garbage Collection, GC)机制是自动管理内存的重要组成部分。它负责释放不再使用的对象所占用的内存,从而避免了内存泄漏。Java的GC算法主要有以下几种:

  • 标记-清除算法 (Mark-Sweep): 这是最基本的GC算法,分为两个阶段:标记和清除。标记阶段标记出所有从根节点可达的对象,清除阶段则回收未被标记的对象所占用的空间。这种算法的主要缺点是在清除阶段会产生大量不连续的内存碎片。

  • 复制算法 (Copying): 该算法将可用内存分为大小相等的两块,每次只使用其中的一块,在垃圾回收时,将正在使用的对象复制到另一块上面,然后清除当前使用的内存区域。这样可以避免内存碎片的问题,但代价是只能使用一半的总可用内存。

  • 标记-整理算法 (Mark-Compact): 这是标记-清除算法的一个改进版本,除了标记和清除之外,还增加了一个整理的过程,使得所有存活的对象都向一端移动,从而达到整理内存的目的,解决了碎片化的问题。

  • 分代收集算法 (Generational): 基于一个观察结果,即大部分对象很快就会死亡。因此ÿ


http://www.niftyadmin.cn/n/5558378.html

相关文章

在 Debian 12 上安装 budgie-extras-common 包

在 Debian 12 上安装 budgie-extras-common 包: 安装前的准备 更新 apt 数据库: 使用 apt-get:sudo apt-get update或者使用 apt:sudo apt update如果使用 aptitude(通常不在 Debian 默认安装中),首先需要安装它&…

如何防止Eclipse格式化程序在行注释开头插入空格

格式化前: //foo bar 格式化后: // foo bar 这种看着不是很舒服。如果不让格式化时自动在注释符后面插入空格呢? 要在Eclipse中进行代码格式化时防止在行注释(‌//)‌后面自动增加空格,‌可以通过调整…

自建Web网站部署——案例分析

作者主页: 知孤云出岫 目录 作者主页:如何自建一个Web网站一、引言二、需求分析三、技术选型四、开发步骤1. 项目初始化初始化前端初始化后端 2. 前端开发目录结构示例代码App.jsHome.js 3. 后端开发目录结构示例代码app.jsproductRoutes.jsProduct.js 4. 前后端连接安装axio…

RK3568 V1.4.0 SDK,USB OTG端子不能被电脑识别出adb设备,解决

修改后的/usr/bin/usbdevice: #!/bin/sh # # Usage: # usbdevice [start|update|stop] # # Hookable stages: # usb_<pre|post>_<init|prepare|start|stop|restart>_hook # <usb function>_<pre|post>_<prepare|start|stop>_hook # # Example …

Hadoop中HDFS、Hive 和 HBase三者之间的关系

HDFS&#xff08;Hadoop Distributed File System&#xff09;、Hive 和 HBase 是 Hadoop 生态系统中三个重要的组件&#xff0c;它们各自解决了大数据存储和处理的不同层面的问题。我们用大白话来解释这三个组件之间的关系&#xff1a; HDFS - 数据的仓库&#xff1a; HDFS 是…

【入门篇】2.3 STM32启动模式(一)

一,Boot引脚分步 二,启动电路 三,启动模式 STM32F4 根据 BOOT 引脚的电平选择启动模式,这两个 BOOT 引脚根据外部施加的电平来决定芯片的启动地址。 下表中 BOOT0 和 BOOT1 是 STM32 芯片上面的两个引脚,用于控制 STM32

常见的五种聚类算法总结

常见的聚类算法总结 1. K-Means 聚类 描述 K-Means 是一种迭代优化的聚类算法&#xff0c;它通过最小化样本点到质心的距离平方和来进行聚类。 思想 随机选择 K 个初始质心。分配每个数据点到最近的质心&#xff0c;形成 K 个簇。重新计算每个簇的质心。重复上述步骤&…

基于LSTM及其变体的回归预测

1 所用模型 代码中用到了以下模型&#xff1a; 1. LSTM&#xff08;Long Short-Term Memory&#xff09;&#xff1a;长短时记忆网络&#xff0c;是一种特殊的RNN&#xff08;循环神经网络&#xff09;&#xff0c;能够解决传统RNN在处理长序列时出现的梯度消失或爆炸的问题。L…