Spark面试相关】的更多相关文章

Spark Core面试篇01 随着Spark技术在企业中应用越来越广泛,Spark成为大数据开发必须掌握的技能.前期分享了很多关于Spark的学习视频和文章,为了进一步巩固和掌握Spark,在原有spark专刊基础上,新增<Spark面试2000题>专刊,题集包含基础概念.原理.编码开发.性能调优.运维.源代码以及Spark周边生态系统等.部分题集来源于互联网,由梅峰谷志愿者收集和整理,部分题集由梅峰谷志愿者结合生产实际碰到的问题设计出来,希望能给大家带来帮助. 一.简答题 1.Spark…
spark面试问题 1.spark中的RDD是什么,有哪些特性 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变.可分区.里面的元素可并行计算的集合. Dataset:就是一个集合,用于存放数据的 Distributed:分布式,可以并行在集群计算 Resilient:表示弹性的 RDD的弹性体现在哪里? 1.自动的进行内存和磁盘数据存储的切换: 2.基于lineage的高效容错 3.task如果失败会特定…
http://www.cnblogs.com/selene/p/5829605.html 面试相关:http://www.cnblogs.com/anrainie/p/5640208.html linux 定时  vim /etc/crontab…
面试相关的问题(下) 四 Linux高级_ 1.Linux机器 变慢,怎么查看? (1)整机的性能 主要查看的是CPU和内存 先查看整机的top,使用命令 top 虚拟机 使用1可以查看哪个核被占用过高 查看id(上图中43.9id) 也就是空闲率 越大越好,证明不是CPU引起的 COMMAND : 进程名称 PID 为对用的ID load average 系统负载率 上图中可见有三个值,3个数加起来/3 在乘以 100%,结果在>=60% 的话,说明系统负载很高 uptime,系统命令的精简版…
Spark on Yarn面试篇04 1.MRV1有哪些不足? 1)可扩展性(对于变化的应付能力) a) JobTracker内存中保存用户作业的信息 b) JobTracker使用的是粗粒度的锁 2)可靠性和可用性 a) JobTracker失效会多事集群中所有的运行作业,用户需手动重新提交和恢复工作流 3)对不同编程模型的支持 HadoopV1以MapReduce为中心的设计虽然能支持广泛的用例,但是并不适合所有大型计算,如storm,spark 2.描述Yarn执行一个任务的过程? 1)客…
Spark core面试篇02 1.cache后面能不能接其他算子,它是不是action操作? 答:cache可以接其他算子,但是接了算子之后,起不到缓存应有的效果,因为会重新触发cache. cache不是action操作 2.reduceByKey是不是action? 答:不是,很多人都会以为是action,reduce rdd是action 3.数据本地性是在哪个环节确定的? 具体的task运行在那他机器上,dag划分stage的时候确定的 4.RDD的弹性表现在哪几点? 1)自动的进行内…
Spark Core面试篇01 一.简答题 1.Spark master使用zookeeper进行HA的,有哪些元数据保存在Zookeeper? 答:spark通过这个参数spark.deploy.zookeeper.dir指定master元数据在zookeeper中保存的位置,包括Worker,Driver和Application以及Executors.standby节点要从zk中,获得元数据信息,恢复集群运行状态,才能对外继续提供服务,作业提交资源申请等,在恢复前是不能接受请求的.另外,Ma…
转载yl,yzl大神的面经,顺便自己复习一下专业课的内容 操作系统相关: 什么是进程, 什么是线程.它们之间的区别和联系. 进程管理内存资源+运行过程, 线程只管理运行过程, 线程要在进程提供的资源基础上运行. 设计模式相关: 单例模式及其应用 这个网上随便找一篇介绍单例模式的文章都有详细地介绍.我就从基本的单例模式到线程安全的单例模式, 用智能指针管理的单例等大概说了说.关于应用, 我就举了 <Effective C++>中的一个例子.定义在两个文件下的全局变量A, B,然后A 需要用 B…
Hive默认使用的计算框架是MapReduce,在我们使用Hive的时候通过写SQL语句,Hive会自动将SQL语句转化成MapReduce作业去执行,但是MapReduce的执行速度远差与Spark.通过搭建一个Hive On Spark可以修改Hive底层的计算引擎,将MapReduce替换成Spark,从而大幅度提升计算速度.接下来就如何搭建Hive On Spark展开描述. 注:本人使用的是CDH5.9.1,使用的Spark版本是1.6.0,使用的集群配置为4个节点,每台内存32+G,…
http://blog.csdn.net/pipisorry/article/details/52916307 路径错误 spark FileNotFoundError: [Errno 2] No such file or directory: '~/ENV/spark/./bin/spark-submit' 居然是因为这个引发的错误:SPARK_HOME = ~/ENV/spark应该改成SPARK_HOME = /home/pipi/ENV/spark 之前就不会有这个错误,不知道为啥? s…
Spark core面试篇03 1.Spark使用parquet文件存储格式能带来哪些好处? 1) 如果说HDFS 是大数据时代分布式文件系统首选标准,那么parquet则是整个大数据时代文件存储格式实时首选标准 2) 速度更快:从使用spark sql操作普通文件CSV和parquet文件速度对比上看,绝大多数情况 会比使用csv等普通文件速度提升10倍左右,在一些普通文件系统无法在spark上成功运行的情况 下,使用parquet很多时候可以成功运行 3) parquet的压缩技术非常稳定出…
2017 最新java面试题(技术面试) http://www.importnew.com/17232.html importNew-JAVA面试上篇 importNew-JAVA面试下篇 https://www.cnblogs.com/pureEve/p/6546280.html java面试题网bbs 面向对象编程(OOP) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可靠性和灵活性.…
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化. 由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便于更新内容 schedule调度相关 调度相关的参数设置,大多数内容都很直白,其实无须过多的额外解释,不过基于这些参数的常用性(大概会是你针对自己的…
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化. 由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便于更新内容 压缩和序列化相关 spark.serializer 默认为org.apache.spark.serializer.JavaSeriali…
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 在Spark的官方文档http://spark.apache.org/docs/latest/configuration.html 中提供了这些可配置参数中相当大一部分的说明. 但是文档的更新总是落后于代码的开发的, 还有一些配置参数没有来得及被添加到这个文档中, 最重要的是在这个文档中,对于许多的参数也只能简单的介绍它所代表的内容的字面含义, 如果没有一定的实践基础或者对其背后原理的理解, 往往无法真正理解该如何针对…
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化. 由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便于更新内容 Storage相关配置参数 spark.local.dir 这个看起来很简单,就是Spark用于写中间数据,如RDD Cache,Shu…
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 随着Spark的逐渐成熟完好, 越来越多的可配置參数被加入到Spark中来, 在Spark的官方文档http://spark.apache.org/docs/latest/configuration.html 中提供了这些可配置參数中相当大一部分的说明. 可是文档的更新总是落后于代码的开发的, 另一些配置參数没有来得及被加入到这…
面试要准备什么 有一位小伙伴面试阿里被拒后,面试官给出了这样的评价:“……计算机基础,以及编程基础能力上都有所欠缺……”.但这种笼统的回答并非是我们希望的答案,所谓的基础到底指的是什么? 作为一名 iOS 开发者,我所理解的基础是 操作系统.网络和算法这三大块,不同的开发方向可能有不同的侧重,但基础总的来说就是这些.我不推荐通过去网上看教程来学习这些基础知识,因为能用短短几篇文章讲明白的事情不叫基础,至少我没见过写得这么深入浅出的文章. 不知道有多少读者和我一样有过这样的困扰:“我知道某些东西很…
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 随着Spark的逐渐成熟完好, 越来越多的可配置參数被加入到Spark中来, 本文试图通过阐述这当中部分參数的工作原理和配置思路, 和大家一起探讨一下怎样依据实际场合对Spark进行配置优化. 因为篇幅较长.所以在这里分篇组织,假设要看最新完整的网页版内容.能够戳这里:http://spark-config.readthedoc…
文章目录 准备知识 DAG 概述 shuffle 概述 SortShuffleManager 普通机制 bypass机制 Spark任务调度 流程 准备知识 要弄清楚Spark的任务调度流程,就必须要清楚RDD.Lineage.DAG和shuffle的相关知识,关于RDD和Lineage,我的这两天文章已经有过相关介绍,感兴趣可以去看一看 [Spark]RDD(Resilient Distributed Dataset)究竟是什么? [Spark]RDD的依赖关系和缓存相关知识点接下来说一下DA…
1.Shuffle Write 和Shuffle Read具体发生在哪里 2.哪里用到了Partitioner 3.何为mapSideCombine 4.何时进行排序 之前已经看过spark shuffle源码了,现在总结一下一些之前没有理解的小知识点,作为一个总结. 用户自定义的Partitioner存到了哪里? 假设用户在调用reduceByKey时,传递了一个自定义的Partitioner,那么,这个Partitioner会被保存到ShuffleRDD的ShuffleDependency中…
作业(Job):RDD 中由行动操作所生成的一个或多个调度阶段 调度阶段(Stage):每个作业会因为 RDD 间的依赖关系拆分成多组任务集合,称为调度阶段,也叫做任务集(TaskSet).高度阶段的划分是由 DAGScheduler 来划分的,高度阶段有 Shuffle Map Stage 和 Result Stage 两种 任务(Task):分发到 Executor 上的工作任务,是 Spark 实际执行应用的最小单元 DAGScheduler:面向调度阶段的任务调度器,负责接收 Spark…
1.spark 数据透视图: pivot(pivot_col, values=None) Pivots a column of the current [[DataFrame]] and perform the specified aggregation. There are two versions of pivot function: one that requires the caller to specify the list of distinct values to pivot on…
num-executors参数说明:该参数用于设置Spark作业总共要用多少个Executor进程来执行.Driver在向YARN集群管理器申请资源时,YARN集群管理器会尽可能按照你的设置来在集群的各个工作节点上,启动相应数量的Executor进程.这个参数非常之重要,如果不设置的话,默认只会给你启动少量的Executor进程,此时你的Spark作业的运行速度是非常慢的.参数调优建议:每个Spark作业的运行一般设置50~100个左右的Executor进程比较合适,设置太少或太多的Execut…
刚刚开通博客,因为最近在进行各种面试,遇到各种面试问题,用这个机会整理几篇文章方便日后需要 springmvc 和springboot spring boot只是一个配置工具,整合工具,辅助工具. springmvc是框架,项目中实际运行的代码 Spring 框架就像一个家族,有众多衍生产品例如 boot.security.jpa等等.但他们的基础都是Spring 的ioc和 aop. ioc 提供了依赖注入的容器, aop解决了面向横切面的编程,然后在此两者的基础上实现了其他延伸产品的高级功能…
0.介绍: (1)Spark SQL的前身是Shark,即Hive on Spark, 1.SparkSQL特点: (1)支持多种数据源:Hive,RDD,Parquet,JSON,JDBC等. (2)多种性能优化技术:in-memory columnar storage,byte-code generation,cost model动态评估等 (3)组件扩展:对于SQL的语法解析器.分析器以及优化器,用户都可以自己重新开发,并且动态扩展.SparkSQL的性能对比Shark来说,又有了数倍的提…
1.HTTP Keep-Alive的作用 作用:Keep-Alive:使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接.Web服务器,基本上都支持HTTP Keep-Alive. 缺点:对于提供静态内容的网站来说,这个功能通常很有用.但是,对于负担较重的网站来说,虽然为客户保留打开的连 接有一定的好处,但它同样影响了性能,因为在处理暂停期间,本来可以释放的资源仍旧被占用.当Web服务器和应用服务器在同一台机器上运行时,Keep- A…
1.Redis最为常用的数据类型主要有以下几种 String Hash List (消息队列) Set (可以用于存储不重复的列表数据) Sorted Set (有序不重复数的列表数据) Pub/Sub (发布和订阅,用作实时消息系统,比如普通的及时聊天,群聊等) Transactions 2.使用redis有哪些好处: 速度快 支持丰富的数据类型 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除 支持事务,操作都是原子性. 3.redis相比memcached有哪些优势?…
C++相关 C++ part1 C++ part2 C++ part3 C++ part4 C++ part5 C++ part6 C++ part6.5 C++ part7 C++ part8 C++ part9 计算机网络 计算机网络 part1 TCP 计算机网络 part2 计算机网络 part3 HTTP&HTTPS 计算机网络 其他1 操作系统 操作系统 part1 操作系统 part2 操作系统 part3 操作系统 part4 操作系统 part5 手撕 手撕 part1 混合…
1. int和Integer有什么区别? 答:Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换.- 原始类型: boolean,char,byte,short,int,long,float,double- 包装类型:Boolean,Char…