关闭

HBase连接池 -- HTablePool被Deprecated以及可能原因是什么

说明: 最近两天在调研HBase的连接池,有了一些收获,特此记录下来。 本文先将官方文档(http://hbase.apache.org/book.html)9.3.1.1节翻译,方便大家阅读,然后查阅了关键类HConnectionManager的Developer API(http://hbase.apache.org/devapidocs/index.html) 做了一些总结。  ...
阅读(863) 评论(0)

Storm常见模式------TimeCacheMap

Storm常见模式------TimeCacheMap Storm中使用一种叫做TimeCacheMap的数据结构,用于在内存中保存近期活跃的对象,它的实现非常地高效,而且可以自动删除过期不再活跃的对象。 TimeCacheMap使用多个桶buckets来缩小锁的粒度,以此换取高并发读写性能。下面我们来看看TimeCacheMap内部是如何实现的。 1. 实现原理 桶链表:...
阅读(409) 评论(0)

Storm源码分析汇总

Storm Features Storm 简介 Storm Topology的并发度 Storm - Guaranteeing message processing Storm - Transactional-topologies Twitter Storm – DRPC Storm 多语言支持   Storm Starter Storm st...
阅读(685) 评论(0)

Zero Copy 简介

最近在看Kafka的设计原理,kafka在数据传输时采用了zero copy技术: 使用Zero copy方式在内核层直接将文件内容传送给网络Socket,避免应用层数据拷贝,减小IO开销。 关于Zero copy,更多请点击Efficient data transfer through zero copy 下面是一篇关于zero copy的文章,通俗易懂. http://blog...
阅读(1938) 评论(0)

HBase StoreFile Compaction

Store File的合并策略比较复杂,涉及多个参数,合并策略的好坏,直接影响HBase的读写性能. 发现这篇博文:http://blog.csdn.net/azhao_dn/article/details/8867036 对Compaction描述的言简意赅: hbase为了防止小文件(被刷到磁盘的menstore)过多,以保证保证查询效率,hbase需要在必要的时候将这些小的stor...
阅读(722) 评论(1)

线上Spark处理Bzip2引出Hadoop Bzip2线程安全问题

我们的Hadoop生产环境有两个版本,其中一个是1.0.3,为了支持日志压缩和split,我们添加了hadoop-1.2中关于Bzip2压缩的feature. 一切运行良好。 为了满足公司对迭代计算的需求(复杂HiveSQL,广告推荐算法,机器学习 etc), 我们构建了自己的Spark集群,最初是Standalone Mode,版本spark-0.9.1,支持Shark。 上线后,问题接踵而...
阅读(1262) 评论(0)

我读过最好的Epoll模型讲解

首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。     不管是文件,还是套接字,还是管道,我们都可以把他们看作流。     之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数据,但是流中还没有数据,(典型的例子为,客户端要...
阅读(10366) 评论(2)

一次JobTracker拥堵问题排查过程

Hadoop版本 1.0.3 问题描述: 随着每日MR作业数目渐增,用户反映提交作业时经常阻塞,也就是JobTracker发生了拥堵。这种情况开始频繁出现,我们调大JobTracker端的RPC Handler线程个数,并定时对JobTracker的栈信息进行分析,如果RPC Handler线程全部被BLOCKED住了,就Dump出栈信息,并及时发出报警。 原因及解决办法: 经过分析几次抓...
阅读(671) 评论(0)

Hadoop0.21内存泄漏问题:数据块映射管理的一个bug

我们的HDFS生产环境是Hadoop-0.21,机器规模200台,block在7KW左右. 集群每运行几个月,NameNode就会频繁FGC,最后不得不restart NameNode. 因此怀疑NameNode存在内存泄漏问题,我们dump出了NameNode进程在重启前后的对象统计信息。 07-10重启前: num     #instances         #byt...
阅读(850) 评论(0)

关于HashCode

有许多人学了很长时间的Java,但一直不明白hashCode方法的作用,  首先,想要明白hashCode的作用,你必须要先知道Java中的集合。    总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set。  前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。  那么这里就有一个比较严重的问题了:要想保证元素不重复,可两个元素是否...
阅读(418) 评论(0)

HBase内存结构之跳表数据结构浅析

最近学习HBase源码时发现HRegion在sotre管理上用到了跳表数据结构ConcurrentSkipListMap: ConcurrentSkipListMap有几个ConcurrentHashMap 不能比拟优点: 1、ConcurrentSkipListMap 的key是有序的。 2、ConcurrentSkipListMap 支持更高的并发。...
阅读(1204) 评论(0)

多线程开发之Object.wait() notify() notifyall()

参考文献: object.wait()和object.notify()和object.notifyall() 正文 wait、notify和notifyAll方法是Object类的final native方法。所以这些方法不能被子类重写,Object类是所有类的超类,因此在程序中有以下三种形式调用wait等方法。 wait();//方式1: this.wait();//方式...
阅读(456) 评论(0)

HBase中MVCC的实现机制及应用情况

本文转载自:http://www.cnblogs.com/panfeng412/p/mvcc-implementation-mechanism-in-hbase.html MVCC(Multi-Version Concurrent Control),即多版本并发控制协议,广泛使用于数据库系统。本文将介绍HBase中对于MVCC的实现及应用情况。 MVCC基本原理 在介绍MVCC概念之...
阅读(517) 评论(0)

MapReduce:详解Shuffle(copy,sort,merge)过程

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

HBase源码解析(二) HMaster主要类成员解析

本文基于HBase-0.94.1分析HMaster的主要类成员. HMaster是HBase主/从集群架构中的中央节点。通常一个HBase集群存在多个HMaster节点,其中一个为Active Master,其余为Backup Master. HMaster的主要类成员如下: 1.ZooKeeper侦听 这些类都继承自ZookeeperListener. /**************...
阅读(1145) 评论(0)
242条 共17页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:247933次
    • 积分:4491
    • 等级:
    • 排名:第7043名
    • 原创:113篇
    • 转载:128篇
    • 译文:1篇
    • 评论:38条
    文章分类
    最新评论