这是我参与「第四届青训营 」笔记创作活动的第9天
题目来源:【大数据专场 学习资料三】第四届字节跳动青训营 - 掘金
-
达到 99.99% 可用性的服务,一年中的不可用时间是多久?
- 52.6min
-
北京和上海的网络延迟下限是多少?
- 30ms左右
-
什么是 ZKFC,它和哪几个组件交互?
- NameNode探活,触发主备切换
- ZooKeeper和Active NameNode、Standby NameNode
-
什么是高可用集群中的 fence 机制?
- 在新 active NN 上主并正式处理请求之前,先要确保旧 active NN 已经退出主节点的状态。一般做法是先用 RPC 状态检测,发现超时或失败则调用系统命令杀死旧 active NN 的进程。
-
HDFS NameNode 如何选择数据放置的 DataNode 时,需要考虑的因素有哪些?
- 负载均衡:避免热点、提高机器使用率、提高可靠性等
- 数据丢失概率:降低副本放置的组合数,降低副本丢失的发生概率
-
什么是路径的最长匹配?和字符串的最长匹配有什么区别?举例说明
- 按照路由匹配最长的,来找到最适合的NameNode
- 字符串可以是中间匹配,比如abcdefg可以是bcdefg的最长匹配,而路径需要匹配类似前缀匹配,需要从路径起始开始匹配,比如/a/b/c能匹配到/a/b/c/d/f,但不能匹配到/d/a/b/c
-
小文件过多会对 NameNode 和 DataNode 造成什么影响?
- 元数据问题:多个小文件相对于一个大文件,使用了更多元数据服务的内存空间。
- 数据访问问题:多个小文件相对于一个大文件,I/O 更加的随机,无法顺序扫描磁盘。
-
慢节点的成因可能有什么?
- 一般是性能瓶颈,来不及处理请求,比如数据不均,导致部分节点存储数据过多,请求过多
- 冷热不均,某些节点存储了热点数据
- 新旧不均,新数据更容易被访问
- 机器配置不同,低配置机器处理请求过慢
-
对比完全随机放置和 copyset 放置的特点。
- copyset降低副本放置的组合数,降低副本丢失的发生概率
- 但修复速度降低,DN 机器故障时,只能从少量的一些其他 DN 上拷贝数据修复副本。
-
新节点上线就是扩容完成了么?还需要做什么工作?
- 需要迁移其他 DN 的旧数据到新 DN 上,使得负载和数据冷热均衡