LSM-Tree Google的BigTable架构在分布式结构化存储方面大名鼎鼎,其中的MergeDump模型在读写之间找到了一个较好的平衡点,很好的解决了web scale数据的读写问题。MergeDump的理论基础是LSM-Tree (Log-Structured Merge-Tree), LSM思想非常朴素,就是将对数据的更改hold在内存中,达到指定的threadhold后将该批更改批量写入到磁盘,在...
一些关于Hive的资料 这段时间忙的都没时间整理博客,这是一个不好的现象。整理了一下Hive的基础文档: FaceBook 镜像(被墙):http://mirror.facebook.com/facebook/hiveWiki 页面:http://wiki.apache.org/hadoop/Hive入门指南:http://wiki.apache.org/hadoop/Hive/GettingS...
关于MapReduce解析XML算法的一点构思 没想到Hadoop在解析XML时如此纠结,以至于新版api的mapreduce竟然放弃了XML格式的format以及reader,在老版(hadoop-0.19.*)的streaming模块提供了这样的api,由于我用的hadoop-0.20.23U1版本,因此需要把处理XML的几个类移植过来使用。 移植所带来的问题是各处依赖包,和各种api不兼容。没关系,我可以看一下源码,然后...
TCP-TIME_WAIT [size=small]近来网站随着访问量的增加,服务器的压力也随之上升,一个很明显的状况便是服务端产生了大量的TIME_WAIT状态,它究竟是什么、对系统有何影响、为什么很多人对它如此敏感?Google一下TIME_WAIT会有成千上万的文章,但总是别人的,今天自己整理一下对TIME_WAIT的认识。[/size][size=small][b]TCP连接的终止[/b]TCP建立一...
FTP主动模式与FTP被动模式所需的端口 FTP是仅基于TCP的服务,不支持UDP。 与众不同的是FTP使用2个端口,一个数据端口和一个命令端口(也可叫做控制端口)。通常来说这两个端口是21(命令端口)和20(数据端口)。但FTP工作方式的不同,数据端口并不总是20。这就是主动与被动FTP的最大不同之处。(一)主动FTP主动方式的FTP是这样的:客户端从一个任意的非特权端口N(N>1024)连接到FTP服务器的命令端口,也...
Hadoop 坑爹的Be Replicated to 0 nodes, instead of 1 异常 [i][size=medium]有段时间不写博客了,感觉自己懒惰了不少,当然也是不够努力。近一年的时间一直在开发Hadoop基础应用。[/size][/i] 新的项目上线之后发现,有些会员上传资源到我们集群的速度,既然跟我们集群的吞吐量差不多,达到了70M+/s的速度。 在向集群put数据时,抛出了异常:[code="java"]org.apache.hadoop.ipc.RemoteE...
Hadoop 坑爹的Be Replicated to 0 nodes, instead of 1 异常 [i][size=medium]有段时间不写博客了,感觉自己懒惰了不少,当然也是不够努力。近一年的时间一直在开发Hadoop基础应用。[/size][/i] 新的项目上线之后发现,有些会员上传资源到我们集群的速度,既然跟我们集群的吞吐量差不多,达到了70M+/s的速度。 在向集群put数据时,抛出了异常:[code="java"]org.apache.hadoop.ipc.RemoteE...
Hadoop 客户端长期运行造成Datanode 连接泄露, 0.21.0 仍然存在这问题 上篇文章中说到我在Hadoop的50070的web页面增加了每个node的xceiver count,这个问题也是通过这个指标发现的。由于我的客户端从始至终都是一个Filesystem实例,因此在put完文件时java实例并不会销毁,客户端在运行较长时间后,发现每个Node的xceiver count值很高,当初以为是节点读写量比较大,但通过stack分析来看,却是写的线程比较多,难道又是...
影响Hadoop集群稳定性后续 由于目前处理的数据量还未称的上大规模,但每个节点的压力都不小,真是稳定压倒一切呀。在系统的作业过程中,不仅仅是关注磁盘使用量,CPU,Load,以及IOWait等指标,更重要的是深入到进程内部,来发现潜在的问题。近期一直在关注Hadoop系统的运行,我把dfshealth.jsp 的web管理页面加了一个新的指标,就是每个Node的Xceiver Count,该参数表示当前Node有多少线...
Hadoop-0.21.0今天3:20AM正式发布到Apache 可以说等待这个版本花儿都谢过两次了, 很开心今天早上收到来自Nabble, Tom White发布0.21.0 Hadoop的邮件。这个版本一共记录了超过1300个issues, 有improvements, new features, bug fixes and optimizations,下载地址:[url]http://hadoop.apache.org/common/release...
Plans for a 0.21 Hadoop Release 相信大家对Hadoop 0.21 的版本已经期待以久了吧,确实该版本在各个模块都有比较大的变化,单JIRA中的关于该版本的issues已经多达1000多。 至于0.21版本的变化大伙可以在releae中查看Changes Log,目前Tom White正在做RC版,可以在[url]http://people.apache.org/~tomwhite/hadoop-0.21.0-cand...
Linux查看CPU信息、机器型号等硬件信息 好记性真不如烂笔头, 对于一些不常用的命令还是记录一下吧。 查看CPU信息(型号)[code="shell"]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz[/code](看到有8个逻辑CPU, 也知...
线程安全性-volatile [b]引[/b]今晚读了新同事关于P2P做种的Java 代码,Code风格很漂亮,但仔细多看几眼,就会出现瑕疵。其中有一点关于线程的安全性,还是觉得有必要拿出来说说。代码的意图是利用一个标识性Boolean变量来控制一个线程的开启(Service)与结束(Shutdown)。A类:[code="java"]private Boolean isStarted = false;...
理解Load Average做好压力测试 SIP的第四期结束了,因为控制策略的丰富,早先的的压力测试结果已经无法反映在高并发和高压力下SIP的运行状况,因此需要重新作压力测试。跟在测试人员后面做了快一周的压力测试,压力测试的报告也正式出炉,本来也就算是告一段落,但第二天测试人员说要修改报告,由于这次作压力测试的同学是第一次作,有一个指标没有注意,因此需要修改几个测试结果。那个没有注意的指标就是load average,他和我一样开始只是注...
Hadoop-0.21 版本, NEW FEATURES-Append设计文档. 关于Hadoop的Append功能相信有很多人都会觉得非常有用, 自从0.18.3版本支持Append, Hadoop在此功能上付出了剧痛的代价, 后来版本中, Hadoop干脆加了fs.append.support选项来禁止Append功能的使用. 当时Append功能的bug主要有下面几个 [code="java"] * HDFS-142 “Datanode should...
Java nio的一个严重BUG 这个BUG会在linux上导致cpu 100%,使得nio server/client不可用,具体的详情可以看这里http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6403933。令人失望的是这个BUG直到jdk 6u4才解决,sun的拖沓让人难以相信。这个BUG在server端容易出现,因为server端有频繁地接入断开连接。 ...
New language features in Java 7 Here are 7 of the new features that have been completed:• Language support for collections• Automatic Resource Management• Improved Type Inference for Generic Instance Creation (diamond)• Unde...
Hadoop-HDFS DFSClient的严重bug 上一篇说到Shell 对自身DN造成的性能影响,本篇说一下它对DFSClient的冲击。 不知道有没有朋友像我这样病态的使用Hadoop, 我的DFSClient总是一直Running的,因为我需要它时刻为我做事,所以我不会轻意重新创建一个与NN相连的DFSClient。 闲言少述。 Shell 的执行对正在put文件的客户端会产生下列异常:1. DataStreamer Ex...
Hadoop-HDFS 对性能造成重大影响的神秘杀手-Shell. [i][size=medium]关于想了解HDFS的源码的朋友, 可以到蔡斌大哥那读读他的javaeye.[/size][/i]很抱歉, 我用了神秘杀手一词, 因为它实在害我太惨, 又花了好大精力才把它给拎出来。 :D 近来在测试Hadoop时, 使用NameNode身上的dfshealth.jsp 管理页面发现,DataNode在运行的过程中, Last Contact 参数时...
[JVM-翻译]揭开java.lang.OutOfMemoryError面纱之一 [b]Java.lang.OutOfMemoryError是什么[/b]Java.lang.OutOfMemory是java.lang.VirtualMachineError的一个子类,当Java虚拟机中断,或是超出可用资源时抛出。很明显,OutOfMemory是在Java虚拟机资源耗尽的情况下无法分配对象时抛出的。不过很不幸,Java的说明文档并没有对该异常进行进一步的阐述。 Jav...