Java太卷?想转大数据?(内附有百度大数据实习面经)
前言
- Java太卷?想转大数据?该学什么?
- 大数据工作内容?SQL boys?
- 本文内容来自交流群里的小伙伴投稿
数仓架构图
需要掌握的技能
Java部分:
- Java基础核心、集合框架、多线程并发、JVM、设计模式等。
Hadoop生态体系:
- HDFS:大数据领域文件存储系统。
- MapReduce:Hadoop体系里的数据计算模型。
- HadoopHA:配置高可用的Hadoop集群。
- Hive(HiveQL):提供类SQL的方式处理数据。
- Kafka:大数据领域顶级的分布式消息队里。
- Flume:日志采集传输框架,常用语电商数仓系统
Spark生态体系:
- 开发语言:Java、Scala(Spark底层开发语言)、Python。
- Spark Core:Spark的核心弹性分布式数据集RDD。
- Spark SQL:封装RDD,提供类似表结构的DataFrame数据结构,便于操作数据。
- Spark Streaming:Spark提供的实时数据处理框架。
- Kafka:大数据领域顶级的分布式消息队里。
- ElasticSearch:全文检索引擎。
其他:
- 数据仓库方面相关知识、主流的OLAP系统、优秀的实时流处理框架Flink、调度工具等。
QA
Q:Java太卷?该转大数据嘛?
- A:大数据相比Java竞争确实小点,要转的话,建议越早越好。
Q:上面列出的东西,都得学会了才能去找实习吗?
- A:当然不是,学会Java + Hadoop or Spark即可,实习注重基础。
Q:大数据工作内容?
- A:实习大多都是SQL boys,正式入职会接触到写公司自研的大数据引擎。
百度大数据实习面经
一面
- 自我介绍(学校、专业、目前学习情况,技术栈)。
- java是编译型语言还是解释性语言。
- 介绍一下HashMap,ConcurrentHashMap。
- 多线程原理。
- mysql里 innodb和myisam的区别。
- 为什么使用b+树做索引。
- 一条sql语句的执行流程。
- Linux经常使用哪些命令。
- Linux系统内核了解吗。
- Linux里的alias命令。
- 介绍一下简历里的数仓项目吧(电商数仓)。
- Hadoop里的MapReduce流程。
- WordCount怎么写。
- 算法:两个栈实现一个队列
- sql题:
- 两列:身份证号,性别
- 统计一下男性和女性的人数。
二面(leader)
- 介绍一个简历里的项目。
- HadoopHA如何实现。
- MR流程。
- HDFS小文件过多怎么处理。
- 数据倾斜怎么处理。
- HDFS的常见的配置文件。
- Kafka介绍一下。
- Kafka数据完整性如何保证
- Kafka消费者组概念
- 数据库三范式,数据仓库的建模方式
- 数仓分层,每层的作用。
- 反问:部门的业务,技术栈。
工作内容
- 根据业务部门的提供的各种报表需求,写sql。