- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 springmvc之web.xml配置
搜降价。降价,是搜出来的。http://www.soujiangjia.comxmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http
2013-04-18 14:46:37 858 1
转载 Incompatible namespaceIDS 错误解决办法
Hadoop集群在namenode格式化(bin/hadoop namenode -format)后重启集群,datanode log会出现如下 Incompatible namespaceIDS in ... :namenode namespaceID = ... ,datanode namespaceID=...错误, 原因是格式化namenode
2013-04-09 11:29:34 621
转载 Hadoop 集群启动一直处于safemode解决方法
Hadoop集群启动的时候一切正常,但一直处于safemode,只能读不能写,这种时候应该查看namenode的logs,当然这可能会出现不同的情况... 下面仅介绍一种错误处理方案,希望能抛砖引玉,能对大家有所启发。以下是日志提示(此地只摘抄了重要部分) org.apache.hadoop.hdfs.server.namenode.SafeModeException: C
2013-04-09 11:27:38 981
原创 map slot 和 reduce slot
mapred.tasktracker.reduce.tasks.maximum一个tasktracker同时运行reduce任务的最大个数,默认为2。集群Reducer任务槽数量 = 节点数 * 前者。mapred.tasktracker.map.tasks.maximum一个tasktracker同时运行map任务的最大个数,默认为2。集群map任务槽数量 = 节点数 * 前
2013-04-03 15:14:05 2397
转载 MapReduce: 提高MapReduce性能的七点建议
Cloudera提供给客户的服务内容之一就是调整和优化MapReduce job执行性能。MapReduce和HDFS组成一个复杂的分布式系统,并且它们运行着各式各样用户的代码,这样导致没有一个快速有效的规则来实现优化代码性能的目的。在我看来,调整cluster或job的运行更像一个医生对待病人一样,找出关键的“症状”,对于不同的症状有不同的诊断和处理方式。 在医学领域,没
2013-04-03 15:10:07 575
转载 MapReduce:详解Shuffle过程
Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapReduce的运行机制,这才对Shuffle探了个究竟。考虑到之前我在看相关资料而看不懂时很恼火,所以在这里
2013-04-03 09:36:15 394
转载 map/reduce 过程的认识
map/reduce 过程的认识 最初我一直简单的以为map的工作就是将数据打散,而reduce就是将map打散后的数据合并。虽然之前跑过wordcount的例子,但之前只是对输出reduce最终的结果感兴趣,对控制台打印的日志信息完全不懂。这几天我们团队在探索pagerank,才开始对map/reduce有了深一层的了解。当一个job提交后,后续具体的一系列分配调度工作我现在
2013-04-02 17:50:12 732
转载 hadoop的Jobid
在hadoop的任务job中,jobid是标志一个任务的唯一标志,可以用于定位到该job,查询该job相关信息,kill掉该job 。jobId是如何生成的呢 ?在一般的服务集群上我们通过JobTracker来管理job,该id既是通过JobTracke的getNewJobId()方法得到,具体代码如下:public synchronized JobID getNewJobId(
2013-04-01 13:34:45 982
转载 mapred.map.tasks 如何影响map的个数
且具体到底产生多少个分片(split) 因为多少个map 是有关系。(此处是根据新的API来分析,因为新的API 终究要调用到就得API来做具体的动作)可能会说这个值 是系统根据文件大小 和根据文件分片大小 算出来的,那具体是如何算出来的呢,我们根据源码 一步一步来分析首先Job.submit()public void submit() throws IOException, Int
2013-04-01 11:13:25 641
转载 Hadoop中map数的计算
Hadoop中在计算一个JOB需要的map数之前首先要计算分片的大小。计算分片大小的公式是:goalSize = totalSize / mapred.map.tasksminSize = max {mapred.min.split.size, minSplitSize}splitSize = max (minSize, min(goalSize, dfs.block.si
2013-04-01 11:03:45 625
转载 Hadoop中Partition解析
1.解析PartitionMap的结果,会通过partition分发到Reducer上,Reducer做完Reduce操作后,通过OutputFormat,进行输出,下面我们就来分析参与这个过程的类。Mapper的结果,可能送到Combiner做合并,Combiner在系统中并没有自己的基类,而是用Reducer作为Combiner的基类,他们对外的功能是一样的,只是使用的位置和使
2013-03-26 11:21:20 439
转载 Hadoop使用常见问题以及解决方法
1:Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-outAnswer:程序里面需要打开多个文件,进行分析,系统一般默认数量是1024,(用ulimit -a可以看到)对于正常使用是够了,但是对于程序来讲,就太少了。修改办法:修改2个文件。/etc/security/limits.confvi /etc/
2013-03-21 17:16:04 571
转载 Hadoop的TaskTracker黑名单机制
Note:这里描述的黑名单是指jobtracker网页summary表格中显示的”Blacklisted Nodes",称之为集群黑名单. 在HADOOP-4305之前,Hadoop中每个job会维护一个TaskTracker黑名单,这里称之为job黑名单。简单来讲就是当一个job中有4个task曾经在某个tasktracker上失败过,则该job就将这个tasktracker加入自
2013-03-21 16:07:03 503
转载 hadoop的datanode多磁盘空间处理
hadoop-0.20.2 测试修改hdfs-site.xml:添加 dfs.datanode.du.reserved 53687091200 Reserved space in bytes per volume. Always leave this much space free for non dfs use. 以下转自网友:最开始
2013-03-21 12:01:07 2431
转载 Hadoop FS Shell命令
FS Shell调用文件系统(FS)Shell命令应使用 bin/hadoop fs 的形式。 所有的的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path 。对 HDFS文件系统,scheme是hdfs ,对本地文件系统,scheme是file 。其中scheme和 authority参数都是可选的,如果未加指定,就会使用配置中指定
2013-03-21 10:23:30 660
转载 Hadoop的Secondary NameNode方案(不是双机热备)
该方案启动一个Secondary NameNode节点,该节点定期从NameNode节点上下载元数据信息(元数据镜像fsimage 和元数据库操作日志edits),然后将fsimage和edits进行合并,生成新的fsimage(该fsimage就是Secondary NameNode下载时刻的元数据的Checkpoint),在本地保存,并将其推送到NameNode,同时重置NameNode上的e
2013-03-20 17:59:48 768
转载 hadoop中每个节点map和reduce个数的设置调优
map red.tasktracker.map.tasks.maximum 这个是一个task tracker中可同时执行的map的最大个数,默认值为2,看《pro hadoop》:it is common to set this value to the effective number of CPUs on the node 把Job分割成map和reduce合理地
2013-03-20 11:35:54 836
转载 Hadoop安装配置
1、集群部署介绍 1.1 Hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台。以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapReduce(Google MapReduce的开源实现)为核心的Hadoop为用户提供了系统底层细节透明的分布式基础架构。 对于Had
2013-03-19 14:34:52 530
转载 Hadoop集群上使用Lzo压缩
自从Hadoop集群搭建以来,我们一直使用的是Gzip进行压缩当时,我对gzip压缩过的文件和原始的log文件分别跑MapReduce测试,最终执行速度基本差不多而且Hadoop原生支持Gzip解压,所以,当时就直接采用了Gzip压缩的方式关于Lzo压缩,twitter有一篇文章,介绍的比较详细,见这里:Lzo压缩相比Gzip压缩,有如下特点:压缩解压的速度
2013-03-19 13:09:52 545
转载 hadoop lzo压缩
在hadoop中使用lzo的压缩算法可以减小数据 的大小和数据的磁盘读写时间,不仅如此,lzo是基于block分块的,这样他就允许数据被分解成chunk,并行的被hadoop处理。这样的特点,就可以让lzo在hadoop上成为一种非常好用的压缩格式。lzo本身不是splitable的,所以当数据为text格式时,用lzo压缩出来的数据当做job的输入是一个文件作为一个map。但是seque
2013-03-19 12:30:46 644
转载 reducer个数选择
设置Reducer的数量在Hadoop中默认是运行一个Reducer,所有的Reduce任务都会放到单一的Reducer去执行,效率非常低下。为了提高性能,可以适当增大Reducer的数量。最优的Reducer数量取决于集群中可用的Reducer任务槽的数目。Reducer任务槽的数目是集群中节点个数与mapred.tasktracker.reduce.tasks.maximum(
2013-03-19 12:07:37 973
转载 hadoop集群默认配置和常用配置
获取默认配置配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,默认下来,这些配置文件都是空的,所以很难知道这些配置文件有哪些配置可以生效,上网找的配置可能因为各个hadoop版本不同,导致无法生效。浏览更多的配置,有两个方法:1.选择相应版本的hadoop,下载解压后,搜索*.xml,找到core-defau
2013-03-18 22:44:18 441
转载 上传文件到HDFS,对文件进行压缩
hadoop计算需要在hdfs文件系统上进行,文件上传到hdfs上通常有三种方法:a hadoop自带的dfs服务,put;b hadoop的API,Writer对象可以实现这一功能;c 调用OTL可执行程序,数据从数据库直接进入hadoop hadoop计算需要在hdfs文件系统上进行,因此每次计算之前必须把需要用到的文件(我们称为原始文件)都上传到hdfs上。文件上传到hdfs上
2013-03-18 22:42:51 3683
转载 mapredue输入路径
FileInputFormat.addInputPath(Job job, Path path)用于设定hadoop的输入文件路径,path可以指定具体的文件,也可以指定文件目录,当指定文件目录时,hadoop会遍历该目录下的所有文件,但遍历不是递归的,即只遍历该目录当下的文件。如果该目录下含有目录会输出异常信息,此时reduce便不会执行,job便被视为failed,但在该子目录名称以“_”开头
2013-03-18 22:37:36 472
转载 dbms_xplan包的输出
dbms_xplan包能够显示存储在三个不同地方的执行计划:plan_table,library cache,awr中。 下面分别简单介绍display函数,display_cursor函数,display_awr函数的几个参数输入和基本用法:display函数(搭配explain plan使用)的参数输入:1. table_name: 默认为plan_table。2. s
2012-04-20 10:23:30 534
转载 UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别
这篇博客对类之间的关系进行了整理,在用UML进行类图设计时,对类之间的关系更加清晰明了. 一、表示符号上的区别 二、具体区别与联系继承(泛化) 指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系,可分单重继
2012-04-10 16:28:22 302
转载 Oracle的10046事件
Oracle的10046事件,可以跟踪应用程序所执行的SQL语句,并且得到其解析次数.执行次数,CPU使用时间等信息。这对我们分析、定位数据库性能问题是非常有用的。10046event是oracle用于系统性能分析时的一个最重要的事件。当激活这个事件后,将通知oracle kernel追踪会话的相关即时信息,并写入到相应trace文件中。这些有用的信息主要包括sql是如何进行解析,绑定变量
2012-04-10 13:29:22 276
转载 Oracle执行计划顺序是怎么看的
阅读oracle执行计划的方法:先从最开头一直往右看,直到看到最右边的并列的地方,对于不并列的,靠右的先执行:对于并列的,靠上的先执行。 即并列的缩进块,从上往下执行,非并列的缩进块,从下往上执行。如下示例:Execution Plan----------------------------------------------------------
2012-04-10 13:21:00 491
转载 普通物理表、临时表和TABLE(函数)的执行效率对比
普通物理表、临时表和TABLE的用途各不相同,普通表一般存放需要长期保存的数据,临时表存放某个事务或会话过程中的临时数据,array是oracle中的数组,也可以用于存放临时数据,或在OODB中使用。但是,优化器在做查询计划时,尤其在CBO中,没临时表和TABLE的统计数据,因此总会得出一些混乱的查询计划,往往需要我们用hint去调整。并且,由于实现机制各不相同,他们的查询效率也不一样。下面通过一
2012-04-09 11:25:18 3171
转载 Oracle中的Hash Join祥解
一、 hash join概念 hash join(HJ)是一种用于equi-join(而anti-join就是使用NOT IN时的join)的技术。在Oracle中,它是从7.3开始引入的,以代替sort-merge和nested-loop join方式,提高效率。在CBO(hash join只有在CBO才可能被使用到)模式下,优化器计算代价时,首先会考虑hash join。
2012-04-09 11:06:25 451
转载 oracle 表连接方式详解
在查看sql执行计划时,我们会发现表的连接方式有多种,本文对表的连接方式进行介绍以便更好看懂执行计划和理解sql执行原理。 一、连接方式: 嵌套循环(Nested Loops (NL)) (散列)哈希连接(Hash Join (HJ)) (归并)排序合并连接(Sort Merge Join (SMJ) ) 二、
2012-04-09 10:57:45 279
转载 oracle 执行计划(explain plan)说明
基于oracle的应用系统很多性能问题,是由应用系统sql性能低劣引起的,所以,sql的性能优化很重要,分析与优化sql的性能我们一般通过查看该sql的执行计划,本文就如何看懂执行计划,以及如何通过分析执行计划对sql进行优化做相应说明。一、什么是执行计划(explain plan) 执行计划:一条查询语句在oracle中的执行过程或访问路径的描述。二、如何查看
2012-04-09 10:50:23 1103 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人