2013年11月25日

Hash函数

摘要: 简介 哈稀函数按照定义可以实现一个伪随机数生成器(PRNG),从这个角度可以得到一个公认的结论:哈希函数之间性能的比较可以通过比较其在伪随机生成方面的比较来衡量。 一些常用的分析技术,例如泊松分布可用于分析不同的哈希函数对不同的数据的碰撞率(collision rate)。一般来说,对任意一... 阅读全文

posted @ 2013-11-25 12:42 代码王子 阅读(266) 评论(0) 推荐(0)

熵推导

摘要: 信息论 信息是关于事物的运动状态和规律的认识,它可以脱离具体的事物而被摄取、传输、存贮、处理和变换。 信息论,就是用数理统计方法研究信息的基本性质以及度量方法,研究最佳解决信息的摄取、传输、存贮、处理和变换的一般规律的科学。它的成果将为人们广泛而有效地利用信息提供基本的技术方... 阅读全文

posted @ 2013-11-25 12:42 代码王子 阅读(639) 评论(0) 推荐(0)

提高HBase写性能

摘要: 以下为使用hbase一段时间的三个思考,由于在内存充足的情况下hbase能提供比较满意的读性能,因此写性能是思考的重点。希望读者提出不同意见讨论 1 autoflush=false的影响 无论是官方还是很多blog都提倡为了提高hbase的写入速度而在应用代码中设置autoflu... 阅读全文

posted @ 2013-11-25 12:41 代码王子 阅读(137) 评论(0) 推荐(0)

HBase运维经验

摘要: http://www.qconbeijing.com/download/Nicolas.pdf 重点看了下facebook做了哪些改进以及他们的运维经验,比较重要的有以下几点: 改进: 1 加强了行级的ACID约束 2 改善了数据的分布规则,可以配置hdfs的replicas所在节点 3 改... 阅读全文

posted @ 2013-11-25 12:41 代码王子 阅读(84) 评论(0) 推荐(0)

HBase缓存的使用

摘要: hbase中的缓存分了两层:memstore和blockcache。 其中memstore供写使用,写请求会先写入memstore,regionserver会给每个region提供一个memstore,当memstore满64MB以后,会启动flush刷新到磁盘。当memstor... 阅读全文

posted @ 2013-11-25 12:41 代码王子 阅读(220) 评论(0) 推荐(0)

HDFS APPEND性能测试

摘要: hbase在写入数据之前会先写hlog,hlog目前是sequencefile格式,采用append的方式往里追加数据。之前团队的同学测试关闭hlog会一定程序上提升写hbase的稳定性。而在我之前的想象中,hlog的写入速度应该是稳定的。于是写了个append程序专门测试hdfs的append... 阅读全文

posted @ 2013-11-25 12:41 代码王子 阅读(343) 评论(0) 推荐(0)

Hbase问题

摘要: Q: .meta.和root表是否要分裂? A: meta表和root表不会分裂,代码中有所判断。 Q: 如果不分裂,那么都只有1个region? A: ... (查看代码后)A: meta和root表是要split的,.meta.和-root-不split是在0.20... 阅读全文

posted @ 2013-11-25 12:41 代码王子 阅读(95) 评论(0) 推荐(0)

HBase中缓存的优先级

摘要: ava代码 // Instantiate priority buckets BlockBucket bucketSingle = new BlockBucket(bytesToFree, blockSize, singleSize()); BlockBucket bucket... 阅读全文

posted @ 2013-11-25 12:40 代码王子 阅读(130) 评论(0) 推荐(0)

HBase中创建索引

摘要: hbasene(https://github.com/akkumar/hbasene)是开源项目,在hbase存储上封装使用Lucene来创建索引,代码API非常简单,熟悉lucene的朋友可以很方便地创建。 以下为测试代码,完成读取一张hbase上记录url和用户id的表,对其... 阅读全文

posted @ 2013-11-25 12:40 代码王子 阅读(232) 评论(0) 推荐(0)

多Region下HBase写入问题

摘要: 最近在集群上发现hbase写入性能受到较大下降,测试环境下没有该问题产生。而生产环境和测试环境的区别之一是生产环境的region数量远远多于测试环境,单台regionserver服务了约3500个region。 通过jstack工具检查到大半写入线程BLOCKED状态在"publ... 阅读全文

posted @ 2013-11-25 12:40 代码王子 阅读(228) 评论(0) 推荐(0)

Zookeeper管理多个HBase集群

摘要: zookeeper是hbase集群的"协调器"。由于zookeeper的轻量级特性,因此我们可以将多个hbase集群共用一个zookeeper集群,以节约大量的服务器。多个hbase集群共用zookeeper集群的方法是使用同一组ip,修改不同hbase集群的"zookeeper.zno... 阅读全文

posted @ 2013-11-25 12:40 代码王子 阅读(218) 评论(0) 推荐(0)

disable table 失败的处理

摘要: 相信每一个维护hbase集群的运维人员一定碰到过disable失败,陷入无穷的"Region has been PENDING_CLOSE for too long..."状态,此时没有什么好的办法处理。经常需要重启集群。 这个问题产生的原因非常讨厌,经过一段时间的分析和验证,得到了根本... 阅读全文

posted @ 2013-11-25 12:40 代码王子 阅读(340) 评论(0) 推荐(0)

region server 中的OOM原因

摘要: 首先要清楚reginserver中内存是如何使用的。 reginserver中内存总体分成三部分:blocksize专供读使用的内存,memstore供读写使用的内存,其它内存。 其中前两者的大小在配置中分别通过hfile.block.cache.size以及hbase.re... 阅读全文

posted @ 2013-11-25 12:39 代码王子 阅读(205) 评论(0) 推荐(0)

HBase数据字典

摘要: 数据字典用来存储了系统的元数据。HBase的元数据包括:用户表的定义、表的切分方案、分片的分布情况(即分片分布在哪个regionserver上)、分片对应的数据文件和日志文件。其中,分片和数据文件的映射关系是通过目录映射实现的,即不同的分片的数据文件存储在不同的目录中,其中目录的名称是分片的名... 阅读全文

posted @ 2013-11-25 12:31 代码王子 阅读(434) 评论(0) 推荐(0)

HBase丢失数据的故障和原因分析

摘要: hbase的稳定性是近期社区的重要关注点,毕竟稳定的系统才能被推广开来,这里有几次稳定性故障和大家分享。 第一次生产故障的现象及原因 现象: Java代码 1 hbase发现无法写入 2 通过hbck检测发现.META.表中出现空洞,具体log是:;Cha... 阅读全文

posted @ 2013-11-25 12:31 代码王子 阅读(839) 评论(0) 推荐(0)

HBase多次加载-ROOT-和META的bug

摘要: 执行以下case可以见到root或meta被加载两次: 1 kill掉root和meta表所在的rs2 start该台rs3 立即再次kill掉这台rs4 立即再次start该台rs 原因: 当ROOT表和META表所在的server如果挂掉了,不管是重启这台rs还是等待它... 阅读全文

posted @ 2013-11-25 12:30 代码王子 阅读(149) 评论(0) 推荐(0)

Lease问题

摘要: 经过查明原来是lease引发的问题。不过查问题的过程让我们耽误了很多修复故障的时间,很是不爽。 起因:datanode和regionserver以及master同时挂掉 现象:datanode重启后,regionserver重启不久,多台regionserver相继即挂掉,log显示: ... 阅读全文

posted @ 2013-11-25 12:30 代码王子 阅读(106) 评论(0) 推荐(0)

HBase写被block的分析

摘要: 一个线上集群出现莫名奇妙不能写入数据的bug,log中不断打印如下信息: 引用 2011-11-09 07:35:45,911 INFO org.apache.hadoop.hbase.regionserver.HRegion: Blocking updates for 'IPC Server... 阅读全文

posted @ 2013-11-25 12:30 代码王子 阅读(145) 评论(0) 推荐(0)

局部加权回归

摘要: 局部加权紧接着上面的线性回归中参数求解来继续讲吧。还是以上面的房屋价格的预测,它的中心思想是在对参数进行求解的过程中,每个样本对当前参数值的影响是有不一样的权重的。比如上节中我们的回归方程为(这个地方用矩阵的方法来表示Ɵ表示参数,i表示第i个样本,h为在Ɵ参数下的预测值): 我们的目标是... 阅读全文

posted @ 2013-11-25 12:29 代码王子 阅读(197) 评论(0) 推荐(0)

多元线性回归

摘要: 1、多元线性回归模型 假定被解释变量与多个解释变量之间具有线性关系,是解释变量的多元线性函数,称为多元线性回归模型。即 (1.1) 其中为被解释变量,为个解释变量,为个未知参数,为随机误差项。 被解释变量的期望值与解释变量的线性方程为: (1.2) 称为多元总体线性回归方程,简称总体回归方程... 阅读全文

posted @ 2013-11-25 12:29 代码王子 阅读(2980) 评论(0) 推荐(0)

导航