自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hadoop2.2.0-64位 苦逼历程

安装环境决定了我的苦逼路程:

2014-05-30 13:49:14 1552

原创 有道 VS [csdn]

鉴于CSDN传图太麻烦。。。都写在有道云笔记咯。。呃。。有点儿鸡肋啊,CSDN

2014-04-03 10:57:01 870

原创 java面试中单例问题

public class SingltonTest { private SingltonTest() { }; private static SingltonTest st; public static SingltonTest getInstance() { // 1.3 避过同步锁方法,性能提高 if (null != st) { return st; } s

2014-04-01 10:24:22 583

原创 java面试中多态的细节问题

话不多说,先贴代码package com.chenxin;public class TestForPolymorphism { public static void main(String[] args) { Cat catee = new Cat(10); catee.makeVoice(); } static abstract class Animal { p

2014-03-31 10:51:07 747

原创 concurrent包中atomic中的怪异现象

呃。。记录一个比较奇怪的现象。。。待于以后实际开发中测试后选择package cn.itcast.heima2;import java.util.concurrent.atomic.AtomicInteger; public class AtomicIntegerCompareTest { private int value; public Ato

2014-03-22 10:59:32 566

原创 使用java自带工具监控jvm运行状态

1.jps:查看当前运行着的java进程(仿linux下的ps),显示进程号2. jinfo: 查参数jinfo -flagPermSize 2208(进程号)             jinfo -flag MaxPermSize 2208(进程号)3. jconsole 22084. jstack  2208列出所有线程,以及线程的运行状态5. jstat

2014-03-17 20:18:29 1012

原创 官方译文【hadoop yarn 运行原理剖析】

虽然效率比较低,还是感觉翻译一下走脑走心。。。。不见得全背过,思想犹存。。。犹存。。Hadoop MapReduce Next Generation -Writing YARN Applications[ Go Back ]Hadoop MapReduce Next Generation - Writing YARN ApplicationsPurposeConce

2014-03-14 11:47:27 1855

转载 MapReduce: 提高MapReduce性能的七点建议[译]

Cloudera提供给客户的服务内容之一就是调整和优化MapReduce job执行性能。MapReduce和HDFS组成一个复杂的分布式系统,并且它们运行着各式各样用户的代码,这样导致没有一个快速有效的规则来实现优化代码性能的目的。在我看来,调整cluster或job的运行更像一个医生对待病人一样,找出关键的“症状”,对于不同的症状有不同的诊断和处理方式。         在医学领域,没

2014-03-14 11:35:21 705

原创 hadoop杂记

hadoop中的job schedule1. 默认是FIFO先按照按照优先级,后按照时间顺序进行执行JobTracker没有什么负担,调度方法很简单。但是忽略了不同作业之间的需求差异,很可能造成一定程度的调度倾斜。2. 公平调度器(一般改造用这种)分了多个pool,job会被提交到某个pool中。可以设置最小的task slot,成为miniShare.支持优先级,支持资源

2014-03-14 09:19:23 743

转载 hive深度理解与调优

参考一些文件弄过来。。。。。读了一遍,没有完全记住。呵呵,留着以后当手册用,没事儿来翻。8.1 针对每次简单查询都会使用mapreduce,设置hiveconf hive.fetch.task.conversion=more。通过Fetch 获取数据,不再经过mapreduce8.2 第一部分:Hadoop 计算框架的特性什么是数据倾斜•由于数据的不均衡原因,导致数

2014-03-14 08:58:09 2700

原创 抽象zookeeper中的功能及实现原理

因为hadoop生态系统中的各个组件都会跟zookeeper打交道,边边角角之后,又综合的研习了一遍zookeeper的基本功能和实现原理。没有敢说剖析更难能,在这里只是总结一下zookeeper中的主导思想:1. 建立类似文件系统的东西,来进行nameservice的管理,这个思想可以支持zookeeper提供的命名服务;2. 在每个znode放置watcher,实现全部资源的任何变

2014-03-13 12:08:14 738

原创 官网HDFS Federation的理解与配置

HDFS FederationHDFS FederationBackgroundMultiple Namenodes/NamespacesKey BenefitsFederation ConfigurationConfiguration:Formatting NamenodesUpgrading from older release to 0

2014-03-13 09:33:12 2505

转载 简短使用的HADOOP2版本的安装配置

hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。注意:apache提供的hadoop-2.2.0的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库,所以如果在64位的操作上安装hadoop-2.2.0就需要重新在64操作系统上重新编译前期准备就不详细说了,前边的都有1.修改Linux主机名2.修改IP3.修改主机

2014-03-13 09:29:54 1461

原创 使用QJM方式实现hadoop中的HA

好吧。。。我是文档控。。翻译了官网。。。。总觉得读官网才有原味。HDFS 使用Quorum JournalManager实现高可用性(HA)HDFS High Availability Using the Quorum Journal ManagerPurposeNote: Using the Quorum Journal Manager or Conventi

2014-03-13 09:27:15 1644

原创 pig的官方安装

自己按照官网装的,顺便把官网的文档给翻译了。如果错误,敬请提示!有部分问题,烦劳大神解压。安装pig:1. 下载安装hadoop1.1.22. 下载安装JDK1.63. 下载pig,解压到指定目录。pig的命令在bin目录中,配置信息在conf中的pig.properties中。         4. 将pig的bin目录加入到path中去。运行pig-version 

2014-03-10 22:03:59 1265

原创 hadoop中关于mapreduce的单元测试

这个功能好像是CDH那边开发的。。。1.  首先下载jar包:hadoop-0.21.0-mrunit.jar。(经测试,这个jar包是关联旧API的。请自己根据情况决定)2.  在eclipse的build path中加入此jar包。3.  编写测试程序:package unittest;import java.io.IOException;import java.util

2014-03-09 17:48:18 836

原创 hadoop中mapreduce的常用类

写这个文章的时候才意识到新旧API是同时存在于1.1.2的hadoop中的。以前还一直纳闷儿为什么有时候是jobClient提交任务,有时是Job...不管API是否更新,下面这些类也还是存在于API中的,经过自己跟踪源码,发现原理还是这些。只不过进行了重新组织,进行了一些封装,使得扩展性更好。所以还是把这些东西从记事本贴进来吧。关于这些类的介绍以及使用,有的是在自己debug中看到的,多数为

2014-03-09 17:22:59 2405

转载 注意事项:hadoop中的新API(mapreduce)、旧API(mapred)

结果令小菜很失望,就找到了一个符合理想的帖子。但是通过这个帖子,小菜知道了,mapred代表的是hadoop旧API,而mapreduce代表的是hadoop新的API。OK,小菜在google输入框中输入“hadoop新旧API的区别”,结果很多。看了之后,又结合权威指南归结如下:1.    首先第一条,也是小菜今天碰到这些问题的原因,新旧API不兼容。所以,以前用旧API写的h

2014-03-09 13:16:13 862

转载 MapReduce:详解Shuffle过程

Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapReduce的运行机制,这才对Shuffle探了个究竟。考虑到之前我在看相关资料而看不懂时很恼火,所以在这里

2014-03-09 11:05:50 543

原创 hadoop中的RPC, namenode和datanode通信原理

1. JobClient(题外话,自己翻译了一下JobClient的运行机制):JobClient是用户提交的信息与JobTracker交互的主要接口。它提供的功能有:提交作业,跟踪作业进度,访问作业报告和进度,获取MR集群的状态等。作业提交过程:a. 检查作业的输入输出是否合乎规范;b. 为作业计算出InputSplit(单个Mapper需要执行的部分);c. 如有需要,为D

2014-03-09 10:39:32 1956

转载 hadoop机架感知

背景    分布式的集群通常包含非常多的机器,由于受到机架槽位和交换机网口的限制,通常大型的分布式集群都会跨好几个机架,由多个机架上的机器共同组成一个分布式集群。机架内的机器之间的网络速度通常都会高于跨机架机器之间的网络速度,并且机架之间机器的网络通信通常受到上层交换机间网络带宽的限制。    具体到Hadoop集群,由于hadoop的HDFS对数据文件的分布式存放是按照分块blo

2014-03-09 10:02:22 593

原创 vmware下虚拟机自动换ip的解决办法

最近学习hadoop的过程中,频繁出现vmware自动换vm的ip的问题,导致原来已经配好的SSH互信不能成功运行。1. 首先在vmware中设定网段:Edit-》visual network editor -》NAT(一般是最后一个)-》左下方设置网段-》在DHCP setting中查看设置范围;2. 查看当前机器的DNS地址;3. 进入linux系统,修改为静态ip,并指定

2014-03-07 09:11:18 10348 1

转载 hive 的 test case

src/data 目录下面是输入数据 src/ql/src/test/queries下面是测试用例,clientpositive是运行成功的用例,clientnegative是运行失败,返回非0的用例。 src/ql/src/test/results 下面是测试用例对应的输出结果。如src/ql/src/test/queries/case_sensitivity.q对应的输出结果是src/

2014-03-06 16:21:23 892

原创 hive与mysql的整合

hive与mysql的整合1. 配置文件hive-site.xml的修改 javax.jdo.option.ConnectionURL  jdbc:mysql://will-vm1:3306/hive?createDatabaseIfNotExist=true JDBC connect string for a JDBC metastorejavax.jdo

2014-03-06 11:13:28 1158

原创 hive-0.9.0的安装

1. 下载hive-0.9.0,解压;2. 进入conf目录,把4个文件都cp一份,去掉template,hive-default.xml改default为site:3. 配置环境变量$HIVE_HOME和$HADOOP_HOME以及$PATH:这里配置了$HADOOP_HOME后,在启动或者关闭hadoop时,可能会出现警告信息:解决办法: export HADO

2014-03-05 22:27:29 1261

转载 ubuntu下安装mysql遇到的问题

使用ubuntu自带工具装的: sudo apt-get install mysql-server安装后发现无论如何都等不进去,总是报错如下:ERROR 1045 (28000): Access denied for user 'hehe'@'localhost' (using password: YES)找了好多博文,都不如下面引荐的这篇最好,很快解决了我的问题:

2014-03-05 17:22:49 703

原创 云计算环境搭建: hadoop-1.1.2 + zookeeper-3.4.5 + hbase-0.94.7

看了长时间的原理和机制,终于有了两天闲工夫,系统的实施一下环境搭建。综合参考官网文档以及其他版本安装的脚步,写下来,加深一下自己的理解与记忆。清口水果:1. 安装JDK,配置环境变量,javac验证;2. 确定实验需要使用的用户,了解用户角色及权限范围;(貌似除了ubuntu自动关闭防火墙外,其他linux需要弄一下)3. 确定机器ip,改写/etc/hosts使能够解析地

2014-03-03 09:11:32 1544

原创 eclipse远程调试Tomcat, Hadoop集群等

主导是JPDA(Java Platform Debugger Architecture), 它支持java中的各种调试,由两个接口(JVM Tool Interface和JDI)、一个协议(JDWP)和两个用于合并它们的软件组件(后端和前端)组成。参见http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/JDW

2014-03-02 16:19:15 2023

原创 eclipse与hadoop

1. 插件的编译与应用http://blog.csdn.net/xiangaichou/article/details/20244735按照这篇文章做的。试了很多次没有成功,后面莫名其妙的就好了。起码证明这种方式没有错误,所以存下。另外看到一篇文章:http://f.dataguru.cn/thread-167602-1-1.html2. failure

2014-03-01 23:35:25 721 1

转载 编译hadoop-eclipse-plugin-1.1.2.jar插件

hadoop自0.20.x版本后不再提供现成的hadoop-eclipse插件而是给出了源码自行编译。使用任意一个workspace打开你的eclipse把Hadoop程序目录的src/contrib的eclipse-plugin项目导入到eclipse导入eclipse后,项目名称会变成MapReduceTools。修改你的编译环境(jdk环境)在项目的根目录下创

2014-03-01 23:24:30 1515

原创 vi编辑器问题、ubuntu问题

上下左右总是出ABCD,还占行,特难用。这种情况出现在ubuntu13的桌面版。运行 sudo apt-get install vim。就好了,据说是版本太旧的原因。

2014-03-01 21:15:00 701

原创 读bigtablel论文笔记——结构部分

bigtable是结构化数据的分布式存储系统。1. 数据结构:1.1 行通过字典书序排序。用户可以根据需要选择合适的行命名,尽量使相关行挨着牌,就可以在查询类似数据时进行快速查询。比如论文中给的maps.google.com,就可以把跟maps.google相关的数据挨着最近,其次是maps。所以这里的行命名比较重要。1.2 列族列族的元素应该是同一类型,后面在数据传输

2014-03-01 12:13:34 618

转载 Hibernate简易BaseDao演示单例模式和线程池

package com.dao;import java.util.List;import org.hibernate.HibernateException;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg

2014-02-28 17:05:24 1381

转载 老鸟程序员走的坑

转眼毕业已经近十年了。。。回头看看,挺平整的路走,被自己走的却都是坑;把自己这几年走的路分享给迷茫的童鞋门。希望你们能从我身上吸取点教训;第一份工作:05年毕业,导师推荐去了北京一家图商公司做软件开发,C和C++(当时的领导不错,专业技能造诣相当深厚,现在还是我的膜拜对象);当时我的工资2000,现在估计刚毕业的工鞋根本不屑这个工资水平了,呵呵;记得自己的第一个任务是VC6.0编写一个图幅

2014-02-28 16:49:56 693

转载 IT人-不要一辈子靠技术生存

我现在是自己做,但我此前有多年在从事软件开发工作,当回过头来想一想自己,觉得特别想对那些初学JAVA/DOT。NET技术的朋友说点心里话,希望你们能从我们的体会中,多少受点启发(也许我说的不好,你不赞同但看在我真心的份上别扔砖头啊).一。 在中国你千万不要因为学习技术就可以换来稳定的生活和高的薪水待遇,你千万更不要认为哪些从事 市场开发,跑腿的人,没有前途。不知道你是不是知道,咱们中国有相

2014-02-28 15:35:52 1223 2

转载 关于threadlocal的来龙去脉

引用谋篇评论:对TLS更简单的,但是更直观的理解可以如下(基于C语言):1. 全局对象,全局变量的作用域和生命周期是全局的,这里的全局是指进程范畴,也就是说,如果你将其设计为全局对象,全局变量,就意味着你希望在多线程的环境中,仍然能共享和访问。 全局对象,全局变量不是说不让多线程来访问,而是说有的时候不期望他们同时访问,此时引入了线程的互斥,互斥的后果是保证不同时访问,但是,并没有改变

2014-02-27 18:24:24 704

转载 正确理解ThreadLocal

首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。 各个线程中访问的是不同的对象。  另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并不是通过ThreadLocal.set()来实现的,而是通过每个线程中的new 对象 的

2014-02-27 18:09:01 739

转载 Java多线程同步机制(synchronized)

转自:http://xuguangzhi2003.blog.163.com/blog/static/134908721201011228733362/ 一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在 java里边就是拿到某个同步对象的锁(一个对象只有一把锁); 如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池

2014-02-27 17:44:09 814

转载 Java面试题:静态块、块、构造函数的初始化顺序

自己做了几遍,每次的输出结果都不一样。有时候父类的构造方法中的两个输出中竟然会穿插子类的非静态类方法体。按照网上http://blog.csdn.net/fang3081004/article/details/7764306的做法,没有再出现不稳定的情况。索性就这样总结了:1. 单一类中:静态变量、静态块、普通变量、普通块、构造方法;2. 有继承的子类中:先父后子。子类的静态变量和

2014-02-26 18:29:14 1277

转载 优化SQL查询:如何写出高性能SQL语句

1、 首先要搞明白什么叫执行计划?执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下5000条记录了,那查询优化器就会改变方案,采用 “全表扫描”方式。可见,执行计划并不是固定的,它是“个性化的”。

2014-02-25 17:09:11 595

搭建好的SSH框架

自己搭建的简单的SSH框架,没有其他代码,搭好框架后放了一两个测试代码。Hibernate是用的4.0的

2013-05-06

空空如也

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

TA关注的人

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