美文网首页
暑期实习-百度.md

暑期实习-百度.md

作者: 少年去流浪 | 来源:发表于2018-08-19 22:27 被阅读0次

    2018年04月14日

    ---

    # 技术一面(60分钟)

    > 基本全程在问项目(实验室项目、实习项目),根据项目中的知识点纵向展开追问,最后问了些有关线程和集合框架的内容

    * 自我介绍

    * 久其实习项目

     * 业务背景,自己所完成的功能,为什么要这么做?

     * 为什么使用HBase替换Oracle?

     HBase的表结构的设计

     rowkey是如何设计的?

     * 如何使用Kettle实现数据的ETL工作?

      数据格式之间是如何进行转换的?

      在Kettle的面板组件上通过js脚本实现数据的清洗、维度的统一、最后文本文件的导出

     * 如何使用MR将数据导入HBase?

     说一下具体的实现(简单的映射)

     * 感觉MongoDB也可以实现你的需求,为啥用HBase呢?

     * 这个数据的规模有多大呢?(几百G吧)

     * 这个MR批量数据导入的速度大概是多少呢?(几万条的话10分钟吧),离线的还是实时增量呢?

     * 导数据在运行的时候如何保证数据一致呢?

     * 为什么选取Phoenix作为中间引擎

     怎么对Oracle语句进行解析?

     说一下简单工厂的思想,画一下UML,是不是可以用语法解析树实现呢?

     怎样对可解析SQL语句的种类进行扩充?增加产品类

     * 是怎样保证数据的事务的?

     存在并发读写的情况怎么解决?

     一条记录的不同字段进行分次更新时可能遇到覆盖,怎么解决?(一次push一条记录,不存在这样的问题)

     * 对于数据倾斜是怎么解决的?

     说一下Phoenix的数据加盐的底层实现原理

     数据加盐有什么样的好处呢?

     * 二级索引有没有用到?

     如何构建的二级索引表呢?

     Phoenix的两种二级索引表有什么区别呢,优劣?

     二级索引的底层实现原理是什么?

     * 搭建的web平台的功能是什么?

     * 在久其都干了什么?简单介绍下日常工作

    * 实验室项目

     * 介绍下项目背景,技术实现

     你在项目小组中是什么角色呢?

     * 影响最大化的算法的实现原理

     * 简单画一下项目的架构设计

     算法(graphx) -> jar -> hdfs

     jobserver承担着什么角色,如何对job进行调度?

     * 情感分析使用的什么分词工具

     怎么通过java调用python

     * 数据是怎获取的?

    * 基础知识

     * 如果实现多线程呢?

     常用线程池

     不同线程之间的变量共享,theadlocal

    # 技术二面(60分钟)

    * 基础知识

     * JVM内存模型

     每个分区的作用

     哪些分区时共享的,哪些分区时私有的?

     垃圾回收算法(常见描述,对比优劣)

     判断一个对象是否可回收(判断引用类型)

     * 虚拟内存

     * JDK, JRE, JIT

     * 集合框架

     HashMap内部实现,存储于读取的内部流程

     ArrayList, LinkedList的内部实现原理与区别

     HashMap与HashTable之间的差异

     HashSet实现原理

     * 如何实现多线程

     创建线程

     线程共享变量

     线程安全

     线程池

     * 线程与进行的区别

     * TCP, UDP区别

     * TCP三次握手

     * 设计模式知道哪些?

     * 二叉树的前中后序遍历的区别

     * 数据库索引,B树介绍原理

     * 编译型语言和解释型语言的区别

     * HDFS的原理

     * 对数据仓库的理解

     * 目前有再看哪方面的技术书籍

     * 有什么想完善的技术栈

    * 算法

     * 求二叉树的最短叶子节点的深度(手写)

     * 用栈模拟实现队列(说思路)

    # 技术三面(40分钟)

    * 线程池了解吗?

     线程池的分类

     有哪些常用的线程池

     如何构造一个自己的线程池

     当任务数量多于线程池中的线程数量时,应该怎么办?(消息队列)

    * shell脚本说一下实现思路

     如果有任务执行失败了应该怎么办,在运行的时候而不是通过日志进行判断

    * Hbase数据更新的原理,timestamp

    * 在久其的主要工作,承担一个什么样的角色

    * 实验室的项目中承担着什么样的角色

    * 对百度有什么看法?

    * 有什么想问他的?

    相关文章

      网友评论

          本文标题:暑期实习-百度.md

          本文链接:https://www.haomeiwen.com/subject/oauhiftx.html