【面试真题】ThoughtWorks-编程结对技术面试(一面)-2022年2月11日

一、技术问题

1、Hbase

(1)介绍

(2)项目中是否有用到

于:存大量数据(千万),考虑性能,方便进行数据处理,对其进行分析

自己:ADS层和Flink的数据,DWD计算出的的中间层数据存入DWM并使用Phoenix

(3)Row_key优化

设计原则
1)rowkey长度原则
2)rowkey散列原则
3)rowkey唯一原则
设计方式
1)生成随机数、hash、散列值
2)字符串反转

2、Kylin

(1)存在什么问题

维度列选取适当,不然2的几次方 

3、Java数据结构

HashMap(红黑树:根红子黑叶子红)、ArrayList、LinkedList

4、类加载机制及双亲委派模型

(1)类加载的层次

将class文件加载后才放入运行时数据区

(2)过程

整个生命周期包括:加载、验证、准备、解析、初始化、使用、卸载 7 个阶段。其中验证、准备、解析 3 个部分统称为连接

(3)类加载器

启动类加载器(Bootstrap ClassLoader)

扩展类加载器(Extension ClassLoader)

应用程序类加载器 (Application ClassLoader)

(4)双亲委派模型

如果一个类加载器收到了类加载请求,不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去完成。

每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传送到顶层的启动类加载器中,只有当父类加载器反馈自己无法完成这个加载请求(它的搜索范围中没有找到所需的类)时,子加载器才会尝试自己去加载。

5、实习项目

6、编程题目

商城费用计算-根据折扣

7、开窗函数和RowKey

8、static和final有什么区别

posted @ 2022-02-11 22:38  哥们要飞  阅读(270)  评论(0编辑  收藏  举报