自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

potter

少时诵诗书所所

  • 博客(69)
  • 收藏
  • 关注

原创 JVM

1、简单说说JVM的架构运行时区域方法区和堆由所有线程共享,其他区域都是线程私有。Java中的内存分配:Java程序在运行时,需要在内存中的分配空间。为了提高运算效率,就对数据进行了不同空间的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。具体划分为如下5个内存空间:(非常重要)堆:存放所有new出来的东西栈:存放局部变量方法区:被虚拟机加载的类信息、常量、静态常量等。程序计数器(和系统...

2018-04-27 22:37:43 425

原创 Yarn学习(一)YARN的资源调度

正文YARN1、YARN概述(Yet Another Resource Negotiator)YARN是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。Yarn是Hadoop2.x版本中的一个新特性。它的出现其实是为了解决第一代MapReduce编程框架的不足,提高集群环境下的资源利用率,这些资...

2018-04-27 08:38:40 4465

转载 Spark学习(十一)Apache SparkCore 内存管理详解

https://www.ibm.com/developerworks/cn/analytics/library/ba-cn-apache-spark-memory-management/index.html概述Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优。本文...

2018-04-26 21:55:02 242

转载 Spark学习(十)SparkCore的调优之shuffle调优

Spark性能优化指南——基础篇Spark性能优化指南——高级篇1、调优概述大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优。但是也必须提醒大家的是,影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个S...

2018-04-26 21:35:44 231

原创 MapReduce学习(一)MapReaduce的核心运行机制

概述一个完整的MapReaduce程序在分布式运行时有两类实例进程:1、MRAppMaster:负责整个程序的过程调度及状态协调。2、YarnChild:负责map阶段的整个数据处理流程。3、YarnChild:负责reduce阶段的整个数据处理流程,以上两个节点MapTask和ReduceTask的进程都是YarnChild,并不是说这MapTask和ReduceTask就跑在同一个YarnCh...

2018-04-26 20:19:39 1268

原创 Python实现小算法

打印九九乘法表(Python):#!/usr/bin/python3# -*- coding: utf-8 -*-for i in range(1,10): for j in range(1,i+1): print "%d * %d = %2d,"%(i,j,j*i), print ""运行结果:1 * 1 = 1, 2 * 1 = 2, 2 * 2 = ...

2018-04-25 22:34:07 369

转载 Spark学习(九)SparkCore的调优之数据倾斜调优

Spark性能优化指南——高级篇Spark性能优化指南——基础篇数据倾斜调优调优概述有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。数据倾斜发生时的现象绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个ta...

2018-04-25 20:38:10 268

原创 MapReduce学习(八)wordcount实现单词计数

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable...

2018-04-25 16:00:17 326

原创 Spark学习(八)Spark的运行流程

1、Spark中的基本概念名词解释:Application指的是我们开发的spark应用程序。我们开发好代码以后去提交任务这就是一个applicationDeploymodeClient:在哪儿提交代码哪台服务器就是Driver cluster:会把Dirver发送到集群的不同机器上。Executor我们的任务是需要运行在Executor里面的Job我们提交的一个application里面可以有多...

2018-04-25 15:12:19 253

转载 Spark学习(七)SparkCore的调优之开发调优

取自:Spark性能优化指南——基础篇Spark性能优化指南——高级篇前言在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛。在美团•大众点评,已经有很多同学在各种项目中尝试使用Spark。大多数同学(包括笔者在内),最初开始尝试使...

2018-04-25 13:03:25 223

原创 Spark学习(六)高可用集群配置HistoryServer

为了方便管理日志,记录Spark程序运行结果,需要进行historyServer配置1、常规单节点配置第一步: cp spark-defaults.conf.template spark-defaults.conf 在文件里面添加如下内容: spark.eventLog.enabled true spark.eventLog.dir ...

2018-04-25 13:00:55 663

原创 settings.xml maven配置文件(IDEA)

<?xml version="1.0" encoding="UTF-8"?><!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work...

2018-04-24 22:01:31 658

原创 Spark学习(五)内置Transformations函数合集

用Scala编写:import org.apache.spark.rdd.RDDimport org.apache.spark.{HashPartitioner, Partitioner, SparkConf, SparkContext}object TransformationOperator { /** * map算子 * 遍历rdd中的每一个元素,可以对元素进行操...

2018-04-24 19:12:56 261

原创 Hadoop视频大汇总

一 慕课网1.Hadoop大数据平台架构与实践--基础篇链接:https://www.imooc.com/learn/3912.Hadoop进阶链接:https://www.imooc.com/learn/890二 极客学院1.Hadoop 概述链接:http://www.jikexueyuan.com/course/677.html2.Hadoop 架构介绍链接:http://www.jikex...

2018-04-23 12:52:15 2285

原创 Spark学习(四)Spark的广播变量和累加器

1、概述在spark程序中,当一个传递给Spark操作(例如map和reduce)的函数在远程节点上面运行时,Spark操作实际上操作的是这个函数所用变量的一个独立副本。这些变量会被复制到每台机器上,并且这些变量在远程机器上的所有更新都不会传递回驱动程序。通常跨任务的读写变量是低效的,但是,Spark还是为两种常见的使用模式提供了两种有限的共享变量:广播变(broadcast variable)和...

2018-04-22 20:28:34 655

原创 Spark学习(三)SparkRDD及Stage的划分

1、RDD的概述1.1、什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD具有数据流模型的特点:自动容错、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,这极大地提升了查询速度。1.2、RDD的...

2018-04-22 19:06:57 3819 1

原创 Scala学习(十)Scala的Actor

一、Scala中的并发编程(1)Java中的并发编程①Java中的并发编程基本上满足了事件之间相互独立,但是事件能够同时发生的场景的需要。 ②Java中的并发编程是基于共享数据和加锁的一种机制,即会有一个共享的数据,然后有若干个线程去访问这个共享的数据(主要是对这个共享的数据进行修改),同时Java利用加锁的机制(即synchronized)来确保同一时间只有一个线程对我们的共享数据进行访问,进而...

2018-04-21 22:13:52 202

原创 Scala学习(九)Scala的泛型、上界、下届

一、泛型(1)泛型的介绍泛型用于指定方法或类可以接受任意类型参数,参数在实际使用时才被确定,泛型可以有效地增强程序的适用性,使用泛型可以使得类或方法具有更强的通用性。泛型的典型应用场景是集合及集合中的方法参数,可以说同java一样,scala中泛型无处不在,具体可以查看scala的api。 (2)泛型类、泛型方法泛型类:指定类可以接受任意类型参数。 泛型方法:指定方法可以接受任意类型参数。(3)示...

2018-04-21 22:01:07 7692 1

原创 Scala学习(八)Scala的隐式转换和隐式参数

一、概念Scala 2.10引入了一种叫做隐式类的新特性。隐式类指的是用implicit关键字修饰的类。在对应的作用域内,带有这个关键字的类的主构造函数可用于隐式转换。隐式转换和隐式参数是Scala中两个非常强大的功能,利用隐式转换和隐式参数,你可以提供优雅的类库,对类库的使用者隐匿掉那些枯燥乏味的细节。二、作用隐式的对类的方法进行增强,丰富现有类库的功能三、隐式参数1)关键字:implicat2...

2018-04-21 21:05:34 366 1

原创 Scala学习(七)Scala的柯里化及其应用

一、概念柯里化(currying, 以逻辑学家Haskell Brooks Curry的名字命名)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第二个参数作为参数的函数。 在Scala中方法和函数有细微的差别,通常编译器会自动完成方法到函数的转换。二、Scala中柯里化的形式Scala中柯里化方法的定义形式和普通方法类似,区别在于柯里化方法拥有多组参数列表,...

2018-04-21 19:01:51 1721

原创 Scala学习(六)Scala的类、对象、继承、特质

一、类(1)类的定义scala语言中没有static成员存在,但是scala允许以某种方式去使用static成员。这个就是伴生机制,所谓伴生,就是在语言层面上,把static成员和非static成员用不同的表达方式,class和object,但双方具有相同的package和name,但是最终编译器会把他们编译到一起,这是纯粹从语法层面上的约定。通过javap可以反编译看到。另外一个小魔法就是单例,...

2018-04-21 18:45:11 1134 1

原创 Scala学习(五)Scala的关键字Lazy

Scala中使用关键字lazy来定义惰性变量,实现延迟加载(懒加载)。 惰性变量只能是不可变变量,并且只有在调用惰性变量时,才会去实例化这个变量。在Java中,要实现延迟加载(懒加载),需要自己手动实现。一般的做法是这样的:public class JavaLazyDemo { private String name; //初始化姓名为huangbo private St...

2018-04-21 17:23:55 182

原创 Scala学习(四)Scala的数组、映射、元组、集合

一、数组(1)定长数组和变长数组import scala.collection.mutable.ArrayBufferobject TestScala { def main(args: Array[String]) { //初始化一个长度为8的定长数组,其所有元素均为0 val arr1 = new Array[Int](8) //直接打印定长数组,内容为数组的ha...

2018-04-21 17:19:18 331

原创 Scala学习(三)Scala的基本使用

一、Scala概述scala是一门多范式编程语言,集成了面向对象编程和函数式编程等多种特性。scala运行在虚拟机上,并兼容现有的Java程序。Scala源代码被编译成java字节码,所以运行在JVM上,并可以调用现有的Java类库二、第一个Scala程序Scala语句末尾的分号可写可不写HelloSpark.scalaobject HelloSpark{ def main(args:Ar...

2018-04-21 15:07:16 366

原创 Scala学习(二)使用IDEA开发Scala

目前Scala的开发工具主要有两种:Eclipse和IDEA,这两个开发工具都有相应的Scala插件,如果使用Eclipse,直接到Scala官网下载即可http://scala-ide.org/download/sdk.html。由于IDEA的Scala插件更优秀,大多数Scala程序员都选择IDEA,可以到http://www.jetbrains.com/idea/download/下载,点击...

2018-04-21 13:21:08 577

原创 Scala学习(一)Scala的安装

1、Scala下载版本选择,看Spark官网http://spark.apache.org/docs/latest/spark2.3.0版本是用2.11版本的Scala进行开发的,所以此处下载Scala2.11的版本Scala下载地址:http://www.scala-lang.org/download/all.html2、双击安装即可默认安装即可:3、检查Scala版本...

2018-04-21 13:17:16 242

原创 Spark学习(二)Spark高可用集群搭建

1、下载Spark安装包官网网址:http://spark.apache.org/downloads.html2、Spark安装过程2.1、上传并解压缩[potter@potter2 ~]$ tar -zxvf spark-2.3.0-bin-hadoop2.7.tgz -C apps/2.2、修改配置文件(1)进入配置文件所在目录/home/potter/apps/spark-2.3.0-bin...

2018-04-20 23:32:54 2073

原创 Spark学习(一)Spark及其生态圈简介

1、什么是SparkApache Spark™是用于大规模数据处理的统一分析引擎。Spark的通用性:2、Spark的四大特性(1)Speed:高效性运行速度快 Spark拥有DAG执行引擎,支持在内存中对数据进行迭代计算。官方提供的数据表明,如果数据由磁盘读取,速度是Hadoop MapReduce的10倍以上,如果数据从内存中读取,速度可以高达100多倍。 (2)Ease of Use:易用性...

2018-04-19 22:11:46 822

原创 Scala:Akka实现简单RPC通信

目标:简单模拟Spark的通信机制,多个worker向Master注册并发送心跳,Master定时清理超时的worker。具体流程如下:1、启动Master并开启清空超时Worker的定时任务2、Worker启动的时候,在preStart方法中连接Master,并向Master注册自己的相关信息3、Master收到worker的注册并返回自己的url给Worker,表示该Worker注册成功4、W...

2018-04-19 21:21:23 1273

原创 Scala笔记

1、柯里化柯里化(Currying)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第二个参数为参数的函数。实例:首先我们定义一个函数:def add(x:Int,y:Int)=x+y那么我们应用的时候,应该是这样用:add(1,2)现在我们把这个函数变一下形:def add(x:Int)(y:Int) = x + y那么我们应用的时候,应该是这样用:add(...

2018-04-18 21:56:41 193

原创 Scala使用(冒泡排序、单词计数、随机数)

冒泡排序:用Scala编写package Demoobject BubbleSort { def main(args: Array[String]): Unit = { val arr = Array(2,3,44,1,3,4) for (i <- 0 until(arr.length)){ for (j <- 0 until(arr.lengt...

2018-04-17 20:24:11 473

原创 HBase学习之路 (八)HBase的API操作

HBase API操作表和数据package HomeWork1;import java.io.IOException;import java.util.List;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache...

2018-04-15 22:22:49 275

原创 java面试要点

1、java基础1.1java基础语法1.1.1、变量,数据类型(1)int和integer的区别1、Integer是int的包装类,int则是java的一种基本数据类型 2、Integer变量必须实例化后才能使用,而int变量不需要 3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值 4、Integer的默认值是null,...

2018-04-15 19:18:25 383

原创 HDFS读写文件流程

1、HDFS写流程:客户端要向HDFS写数据,首先要跟namenode通信以确认可以写文件并获得接收文件block的datanode,然后,客户端按顺序将文件逐个block传递给相应datanode,并由接收到block的datanode负责向其他datanode复制block的副本如图:写详细步骤:1、根namenode通信请求上传文件,namenode检查目标文件是否已存在,父目录是否存在 2...

2018-04-15 15:10:14 390

原创 Sqoop 数据迁移工具

1、Sqoop 基本命令介绍首先,我们可以使用 sqoop help 来查看,sqoop 支持哪些命令Available commands:  codegen            Generate code to interact with database records  create-hive-table  Import a table definition into Hive  e...

2018-04-15 14:33:58 1412

原创 Hive案例-学生成绩表综合案例

元数据:course数据:1,数据库2,数学3,信息系统4,操作系统5,数据结构6,数据处理student数据:95002,刘晨,女,19,IS95017,王风娟,女,18,IS95018,王一,女,19,IS95013,冯伟,男,21,CS95014,王小丽,女,19,CS95019,邢小丽,女,19,IS95020,赵钱,男,21,IS95003,王敏,女,22,MA...

2018-04-14 17:04:09 6086

原创 Hadoop的各个web界面的地址

1、HDFS界面:http://potter2:50070 查看NameNode状态; 该端口的定义位于core-default.xml中,可以在hdfs-site.xml 中修改; 如果通过该端口看着这个页面,以为着NameNode节点是存活的。1、HDFS页面:500702、YARN的管理界面:80883、HistoryServer的管理界面:198884、Zookeeper的服务端口号:21...

2018-04-14 12:26:34 49339 1

原创 Hive的考试练习

建表:create table hive1 (name string, course string, score int) row format delimited fields terminated by ','; load data local inpath '/home/potter/hive1.txt' into table hive1; 第一小题:(1)select nam...

2018-04-13 23:02:22 6597

原创 Sqoop 安装

安装 Sqoop 的前提是已经具备 Java 和 Hadoop 的环境安装包下载地址 http://ftp.wayne.edu/apache/sqoop/1.4.6/安装包:sqoop-1.4.6.bin_hadoop-2.0.4-alpha.tar.gz安装步骤1、 准备安装包 sqoop-1.4.6.bin_hadoop-2.0.4-alpha.tar.gz2、 解压安装包到安装目录tar -...

2018-04-12 21:59:53 286

原创 Azkaban学习(二)Azkaban的安装部署

1、准备工作Azkaban Web 服务器:azkaban-web-server-2.5.0.tar.gzAzkaban Excutor 执行服务器:azkaban-executor-server-2.5.0.tar.gzAzkaban 初始化脚本文件:azkaban-sql-script-2.5.0.tar.gz下载地址:http://azkaban.github.io/downloads.ht...

2018-04-12 21:55:20 356

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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