- 博客(27)
- 收藏
- 关注
原创 20210223——某厂大数据开发面经
1、SparkSQL有几种join?2、Hive你怎么做的优化?3、你确定你这么做真的能保证exactly-once?4、Hive字段类型不同,会发生什么事?5、Hive的执行计划看过吗?里面都有什么内容?你怎么看的6、SS的实时是怎么和离线关联起来的?api吗?任务每天重启?...
2021-02-23 16:25:06
195
原创 平安产险-大数据开发面经
1、hive接触过哪些文件存储类型,text的优劣、列式存储的好处、SequeceFile的好处、RCFile有没有用过2、对mr的理解3、内部表和外部表的区别,对应的应用场景4、map join和reduce join的区别5、写过最复杂的sql,场景是什么,工作中什么样的sql写的比较多6、hive的数据倾斜,怎么解决*7、宽依赖和窄依赖的理解*shuffle、stage,发生shuffle就会划分stage,产生宽依赖8、日志数据、交易数据的数据量9、数仓的理解,我从分层角度回答、
2021-01-12 23:28:20
765
原创 2021-01-12
Scala学习笔记1.5 scala类都有一个伴生对象,和java中的静态方法一样BigInt.probablePrime(100, scala.util.Random)
2021-01-12 23:18:45
116
原创 Hive经典面试题
环比:比上月同期sales表month id sales202007 1 800202004 1 900202005 1 700202006 1 900202008 1 1000202009 1 1100202007 2 800202004 2 900202005 2 700202006 2 900202008 2 600202009 2 1100select distinct idfrom (se
2020-12-03 22:29:00
320
原创 面经
1 Hive客户端怎么连接hive的,几种方式的区别2 Hive的元数据管理方式,区别3 Sparksql怎么合并小文件,设置分区数一定输出这么多个文件吗?4 Hive常用的调优参数5 Spark常用的调优参数6 spark的executor的内存结构是怎样的7 spark的广播变量是怎么复制分发的?8 常用的gc算法,以及怎么查看jvm状态9 jdk1.8的默认gc算法是什么10 wc的mr流程,尽可能的细11 clickhouse底层结构是怎样的,怎么高可用的?...
2020-12-02 17:29:53
77
原创 面试准备
1. 熟悉python开发语言,熟悉hive/hadoop等分布式计算技术,熟悉其运行机制和体系结构,有MR作业编写经验优化。hadoop复习hadoop项目复习hive sql编译过程复习参考美团https://tech.meituan.com/2014/02/12/hive-sql-to-mapreduce.htmlMR项目复习2. 灵活运用SQL实现海量数据ETL加工处理 ,有较好的SQL性能调优经验;Hivesql复习(窗口函数、分析函数)hive性能优化3. 思路清晰,对数据敏
2020-11-22 01:58:51
90
转载 Shuffle过程排序
MapTask和ReduceTask都会默认对数据按照key进行排序,不管逻辑上是否需要。默认是按照字典顺序排序,且实现该排序的方法是快速排序。但是map和reduce任务只能保证单个任务内部输出有序,不能保证所有输出全局有序。MapTask,当环形缓冲区使用率到达一定阈值后进行一次快速排序,将这些有序数据溢写到磁盘上,而当数据处理完毕后,它会对磁盘上所有文件进行归并排序。ReduceTask,它从每个MapTask上远程拷贝相应的数据文件,如果文件大小超过一定阈值,则溢写到磁盘上,否则存储在内存中。如果
2020-11-20 22:30:31
752
原创 20201111编程猫面经
数仓工程师1、描述一下hive报表开发的业务场景,有没有碰到复杂的口径。2、抽取数据用什么工具3、简单介绍开发的报表(包括维度表、事实表)的核心指标4、sql题a.有个表,两个字段month price1 1002 2003 300一个sql实现按月累加sum(price) over(order by month asc)5、场景题有两个100G的文件,每个文件各自有一个字段,机器只有2G2核,怎么不发生OOM的情况,进行key的匹配
2020-11-11 20:28:33
654
原创 面试题—Kafka为什么这么快/这么能存?(自己整理的)
为什么读写这么快Kafka的快是从底层设计、到充分利用硬件、系统、压缩等特性,综合产生的结果。从以下几个方面解释:1、磁盘读写原理2、利用Pagecache+mmap3、零拷贝4、存储设计5、批量读写6、批量压缩7、消息写入过程8、消息读取过程1、磁盘读写原理一次访盘请求(读/写)完成过程由三个动作组成:1、寻道时间:磁头移动到指定磁道2、旋转时间:等待指定扇区从磁头下旋转而过3、数据传输时间:数据在磁盘、内存与网络之间到实际传输Kafka根据数据的局部性原理,有以下两种方法
2020-10-31 14:00:59
189
原创 工作中常用&常见问题
工作中常用Scala1、判断数据类型,类型转换10.isInstanceOf[Int]10.asInstanceOf[Double]
2020-10-15 21:36:00
274
原创 面试题-SparkStreamming
SS011、对接kafka、offset管理2、调优3、exactly-once:保证数据植被处理一次ootb:开箱即用4、standalone:主从有主节点的,就得做高可用但是on yarn就不用5、ss里对接socket数据源,缓存策略是什么 socketTextStream类memory_and_disk_ser_26、...
2020-10-15 21:34:44
256
面试题——Hbase
Hbase011、hive哪些任务在执行时会触发mr的job?2、什么样的场景下hbase有百万列?有点扯的其实。一般都是一千列、十万列但是答要提到,动态列不用提前建好表结构3、基于谷歌的哪篇论文big table4、谓词下推:其实就是where条件5、请你说一下大数据组建的动物6、经典的版本 0.987、如果没有部署一个zk,hbase启动时会自己起一个zk来维护8、hbase和zk的关系关键:生产上一定要调 zookeeper.session.timeout海量写的时候,hba
2020-10-14 00:09:44
113
原创 面试题-Spark
Spark01Spark021、glom算子的作用把每个分区的元素都放到一个数组里面去scala> sc.parallelize(1 to 10, 4).glom().collect()res0: Array[Array[Int]] = Array(Array(1, 2), Array(3, 4, 5), Array(6, 7), Array(8, 9, 10))2、join 用RDD实现3、left.cogroup(right).collectjoin底层的实现是用的cogroup
2020-10-07 22:19:14
138
原创 面试题-SparkSQL
SparkSQL011、sparksql和sparkcore cache策略的区别绿在:InMemoryTableScansparksql cache 是eagle的,sparkcore是lazy的sparksql uncache是eagle的,sparkcore是eagle的语法 cache table tablenameuncache table tablenamespark.table("tablename").cache 是lazy的val df = spark.sql("sele
2020-10-07 22:05:12
1070
原创 面试题-Scala
scala011、数据类型Byte的数据范围:-128-127Char:单引号扩起来val c1:Char = ‘a’c1.toInt // 972、在scala中,如何退出循环**导入scala.util.control.Breaks.{break,breakable},breakable{处理逻辑break}scala021、函数和方法的区别2、默认值val name:String= _ nullval age:Int= _ 0val money:Double
2020-10-01 18:26:38
171
原创 Hive的四种连接模式
hive的元数据1、为什么需要开启hive的metastore service因为有像spark这样需要用到hive元数据的框架存在!所以就要给它们开放服务!2、metaStore:metaStore,默认存储在 derby 数据库中,但是derby数据库不能支持我们开启多个窗口,所以我们会将metaStore存放到MySql中;metaStore存储了hive的databases,tables,partition等信息.hiveQL所有的语句都会连接到MySql查询元数据信息!3、metaS
2020-06-27 00:43:16
945
原创 MySQL安装过程碰到的问题
前提:首先已在新通过新建的用户mysqladmin(可以是其他任意用户)成功部署mysql,并且能够正常登陆。一、切换到root或者hadoop等其他用户时,登陆报错:bash: mysql: command not found原因:因为我使用linux用户mysqladmin(自建用户)部署mysql时,只配置了局部环境变量文件 /.bashrc解决方案:配置全局环境变量 /etc/profile,在末尾加上以下内容export MYSQL_BASE=/usr/local/mysqlexpo
2020-06-20 02:01:23
285
原创 Hive02
Hive on Spark在生产上用的很少生产上时间日期都用string存的,到时用函数转换Hive加载数据在生产上常用1、load2、insert(注意不是values)Hive创建表1、定义表结构2、create table like(只拷贝表结构)3、create table as select 。。。。(会跑mr作业)记住desc formatted table_name面试必问内部表和外部表drop时,内部表的数据和元数据都被清空外部表,元数据信息被删除,数据依然存在
2020-05-31 15:12:32
102
原创 Hadoop系列三——HA
1、hdfs hann active 单点故障SPOFsnn checkpoint 1小时nn standby 实时备份 实时等待nn active节点挂,随时standby现在企业普遍还是用2个nn组成hdfs ha 高可靠data001 nn1(active) zkfc(zookeeperfailovercontrol) jn(日志节点) dn zkdata002 nn2(standby)zkfc(zookeeperfailovercontrol)jn dn zkd
2020-05-23 22:11:34
235
原创 Hadoop系列二
写在前面生产上,集群的机器,总内存的75%,25%留给系统、Linux机制、以及防止OOM-killer。oom-killer机制当LInux服务器某个进程使用内存超标,Linux机器为了保护自己,主动杀死你的进程,释放内存。tmp目录 30天机制2.1 container容器container容器是虚拟的概念,其实是一组memory+cpu vcore资源的组合。在内存够的情况下,适当增加cpu vcore带来计算效率的提示。运行在nm进程上的机器上。关于Yarn的调优,就是调conta
2020-05-17 20:13:36
130
原创 Hadoop之SencondaryNameNode(SNN)
一、SNN流程SNN最主要的工作就是做备份,默认是1小时备份一次,生产上一般无需做调整。二、hadoop命令早期 hadoop fs 和 hdfs dfs命令作用相同cd bincat hadoop or cat hdfshadoop fs -cat2、文件下载hadoop fs -get /1.log /2.log面试题:有两组上传下载下载:-get ==> copyToLocal上传:-put ==> copyFromLocalhadoop -du生产上用的最多
2020-05-12 23:51:44
561
原创 Mysql安装+基础知识
mysql \ MySQL的部署安装生产上一般需要调整的配置文件是innodb_buffer_pool_size=8G或12G创建用户和用户组,让用户各司其职重新部署标准的建数据库、建用户一个应用建一个库,专门的用户%代表任意客户端、任意机器去访问mysql服务器database schema namespace是一个意思,可以认为都是一个文件夹table 可以认为是一个exce...
2020-04-27 23:05:33
112
原创 VMware fusion 10 安装 vmware tools
VMware fusion 10 安装 vmware toolsvmare fusion–虚拟机–重新安装vmware tools;在downloads中,将压缩包解压到桌面;终端cd到vmware-tools-distrib;sudo chmod u+x vmware-install.pl 使其可执行;sudo ./vmware-install.pl -d;如果安装失败,要删除已安...
2019-10-20 00:36:07
468
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人