随笔分类 - HBase
摘要:1.背景 由于种种原因,最近将核心业务生产使用的HBase迁移到了云上的弹性MapReduce(EMR)集群上,并使用了EMR的HBase组件默认参数配置。 结果在流量高峰期出现了宿主机故障,挂掉了两个core节点(部署了region server和datanode),大量region rit,花了
阅读全文
摘要:本文主要介绍在压测HBase的二级索引phoenix时踩的一个坑,使用时需要特别注意,而且背后的原因也很有意思,可以看出HBase和Phoenix对元数据设计上的差异。 1.问题介绍 在做phoenix压测时发现一个奇怪的现象。 压测请求分布非常均匀,但是有一台机器的流量、负载都明显高于其他机器。
阅读全文
摘要:Phoenix是构建在HBase上的一个SQL层,能让我们用标准的JDBC APIs对HBase数据进行增删改查,构建二级索引。当然,开源产品嘛,自然需要注意“避坑”啦,阿丸会把使用方式和最佳实践都告诉你。 1.什么是Phoenix Phoenix完全使用Java编写,将SQL查询转换为一个或多个H
阅读全文
摘要:HBase一个令人惋惜的地方,就是不支持二级索引。因此,社区有了很多补充方案来填补HBase的二级索引能力的缺陷。 今天,我们就来看看有哪些二级索引方案,通过对比各个方案的优缺点,并结合我们的具体场景做出二级索引方案选型。 1.为什么需要二级索引 HBase系统单纯从解决大数据实时读写问题角度出发,
阅读全文
摘要:在HBase1.1.0发布之前,HBase同一集群上的用户、表都是平等的,大家平等共用集群资源。容易碰到两个问题: 一是某些业务较其他业务重要,需要在资源有限的情况下优先保证核心重要业务的正常运行 二是有些业务QPS常常很高,占用大量系统资源,导致其他业务无法正常运转。 这是典型的多租户问题。因此,
阅读全文
摘要:在之前学习MySQL的时候,我们知道存储引擎常用的索引结构有B+树索引和哈希索引。 而对HBase的学习,也离不开索引结构的学习,它使用了一种LSM树((Log-Structured Merge-Tree))的索引结构。 下面,我们就结合HBase的实现,来深入了解HBase的核心数据结构与算法,包
阅读全文
摘要:HBase作为一个分布式存储的数据库,它是如何保证可用性的呢?对于分布式系统的CAP问题,它是如何权衡的呢? 最重要的是,我们在生产实践中,又应该如何保证HBase服务的高可用呢? 下面我们来仔细分析一下。 1. 什么是分布式系统的CAP? CAP是指一致性(Consistency)、可用性(Ava
阅读全文
摘要:本文将介绍HBase的客户端连接实现,并说明如何正确管理HBase的连接。 最近在搭建一个HBase的可视化管理平台,搭建完成后发现不管什么查询都很慢,甚至于使用api去listTable都要好几秒。 经过一番排查发现,是每次请求的时候,都去临时创建了一个connection,而创建connecti
阅读全文
摘要:前面,我们已经打下了很多关于HBase的理论基础,今天,我们主要聊聊在实际开发使用HBase中,需要关注的一些最佳实践经验。 1.Schema设计七大原则 1)每个region的大小应该控制在10G到50G之间; 2)一个表最好保持在 50到100个 region的规模; 3)每个cell最大不应该
阅读全文
摘要:HBase拥有出色的扩展性,其中最依赖的就是region的自动split机制。 1.split触发时机与策略 前面我们已经知道了,数据写入过程中,需要先写memstore,然后memstore满了以后,flush写入磁盘,形成新的HFile文件。 当HFile文件数量不断累积,Region serv
阅读全文
摘要:先给结论吧:HBase利用compaction机制,通过大量的读延迟毛刺和一定的写阻塞,来换取整体上的读取延迟的平稳。 1.为什么要compaction 在上一篇 HBase读写 中我们提到了,HBase在读取过程中,会创建多个scanner去抓去数据。 其中,会创建多个storefilescann
阅读全文
摘要:在了解HBase架构的基础上,我们需要进一步学习HBase的读写过程,一方面是了解各个组件在整个读写过程中充当的角色,另一方面只有了解HBase的真实请求过程,才能为后续的正确使用打下初步基础,毕竟,除了会使用api,你还得知道怎么能写得更快,怎么查得更快。 1.首次读写的基本过程 在上一篇 深入H
阅读全文
摘要:最近公司正好准备投入HBase,因此做了一些基础学习准备,所以先暂时停止MySQL的更新,把HBase的学习心得跟大家分享一下,接下来一段时间都会发布HBase相关内容。 在学的过程中,发现跟MySQL相互对比,能更深入地了解存储组件的设计。有任何问题或者想看的知识点,欢迎留言跟我沟通。 1.前言
阅读全文
摘要:在网上看过很多HBaes架构相关的文章,内容深浅不一,直到发现了一篇MapR官网的文章https://mapr.com/blog/in-depth-look-hbase-architecture/#.VdMxvWSqqko,写得实在太sheng dong了。 因此,以这篇文章作为骨架,翻译了许多原文
阅读全文

浙公网安备 33010602011771号