最新 | 最热门 | 最高评价

+0  HBase在单Column和多Column情况下批量Put的性能对比分析

Tag: NoSQL存储 | column | HBase
原 攀峰 发于 2014年01月17日 19:12 | 点击: 2794 | 展开摘要
针对HBase在单column family单column qualifier和单column family多column qualifier两种场景下,分别批量Put写入时的性能对比情况,下面是结合HBase的源码来简单分析解释这一现象。

1. 测试结果

在客户端批量写入时,单列族单列模式和单列族多列模式的TPS和RPC次数相差很大,以客户端10个线程,开启WAL的两种模式下的测试数据为例,

单列族单列模式下,TPS能够达到12403.87,实际RPC次数为53次;

查看全文: http://www.udpwork.com/item/11580.html

+0  HBase一次慢查询请求的问题排查与解决过程

Tag: NoSQL存储 | Compact | HBase
原 攀峰 发于 2014年01月13日 17:07 | 点击: 3031 | 展开摘要
以下是我们对HBase集群一次慢查询请求问题的排查解决过程。

1. 发现问题

项目中有一张HBase表,每天凌晨以后会集中批量导入一批数据,导入数据量很大,在千万到亿的量级,然后白天为用户提供查询服务。某天突然发现, 该表按照各个region(共计256个)分别仅顺序scan少数几条数据时,部分region的查询请求的响应时间很慢,长达10秒甚至几十秒不等。

2. 排查问题

首先,通过查看HBase的region server监控界面,看到这张表的每个region下面

查看全文: http://www.udpwork.com/item/11525.html

+0  HBase集群出现NotServingRegionException问题的排查及解决方法

Tag: NoSQL存储 | 经验和技巧 | HBase | NotServingRegionException异常 | Region下线
原 攀峰 发于 2012年11月26日 10:45 | 点击: 2699 | 展开摘要
HBase集群在读写过程中,可能由于Region Split或Region Blance等导致Region的短暂下线,此时客户端与HBase集群进行RPC操作时会抛出NotServingRegionException异常,从而导致读写操作失败。这里根据实际项目经验,详细描述这一问题的发现及排查解决过程。

1. 发现问题

在对HBase集群进行压力测试过程中发现,当实际写入HBase和从HBase查询的量是平时的若干倍时(集群规模10~20台,每秒读写数据量在几十万条记录的

查看全文: http://www.udpwork.com/item/8745.html

+0  HBase解决Region Server Compact过程占用大量网络出口带宽的问题

Tag: NoSQL存储 | 经验和技巧 | Compact | HBase | Region Server
原 攀峰 发于 2012年11月26日 10:39 | 点击: 2260 | 展开摘要
HBase 0.92版本之后,Region Server的Compact过程根据待合并的文件大小分为small compaction和large compaction两种,由此可能导致在集群写入量大的时候Compact占用过多的网络出口带宽。本文将详细描述集群使用过程中遇到这一问题的排查过程及其解决方法。

1. 发现问题

HBase集群(版本为0.94.0)运行过程中,发现5台Region Server的网络出口带宽经常维持在100MB/s以上,接近到网卡的极限;同时Re

查看全文: http://www.udpwork.com/item/8746.html

+0  HBase Thrift 接口使用注意事项

Tag: NoSQL存储 | 经验和技巧 | HBase | Thrift
原 攀峰 发于 2012年11月26日 10:31 | 点击: 2333 | 展开摘要
这里结合对HBase Thrift接口(HBase版本为0.92.1)的使用经验,总结其中遇到的一些问题及其相关注意事项。

字节的存放顺序

HBase中,由于row(row key和column family、column qualifier、time stamp)是按照字典序进行排序的,因此,对于short、int、long等类型的数据,通过Bytes.toBytes(…)转换成byte数组后,必须按照大端模式(高字节在低地址,低字节在高地址)存放。对于value,也是

查看全文: http://www.udpwork.com/item/8747.html

+0  HBase Block Cache实现机制分析

Tag: NoSQL存储 | Block Cache | HBase
原 攀峰 发于 2012年11月26日 10:19 | 点击: 2105 | 展开摘要
本文结合HBase 0.94.1版本源码,对HBase的Block Cache实现机制进行分析,总结学习其Cache设计的核心思想。

1. 概述

HBase上Regionserver的内存分为两个部分,一部分作为Memstore,主要用来写;另外一部分作为BlockCache,主要用于读。

写请求会先写入Memstore,Regionserver会给每个region提供一个Memstore,当Memstore满64MB以后,会启动 flush刷新到磁盘。当Memstor

查看全文: http://www.udpwork.com/item/8748.html

+0  HBase如何合理设置客户端Write Buffer

Tag: NoSQL存储 | 经验和技巧 | HBase | Write Buffer
原 攀峰 发于 2012年11月26日 10:08 | 点击: 1907 | 展开摘要
HBase客户端API提供了Write Buffer的方式,即批量提交一批Put对象到HBase服务端。本文将结合HBase相关源码,对其进行深入介绍,分析如何在实际项目中合理设置和使用它。

什么时候需要Write Buffer?

默认情况下,一次Put操作即要与Region Server执行一次RPC操作,其执行过程可以被拆分为以下三个部分:

T1:RTT(Round-Trip Time),即网络往返时延,它指从客户端发送数据开始,到客户端收到来自服务端的确认,总共经

查看全文: http://www.udpwork.com/item/8749.html

+0  HBase性能优化方法总结

Tag: NoSQL存储 | 分布式 | 经验和技巧 | HBase | 性能优化
原 攀峰 发于 2012年03月08日 17:49 | 点击: 1892 | 展开摘要
本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法。有关HBase系统配置级别的优化,这里涉及的不多,这部分可以参考:淘宝Ken Wu同学的博客。

1. 表的设计

1.1 Pre-Creating Regions

默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些空的reg

查看全文: http://www.udpwork.com/item/8516.html
|<<<1>>>| 一共1页, 8条记录