BAT大数据的口试题 快保藏!
副问题[/!--empirenews.page--]
9月15日技能沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖切磋精准运维!
![]() 1、kafka的message包罗哪些信息 一个Kafka的Message由一个牢靠长度的header和一个变长的动静体body构成 header部门由一个字节的magic(文件名目)和四个字节的CRC32(用于判定body动静体是否正常)组成。 当magic的值为1的时辰,会在magic和crc32之间多一个字节的数据:attributes(生涯一些相干属性, 好比是否压缩、压缩名目等等);假如magic的值为0,那么不存在attributes属性 body是由N个字节组成的一个动静体,包括了详细的key/value动静 2、怎么查察kafka的offset 0.9版本以上,可以用最新的Consumer client 客户端,有consumer.seekToEnd() / consumer.position() 可以用于获适当前最新的offset: 3、hadoop的shuffle进程 一、Map端的shuffle Map端会处理赏罚输入数据并发生中间功效,这此中间功效会写到当地磁盘,而不是HDFS。每个Map的输出会先写到内存缓冲区中,当写入的数据到达设定的阈值时,体系将会启动一个线程将缓冲区的数据写到磁盘,这个进程叫做spill。 在spill写入之前,会先举办二次排序,起首按照数据所属的partition举办排序,然后每个partition中的数据再按key来排序。partition的目是将记录分别到差异的Reducer上去,以祈望可以或许到达负载平衡,往后的Reducer就会按照partition来读取本身对应的数据。接着运行combiner(假如配置了的话),combiner的本质也是一个Reducer,其目标是对将要写入到磁盘上的文件先举办一次处理赏罚,这样,写入到磁盘的数据量就会镌汰。最后将数据写到当地磁盘发生spill文件(spill文件生涯在{mapred.local.dir}指定的目次中,Map使命竣事后就会被删除)。 最后,每个Map使命也许发生多个spill文件,在每个Map使命完成前,会通过多路合并算法将这些spill文件合并成一个文件。至此,Map的shuffle进程就竣事了。 二、Reduce端的shuffle Reduce端的shuffle首要包罗三个阶段,copy、sort(merge)和reduce。 起主要将Map端发生的输出文件拷贝到Reduce端,但每个Reducer怎样知道本身应该处理赏罚哪些数据呢?由于Map端举办partition的时辰,现实上就相等于指定了每个Reducer要处理赏罚的数据(partition就对应了Reducer),以是Reducer在拷贝数据的时辰只需拷贝与本身对应的partition中的数据即可。每个Reducer会处理赏罚一个可能多个partition,但必要先将本身对应的partition中的数据从每个Map的输出功效中拷贝过来。 接下来就是sort阶段,也成为merge阶段,由于这个阶段的首要事变是执行了合并排序。从Map端拷贝到Reduce端的数据都是有序的,以是很得当合并排序。最终在Reduce端天生一个较大的文件作为Reduce的输入。 最后就是Reduce进程了,在这个进程中发生了最终的输出功效,并将其写到HDFS上。 4、spark集群运算的模式 Spark 有许多种模式,最简朴就是单机当地模式,尚有单机伪漫衍式模式,伟大的则运行在集群中,今朝能很好的运行在 Yarn和 Mesos 中,虽然 Spark 尚有自带的 Standalone 模式,对付大大都环境 Standalone 模式就足够了,假如企业已经有 Yarn 可能 Mesos 情形,也是很利便陈设的。
5、HDFS读写数据的进程 读:
写:
6、RDD中reduceBykey与groupByKey哪本机能好,为什么
通过以上比拟可以发此刻举办大量数据的reduce操纵时辰提议行使reduceByKey。不只可以进步速率,照旧可以防备行使groupByKey造成的内存溢出题目。 7、spark2.0的相识
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |