自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (1)
  • 收藏
  • 关注

原创 二叉树的四种遍历(递归、非递归)

1、递归遍历/** * 先序遍历 * @param root */ public void printFirstTree(TreeNode root){ if(root!=null){ System.out.print(root.val); printFirstTree(root.le

2016-09-30 11:20:33 3608

原创 根据中序和先序(后序)构建二叉树

1、根据先序和中序构建二叉树例:前序遍历: GDAFEMHZ中序遍历: ADEFGHMZ画树求法: 第一步,根据前序遍历的特点,我们知道根结点为G第二步,观察中序遍历ADEFGHMZ。其中root节点G左侧的ADEF必然是root的左子树,G右侧的HMZ必然是root的右子树。第三步,观察左子树ADEF,左子树的中的根节点必然是大树的root的leftchild。在

2016-09-30 11:04:29 17803 1

转载 先序遍历和后序遍历为什么不能唯一地确定一棵树?

以前大学学数据结果的时候,我们就知道,根据一棵树的先序遍历和中序遍历,或者后序遍历和中序遍历序列,都可以唯一地确定一棵树。树中的节点,分为度为0,1,2的结点。如果树中只有一个节点,那么可以唯一确定一棵树,即只有一个节点的树。当树中结点个数大于等于2的情况,树中的叶子结点和它的父亲结点中,至少有一种存在如下的情况。(为方便起见,我们先从叶子节点入手)            

2016-09-30 10:59:36 14332 5

原创 在windows环境下编译hadoop

1、环境准备1.1 maven的安装去网上下载maven的安装包,解压。再配置环境变量,将%M2_HOME%\lib添加到path中。安装完成之后,在cmd中键入 mvn -v,出现![这里写图片描述](http://img.blog.csdn.net/20160818195043783)1.2 protoc的安装protoc的安装稍微有点繁琐。需要的文件:protobuf-2.5.0.

2016-08-18 19:50:10 3014

转载 设计模式之单例模式

http://www.cnblogs.com/BoyXiao/archive/2010/05/07/1729376.html单例模式(Singleton)首先来明确一个问题,那就是在某些情况下,有些对象,我们只需要一个就可以了,比如,一台计算机上可以连好几个打印机,但是这个计算机上的打印程序只能有一个,这里就可

2016-07-29 11:14:49 670

转载 谈谈数据库的ACID

一.事务       定义:所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。       准备工作:为了说明事务的ACID原理,我们使用银行账户及资金管理的案例进行分析。        [sql] view plain copy print?// 创建数据库  create

2016-07-20 09:55:31 823

转载 谈谈数据库的ACID

http://blog.csdn.net/shuaihj/article/details/14163713

2016-07-20 09:35:07 595

转载 JAVA泛型

本想自己写的,但是看到一篇写的非常好的文章,就不献丑了,直接引用。 java泛型

2016-06-27 11:15:21 1408

原创 Java 调用Matlab

1、环境配置jdk: 在matlab的命令行窗口输入 version -java 查询matlab中jdk的版本。在安装jdk时版本需要一致2、matlab的安装matlab的版本必须是2006b+或者更高的版本,因为只有这些版本中才有MATLAB Build for Java(也叫 Java Builder)3、调用基本步骤3.1打开matlab,新建脚本,打开Editor窗口。脚本内容如下:fu

2016-05-31 13:34:03 1350

转载 Hadoop YARN配置参数剖析

本文部分转自 Hadoop YARN配置参数剖析(1)—RM与NM相关参数 本文部分转自 Hadoop YARN中内存的设置一 ResourceManager 相关配置参数1 通信配置参数2 调度器配置参数3 内存和 CPU 配置参数二 NodeManager 相关配置参数1 内存与 CPU 配置参数1 日志配置参数3 运行配置参数三 Hadoop

2016-03-10 14:20:28 3913

原创 Mahout-distrubution-0.9安装教程

1.下载安装包http://archive.apache.org/dist/mahout/0.9/mahout-distribution-0.9.tar.gz,下载完成之后,直接解压。 解压命令:tar -zxvf mahout-distribution-0.9.tar.gz2.配置环境变量在 /etc/profile或者~/.bash_profile中添加如下配置信息 MAHOUT_HOME

2016-03-07 15:14:00 1342

原创 linux中export、ofile、bashrc、bash_profile各种环境变量文件

1.export将自定义变量设定为系统环境变量(当前shell有效),设置或显示环境变量。 说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅限于该次登陆操作。2./etc/profile:此文件为系统的每个用户设置环境信息。当用户第一次登录时,该文件被执行。/etc/environment是设置这个系统

2016-03-07 11:47:40 2811

转载 Java8中Lambda表达式的10个例子

Java8中Lambda表达式的10个例子 例1 用Lambda表达式实现Runnable接口 Java代码  //Before Java 8:  new Thread(new Runnable() {  @Override  public void run() {      System.out.println("Before Java8, too

2016-03-06 20:21:00 930

转载 Hadoop作业提交与停止命令

1. 作业提交命令 jarhadoop jar <jar> [mainClass] args.. 表示 jar 包名 mainClass 表示 main class 名称,可以不必输入而由 jar 命名自动搜索 args 是 main class 输入参数 bin/hadoop jar hadoop-examples-1.0.0.jar wordcount /text/input /test

2016-03-06 15:46:11 15045

转载 Hadoop-2.5.0-cdh5.3.2 HA 安装

Hadoop-2.5.0-cdh5.3.2 HA 安装

2016-03-04 21:46:35 887

原创 hadoop配置Mapreduce job日志

1.你需在 mapred-site.xml 中对其进行配置,并分发到整个集群<property><name>mapreduce.jobhistory.address</name><value>0.0.0.0:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>0.0

2016-03-04 21:19:13 1937

转载 解决关闭Hadoop时no namenode to stop异常

解决关闭Hadoop时no namenode to stop异常问题描述部门的Hadoop集群运行有一个多月了,今天需要做点调整,但是突然发现Hadoop不能正常关闭!Hadoop版本:2.6.0具体情况如下:[root@master ~]# stop-dfs.shStopping namenodes on [master]master: no

2016-03-04 21:02:09 15370

原创 hadoop集群启停命令

启动脚本 脚本说明 启动脚本 脚本说明 start-all.sh 启动所有的Hadoop守护进程。包括NameNode、 Secondary NameNode、DataNode、JobTracker、 TaskTrack stop-all.sh 停止所有的Hadoop守护进程。包括NameNode、 Secondary NameNode、DataNode、JobTracker、 TaskTra

2016-03-04 20:54:41 10272

原创 hadoop启动失败的可能原因

有可能是在root用户下启动了hadoop集群,后者root用户启动的进程没有完全关闭。然后又到hadoop用户下去启动集群,此时某些进程的端口可能被占用,导致启动失败。

2016-03-04 20:53:02 1830

转载 Hbase写入速度优化

Facebook在谈到其选择HBase作为新的message体系的存储时,提到了一点是hbase的高性能写,那hbase的写性能状况到底如何了,还是需要靠测试来说明,在这篇blog中就以我们目前做的一些测试来看看hbase的写速度,以及分享下我们对于测试中体现出来的数据的分析和测试时碰到的一些问题,还希望对hbase有研究或实践的同学多加指正。 测试环境: 1、4个client,每client

2016-03-03 11:09:44 9653

转载 HBASE启动脚本/Shell解析

常用到的HBase启动脚本有: 1.$HBASE_HOME/bin/start-hbase.sh 启动整个集群 2.$HBASE_HOME/bin/stop-hbase.sh 停止整个集群 3.$HBASE_HOME/bin/hbase-daemons.sh 启动或停止,所有的regionserver或zookeeper或backup-master 4.$HBASE_HOME/bin

2016-03-03 10:37:23 1379

转载 Hbase相关概念,配置总结

一、HBASE 简介HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文”Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBas

2016-03-01 16:44:51 873

转载 Scala中的下划线到底有多少种应用场景?

著作权归作者所有。 商业转载请联系作者获得授权,非商业转载请注明出处。 作者:do Cre 链接:http://www.zhihu.com/question/21622725/answer/55562166 来源:知乎scala中与_相关的用法还是挺多的: 1 import导入包的所有成员,相当于java的,而在scala中可以作为合法的identifier。比java方便的一点是它可以导

2016-02-29 11:47:37 1090

原创 mapreduce中map方法一次读取整个文件

最近有一个项目,需要将爬虫获取的众多网页解析出来,并将内容插入hbase,考虑采用mapreduce来实现。由于一个html文件最大不过几M,所以一个文件将会交给一个map处理,mapreduce中最常见的是按行读取文本文件,而我们需要的是一次读取整个文件内容,然后在map方法中用jsoup解析内容。现将实现一次读取整个文件内容的代码贴出来。1、定义一个FileInputFormat类public

2016-01-25 13:31:48 7597

原创 Mapreduce中map方法自定义key类

为map方法的key构造一个复合类public static class IntPair implements WritableComparable<IntPair> { int first; int second; /** * Set the left and right values. */

2016-01-25 13:19:53 2988 1

原创 MapReduce map side join实例

1.问题描述现有一张大表(大概有2亿多条记录),存放的是机顶盒用户每天的播放记录,有所看的电视台名称和开始时间,但是没有节目名。 还有一张小表(几十万条),数据是用爬虫获取的每天各个电视台的节目单信息。 现在需要将用户的播放记录与节目信息关联起来。即根据用户播放记录中的电视台名和开始时间确定节目名称。2.reduce side join 还是map side join由于小表的数据量比较小,完全

2016-01-06 21:48:10 1723

转载 MapReduce中的两表join几种方案简介

1. 概述在传统数据库(如:MYSQL)中,JOIN操作是非常常见且非常耗时的。而在HADOOP中进行JOIN操作,同样常见且耗时,由于Hadoop的独特设计思想,当进行JOIN操作时,有一些特殊的技巧。本文首先介绍了Hadoop上通常的JOIN实现方法,然后给出了几种针对不同输入数据集的优化方法。2. 常见的join方法介绍假设要进行join的数据分别来自File1和File2.2.1 reduc

2016-01-06 21:15:38 962

原创 maven配置生成可执行的jar:maven-shade-plugin

默认打包生成的jar是不能直接运行的,因为带有main方法的信息不会添加到mainifest中,需要借助maven-shade-plugin。 在<project><build><plugins>下面添加配置后的pom文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.

2015-12-30 09:09:39 6550

原创 Eclipse中用Link方式安装Maven插件

1、maven的下载去http://maven.apache.org/download.cgi下载合适版本的maven解压到本地任意目录。 2、maven的配置在环境变量-系统变量中新建变量M2_HOME,值为maven的安装目录。 在系统变量PATH后面加上maven的bin目录。 3、测试maven安装是否成功在windows的命令行中键入mvn -v如果能够显示如下信息表明安装成功

2015-12-29 19:42:08 3022 1

原创 Hbase 报错:RegionTooBusyException

今天遇到了个奇怪的问题,写了一个mapreduce的程序向Hbase中插入数据,当hbase的版本是1.1.2时是没有问题的,但是当hbase的版本降为0.98后就出现了下面的问题 问题的原因:Thrown by a region server if it will block and wait to serve a request. For example, the client wants t

2015-12-23 21:33:08 6810

转载 hadoop HDFS常用文件操作命令

原文链接:http://blog.csdn.net/jjfnjit/article/details/45093129 命令基本格式:hadoop fs -cmd < args >1.lshadoop fs -ls / 列出hdfs文件系统根目录下的目录和文件hadoop fs -ls -R / 列出hdfs文件系统所有的目录和文件2.puthadoop fs -put < local

2015-12-23 11:42:56 1255

原创 Mapreduce代码编写问题汇总

1、job.setOutputFormatClass(TextOutputFormat.class);报错The method setOutputFormatClass(Class

2015-12-17 21:25:51 869

原创 Mapreduce工作流程

1、mapreduce实际处理流程mapreduce 其实是分治算法的一种现,所谓分治算法就是“就是分而治之 ,将大的问题分解为相同类型的子问题(最好具有相同的规模),对子问题进行求解,然后合并成大问题的解。mapreduce就是分治法的一种,将输入进行分片,然后交给不同的task进行处理,然后合并成最终的解。 mapreduce实际的处理过程可以理解为Input->Map->Sort->Comb

2015-12-15 21:02:27 8703

原创 使用mapreduce向hbase1.1.2插入大量数据

1、集群环境hadoop2.5+hbase1.1.2集群现在有37台slave节点,一个master节点。2、数据源每一天的数据压缩成了一个tar.gz包,大概4G,其中大概有6000个zip包,每个zip包中有几个txt文件。现在采用shell脚本将每天的数据合并成一个txt,大概有几十G。3、插入要求现在要将txt文件中的每一行作为一条记录插入hbase。4、建表create ‘ter

2015-12-07 11:05:00 7356 1

转载 MapReduce和YARN的关系

YARN并不是下一代MapReduce(MRv2),下一代MapReduce与第一代MapReduce(MRv1)在编程接口、数据处理引擎(MapTask和ReduceTask)是完全一样的, 可认为MRv2重用了MRv1的这些模块,不同的是资源管理和作业管理系统,MRv1中资源管理和作业管理均是由JobTracker实现的,集两个功能于一身,而在MRv2中,将这两部分分开了, 其中,作业管理由

2015-11-30 21:33:00 5821

转载 mapreduce任务失败、重试、推测式执行机制小结

mapreduce中我们自定义的mapper和reducer程序在执行后有可能遇上出错退出的情况,mapreduce中jobtracker会全程追踪任务的执行情况,对于出错的任务mapreduce也定义了一套自己的处理方式。 首先要明确的是mapreduce判断任务失败的方式。三种情况下任务会被认为执行失败:返回非0值、产生java异常、超时(长时间没响应)。对于第一种,通常用于strea

2015-11-30 14:43:19 2586

转载 Linux统计某文件夹下文件、文件夹的个数

统计某文件夹下文件的个数ls -l |grep "^-"|wc -l统计某文件夹下目录的个数ls -l |grep "^d"|wc -l统计文件夹下文件的个数,包括子文件夹里的ls -lR|grep "^-"|wc -l如统计/home/han目录(包含子目录)下的所有js文件则:ls -lR /home/han|grep js|wc -l 或

2015-11-29 14:32:51 786

原创 Exception in thread “main” java.lang.IllegalArgumentException: Wrong FS: hdfs://localhost:9000/user/

// pickup config files off classpath Configuration conf = new Configuration() // explicitely add other config files // PASS A PATH NOT A STRING! conf.addResource(new Path(“/home/hadoop/conf/cor

2015-11-23 22:31:56 1519

原创 Java GC、新生代、老年代

1、堆内存Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。 在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个区域:Eden、From Survivor、To Survivor。 这样划分的目的是为了使 JVM 能够更好的管理堆内存中的对象,包括内存的分配以及回收。 堆

2015-11-15 13:16:45 16217 4

原创 Hbase1.1.2采用javaAPI插入批量数据

最近在做采用javaAPI批量往Hbase插值的工作,记录一下Configuration cfg = HbaseConfiguration.create();Connnection conn = ConnectionFactory.createConnection();Table table = conn.getTable(TableName.valueOf("table_name"));Lis

2015-11-13 14:40:18 4687 1

eclipse-maven插件

采用link方式为eclipse配置maven插件,解决了由于网络原因而导致的eclipse无法在线安装maven插件的问题。

2015-12-29

空空如也

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

TA关注的人

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