Spark2.1.0——SparkContext概述

Spark应用程序的提交离不开Spark Driver,后者是驱动应用程序在Spark集群上执行的原动力。了解Spark Driver的初始化,有助于读者理解Spark应用程序与Spark Driver的关系。 Spark Driver的初始化始终围绕着SparkContext的初始化。Spar...

2018-11-12 10:07:23

阅读数 1351

评论数 0

浅谈——程序员的自我革命

        在程序员这条道路上走过了十一年,即将迎来第十二个年头。之后是否是一个新的轮回?十一年前,从高校毕业后去哪里是当时首要考虑的问题。早在大二第二学期时就没有了要考研的打算,经常翘课回到宿舍鼓捣各种计算机软件,还记得当时最感兴趣的就是3DsMax和Flash了。这两款软件在那时风靡全球,...

2018-10-29 10:17:42

阅读数 5382

评论数 34

Spark2.1.0之模型设计与基本架构

Spark编程模型      正如Hadoop在介绍MapReduce编程模型时选择word count的例子,并且使用图形来说明一样,笔者对于Spark编程模型也选择用图形展现。      Spark 应用程序从编写到提交、执行、输出的整个过程如图2-5所示。图2-5   代码执行过程图2-5中...

2018-06-12 09:41:32

阅读数 1571

评论数 6

Spark2.1.0之模块设计

在阅读本文之前,读者最好已经阅读了《Spark2.1.0之初识Spark》和《Spark2.1.0之基础知识》两篇文章。本文将主要介绍Spark2.1.0版本中的模块设计以及各个模块的功能和特点。整个Spark主要由以下模块组成:Spark Core:Spark的核心功能实现,包括:基础设施、Sp...

2018-06-05 10:00:02

阅读数 1223

评论数 2

Spark2.1.0之初识Spark

        随着近十年互联网的迅猛发展,越来越多的人融入了互联网——利用搜索引擎查询词条或问题;社交圈子从现实搬到了Facebook、Twitter、微信等社交平台上;女孩子们现在少了逛街,多了在各大电商平台上的购买;喜欢棋牌的人能够在对战平台上找到世界各地的玩家对弈。在国内随着网民数量的持续...

2018-04-09 09:48:51

阅读数 4074

评论数 12

附录E Hadoop的word count例子

注:本文是为了配合《Spark内核设计的艺术——架构设计与实现》一书的内容而编写,目的是为了节省成本、方便读者查阅。书中附录E的内容都在本文呈现。 这里主要演示Hadoop1.0版本中的word count例子,用于和Spark中的实现对比。package org.apache.hadoop.e...

2018-03-04 16:54:09

阅读数 463

评论数 0

记Hadoop2.5.0线上mapreduce任务执行map任务划分的一次问题解决

近日在线上发现有些mapreduce作业的执行时间很长,我们需要解决这个问题。输入文件的大小是5G,采用了lzo压缩,整个集群的默认block大小是128M。本文将详细描述这次线上问题的排查过程。

2016-07-14 13:31:59

阅读数 12700

评论数 2

Hadoop旧mapreduce的map任务切分原理

最近在工作过程中接触一些Hive数据仓库中的表,这些表实际是从关系型数据库通过Sqoop抽到Hive的。在开发过程中对map任务的划分进行性能调优,发现mapreduce中关于FileInputFormat的参数调整都不起作用,最后发现这些老任务都是用旧版的mapreduce开发的,于是顺便研究下...

2016-06-16 09:47:35

阅读数 9812

评论数 4

Hadoop2.6.0运行mapreduce之推断(speculative)执行(下)

前言在《Hadoop2.6.0运行mapreduce之推断(speculative)执行(上)》一文中对推断执行技术的背景进行了介绍,并且在Hadoop集群上做了一些测试以验证mapreduce框架的推断执行。最后还从源码分析的角度解读了DefaultSpeculator的初始化和启动过程,其中涉...

2016-05-19 10:00:07

阅读数 10287

评论数 0

Hadoop2.6.0运行mapreduce之推断(speculative)执行(上)

前言当一个应用向YARN集群提交作业后,此作业的多个任务由于负载不均衡、资源分布不均等原因都会导致各个任务运行完成的时间不一致,甚至会出现一个任务明显慢于同一作业的其它任务的情况。如果对这种情况不加优化,最慢的任务最终会拖慢整个作业的整体执行进度。好在mapreduce框架提供了任务推断执行机制,...

2016-05-12 14:39:44

阅读数 21853

评论数 0

Hadoop2.6.0运行mapreduce之Uber模式验证

在有些情况下,运行于Hadoop集群上的一些mapreduce作业本身的数据量并不是很大,如果此时的任务分片很多,那么为每个map任务或者reduce任务频繁创建Container,势必会增加Hadoop集群的资源消耗,并且因为创建分配Container本身的开销,还会增加这些任务的运行时延。如果...

2016-05-05 14:55:38

阅读数 24133

评论数 2

Hadoop2.6.0中YARN底层状态机实现分析

Hadoop2.x.x版本的底层实现中作了很多优化:用状态机对各种对象生命周期和状态转移进行管理;采用事件机制避免线程同步与阻塞;采用Protocol Buffers优化RPC性能;采用Apache Avro优化日志等。本文主要针对YARN中状态机的实现进行分析,在这个过程中,会捎带一些事件的内容。

2016-04-29 08:30:19

阅读数 23565

评论数 0

Hadoop2.6.0的事件分类与实现

说实在的,在阅读Hadoop YARN的源码之前,我对于java枚举的使用相形见绌。YARN中实现的事件在可读性、可维护性、可扩展性方面的工作都值得借鉴。

2016-04-26 10:45:05

阅读数 12790

评论数 2

Hadoop2.6.0配置参数查看小工具

使用Hadoop进行离线分析或者数据挖掘的工程师,经常会需要对Hadoop集群或者mapreduce作业进行性能调优。性能调优的前提是需要能准确知道目前针对Hadoop集群或者mapreduce作业配置的参数。本文将针对这一需求,基于Hadoop开发一个简单实用的工具查询查看各种参数。

2016-04-21 15:31:50

阅读数 16944

评论数 0

Hadoop2.6.0子项目hadoop-mapreduce-examples的简单介绍

学习Hadoop的同学们,一定知道如果运行Hadoop自带的各种例子。hadoop-mapreduce-examples项目中还提供了这些例子,本文就其中例子的执行方式进行分析。看看它能否让我们学习mapreduce编程变得更加容易。

2016-04-18 11:41:44

阅读数 15567

评论数 0

Hadoop2.6.0的FileInputFormat的任务切分原理分析(即如何控制FileInputFormat的map任务数量)

前言 首先确保已经搭建好Hadoop集群环境,可以参考《Linux下Hadoop集群环境的搭建》一文的内容。我在测试mapreduce任务时,发现相比于使用Job.setNumReduceTasks(int)控制reduce任务数量而言,控制map任务数量一直是一个困扰我的问题。好在经过很多摸索...

2016-04-12 13:42:17

阅读数 15566

评论数 0

Linux下Hadoop2.6.0集群环境的搭建

本文旨在提供最基本的,可以用于在生产环境进行Hadoop、HDFS、Hbase分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用。

2016-04-11 11:50:43

阅读数 19574

评论数 18

提示
确定要删除当前文章?
取消 删除