大数据面试总结 四

1、当hadoop集群中某一个节点挂了,内部数据流程是如何进行的?

每一个datanode都会定期向namenode发送heardbeat消息,当一段时间namenode没有接收到某一个datanode的消息,此时namenode就会将该datanode标记为死亡,并不会向他们发送任何的IO请求,同时任何注册到失效的namenode上的数据不会提供给hdfs所使用,当某些块的副本数小于指定的数量的时候,namenode会不断的跟踪哪些副本是需要复制的,并在必要的时候进行复制。

(官网可以了解到将datanode标记成死亡节点一般默认的时间是10分钟,但是也可以通过修改配置文件来修改下线的时间。)

2、namenode和secondarynamenode分别存储了什么数据

namenode:

1、负责接收客户端的读、写的请求

2、保存文件的时候会保存元数据,例如文件的大小、文件的归属、文件的大小

3、也会收集block的信息

secondarynamenode:

主要是用来存储日志文件,fismage和edits,定期的合并这两个日志文件。

3、集群中如何添加节点
4、mysql与orcal的区别:

1、一个是收费的,另一个是开源的

2、存储的数据量不同,orcal存储的数据量可以很大,但是mysql不可以

5、怎么检查数据有没有出现什么问题:

1、查看建表语句,看创建表时字段是否完整、语言格式是否一致

6、orcal是一个什么类型的数据库:

1、是一个关系型数据库,可以是因高吞吐量的数据库,可移植性比较好

7、sql中常见的函数有:

时间函数:

时间转成时间戳:unix_timestamp

时间戳转成时间:from_timestamp

时间相减:datadiff

窗口函数:

rank、会跳跃 1224

descrank、1223

rownmber 1234

聚合函数:sum、avg

字符串函数:substring、concat

8、orcal中的冷备份与热备份的区别与各自的优缺点:

热备份:针对归档模式的数据库,在数据库继续工作的时候进行备份,但是对于冷备份来说,指的是数据库关闭后对数据进行备份,是用于所有模式的数据库。

优缺点:

热备份:数据在备份的时候数据库可以继续进行工作,还可以恢复到任意的时间点

冷备份:操作比较简单,性能比热备份较强。

9、sql中常见的操作:

表操作:

删除表数据:truncate table 表名

修改表的名称:alter table 表名 rename to 新的表名

新增列:alter table 表名 add 列名

修改列名:alter table 表名 change 原表名 新表名 列类型

删除列:drop table 表名 drop 列名

插入数据:

insert into 表名 (列名1,列名2,列名3)values(值1,值2,值3)

更型数据:update 表名 set 列名=列值

10、数据库中笛卡尔积

指的是在数据库中,两张表在关联的时候不指定任何的关联的条件。

11、flnik中chekpoint的流程:

1、由flink创建checkpointcoordinator(检查点协调器)

2、coordinator会向所有的sourceoperater发送barrier栅栏,当sourceoperater接收到后,就会暂停一切活动(暂停的时间会比较短),并执行state快照,当一切都执行完

向coordinator进行汇报并将barrier发送到下游的operater

3、当下游的operater接收到barrier后也会向所有的sourceoperater,就会执行第二步的操作。一直到将barrier发送到sinkoperater中

4、当sink接收到这个barreier后,依旧执行步骤二,当coordinator接收到所有的operater返回的ok,本次快照拍摄结束。

12、开启checkpoint的方式:

开启checkpoint:默认情况下是禁止的,可以通过调用 StreamExecutionEnvironmentenableCheckpointing(n) 来启用 checkpoint,里面的 n 是进行 checkpoint 的间隔,单位毫秒。

也可以在在flink-conf.yaml配置文件中开启checkpoint。

13、flink中的state与checkpoint的主要的区别:

state:指的是某一个task或者是莫一个operater

checkpoint:指的是在某一个特定的时间的快照。

14、spark中如何解决重用:

对重复使用的RDD进行持久化:cache缓存、checkpoint持久化、广播变量

复制代码
persist:cache则是persist的简化方式,cache底层是调用persist的无参构造器,无参构造器调用的是persist(StorageLevel.MEMORY_ONLY)。
15、cache与checkpoint的区别:

1、cache是基于内存的,然而对于checkpoint来说是基于磁盘的,也可以存储在hdfs等持久化存储。

16、 flink中的状态容错:savepoint、checkpoint

区别:

1、触发条件:savepoint需要手动出发,但是checkpoint是自动的触发

2、主要作用:savepoint主要是用来有计划的恢复,例如调剂并发啊等一些可能。checkpoint是当出异常的时候会自动的触发

3、特点:savepoint持久,可以手动触发恢复,但是checkpoint轻量,可以自动的触发回复。

17、怎么解决kafka数据量过大:

1、可以增加topic的分区数,可以提高并行处理更多的数据

复制代码
kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic --partitions 10

2、增加副本因子,可以提高数据的冗余,提高数据的可靠性

复制代码
bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic --replication-factor 3

3、调整消费者的并行度

4、优化生产者配置:

复制代码
batch.size:增加批处理提高吞吐量

5、配置清理策列:根据数据保留策略配置日志保留时间和日志大小,定期清理旧数据

6、扩大kafka集群的规模:增加broker节点的数量

18、实时计算与实时查询的区别:

实时计算指的是来一条数据就计算一条数据

实时查询指的是在海量的数据中查询数据

相关推荐
Hello.Reader12 分钟前
Flink Source/Sink 的 Exactly-Once、At-Least-Once 到底意味着什么?
大数据·flink
智驱力人工智能21 分钟前
守护矿山动脉 矿山皮带跑偏AI识别系统的工程化实践与价值 皮带偏离检测 皮带状态异常检测 多模态皮带偏离监测系统
大数据·人工智能·opencv·算法·安全·yolo·边缘计算
binbinaishijie8835 分钟前
Matlab读取CSV数据并处理实战指南:从入门到精通
大数据·数据库·其他·matlab
数琨创享TQMS质量数智化1 小时前
数琨创享成功入选江苏省首批入库培育数据企业,踏入数智发展新征程
大数据
WLJT1231231232 小时前
接插件:电子系统的连接核心与产业赋能
大数据·人工智能·科技·安全·生活
无心水2 小时前
2026全球与中国形势深度解析:政治格局、经济金融、科技突破与国家规划(附数据图表)
大数据·科技·金融
郑州光合科技余经理2 小时前
私有化B2B订货系统实战:核心模块设计与代码实现
java·大数据·开发语言·后端·架构·前端框架·php
xindoo2 小时前
最近AI领域爆火的 Agent Skills 是什么?
大数据·人工智能
脑壳疼___2 小时前
springAi集成es向量库
大数据·elasticsearch·搜索引擎
DX_水位流量监测2 小时前
阵列雷达波测流监测技术:原理、参数与应用实践
大数据·网络·人工智能·信息可视化·数据分析