首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

HBase vs Redis

HBase 对比 Redis https://db-engines.com/en/system/HBase%3BRedis 二者都属于NoSQL,但又有很大不同: HBase是一个分布式的、面向列的开源数据库...hbase采用了LSM结构,写快读慢,hbase读延时在一般在几毫秒,redis读延时在几十微秒,性能相差比较大....https://wingsxdu.com/post/database/leveldb/#gsc.tab=0 2.数据类型:hbaseredis都支持kv类型,但redis支持更丰富的集合类型list,...set等 3.数据量:redis在热数据比内存大时,性能下降比较厉害,非常依赖内存,hbase不存在这问题 4.部署复杂度:hbase部署复杂,依赖hadoop,zookeeper,redis部署简单...如果人力允许,完全可以用hbase+redis实现数据仓库加缓存数据库,速度和扩展性都兼顾。

1.5K30

NoSQL(MongoDB,Hbase,Redis)介绍

HBase   HBase 是 Apache Hadoop 中的一个子项目,属于 bigtable 的开源版本,所实现的语言为Java(故依赖 Java SDK)。...HBase 依托于 Hadoop 的 HDFS(分布式文件系统)作为最基本存储基础单元。...4.HBase 适用场景 bigtable类型的数据存储; 对数据有版本查询需求; 应对超大数据量要求扩展简单的需求。...Redis   Redis 是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。目前由VMware主持开发工作。...Redis 优势 非常丰富的数据结构; Redis提供了事务的功能,可以保证一串 命令的原子性,中间不会被任何操作打断; 数据存在内存中,读写非常的高速,可以达到10w/s的频率。

1.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

Hadoop、Spark、HBaseRedis的适用性讨论

这儿我就结合我这几年在Hadoop等大数据方向的工作经验,与大家讨论一下Hadoop、Spark、HBaseRedis等几个主流大数据技术的使用场景(首先声明一点,本文中所指的Hadoop,是很“狭义...我这几年实际研究和使用过大数据(包含NoSQL)技术包括Hadoop、Spark、HBaseRedis和MongoDB等,这些技术的共同特点是不适合用于支撑事务型应用,特别是与“钱”相关的应用,如“订购关系...Redis HBaseRedis在功能上比较类似,比如它们都属于NoSQL级别的数据库,都支持数据分片等,关键的不同点实际上只有一个:对HBase而言,一旦数据被成功写入,从原理上看是不会丢的,因为它有...通常,Redis的读写性能在100,000 ops/s左右,时延一般为10~70微妙左右[4][5];而HBase的单机读写性能一般不会超过1,000ops/s,时延则在1~5毫秒之间[3]。...从上述的功能和性能比较上,我们就很容易的总结出HBaseRedis各自的适用范畴: 1)当用来支撑简单“消息类”应用时,如果数据失败是不能容忍的,那就用只能用HBase;如果需要一个高性能的环境,而且能够容忍一定的数据丢失

2K50

Hadoop、Spark、HBaseRedis的适用性讨论

这儿我就结合我这几年在Hadoop等大数据方向的工作经验,与大家讨论一下Hadoop、Spark、HBaseRedis等几个主流大数据技术的使用场景(首先声明一点,本文中所指的Hadoop,是很“狭义...我这几年实际研究和使用过大数据(包含NoSQL)技术包括Hadoop、Spark、HBaseRedis和MongoDB等,这些技术的共同特点是不适合用于支撑事务型应用,特别是与“钱”相关的应用,如“订购关系...Redis HBaseRedis在功能上比较类似,比如它们都属于NoSQL级别的数据库,都支持数据分片等,关键的不同点实际上只有一个:对HBase而言,一旦数据被成功写入,从原理上看是不会丢的,因为它有...通常,Redis的读写性能在100,000 ops/s左右,时延一般为10~70微妙左右[4][5];而HBase的单机读写性能一般不会超过1,000ops/s,时延则在1~5毫秒之间[3]。...从上述的功能和性能比较上,我们就很容易的总结出HBaseRedis各自的适用范畴: 1)当用来支撑简单“消息类”应用时,如果数据失败是不能容忍的,那就用只能用HBase;如果需要一个高性能的环境,而且能够容忍一定的数据丢失

82970

Redis、传统数据库、HBase以及Hive的区别

(1)Redis 分布式缓存,基于内存,强调缓存,支持数据持久化,支持事务操作,NoSQL 类型的Key/vale数据库,同时支持List、Set等更丰富的类型。...(2)hbase HBase是建立在HDFS之上,提供高可靠性的列存储,实时读写的数据库系统。它介于Nosql和关系型数据库之间,仅通过主键和主键的range来检索数据,仅支持单行事务。...3.区别 这里可以分为两大类:关系型数据和Hive都是支持SQL引擎的数据库;RedisHbase都是NoSQL 类型的Key/vale数据库,支持简单的行列操作,不支持SQL引擎。...K/V数据库中,Redis的读写性能更高,通常是几十微秒,而Hbase是几毫秒;Redis不仅支持K/V操作,也支持List、Set等更丰富的类型;Redis因为存储在内存中所以数据量较小,而Hbase...HBase适合做大数据的持久存储,而Redis比较适合做缓存。

1.1K10

HBaseHBase之what

来加速Hbase的访问,比如cache的.META.元数据的信息。...流程 老的Region寻址方式 在Hbase 0.96版本以前,Hbase有两个特殊的表,分别是-ROOT-表和.META.表,其中-ROOT-的位置存储在ZooKeeper中,-ROOT-本身存储了...(3)Hlog数量上限 前面说到Hlog为了保证Hbase数据的一致性,那么如果Hlog太多的话,会导致故障恢复的时间太长,因此Hbase会对Hlog的最大个数做限制。...该参数为:hbase.hregion.majorcompaction.jitter 具体算法为: hbase.hregion.majorcompaction参数的值乘于一个随机分数,这个随机分数不能超过...通过hbase.hregion.majorcompaction参数的值加上或减去hbase.hregion.majorcompaction参数的值乘于一个随机分数的值就确定下一次大合并的时间区间。

3.3K40

HBaseHBase之how

HBase Shell 常用命令: 注意:HBase在linux命令行下操作时,区分大小写 HBase API HBase 提供Java方式的原生接口,其中需要注意的有: (1)创建Connection...HBase Rest Gateway HBase附带的REST服务器,该服务器将HBase表,行,单元和元数据作为URL指定的资源公开。...HBase到Hive 将HBase的数据作为数据源,建立Hive外部表关联到HBase,利用Hive的HQL查询HBase数据,更进一步,将Hive的元数据同步到Impala,利用Impala的SQL...这是HBase二级索引出现的背景。即二级索引是为了让HBase能够提供更多维度的查询能力。...注意:HBase原生并不支持二级索引方案,但基于HBase的KeyValue数据模型与API,可以轻易地构建出二级索引数据。

3.2K20

Hbase(四):Hbase原理

Hbase(四):Hbase原理 Hbase的工作方式 region的分裂和结构 hbase表中的数据按照行键的字典顺序排序 hbase表中的数据按照行的的方向切分为多个region 最开始只有一个...写入数据到hdfs的过程其实是不断追加hfile的过程 Hbase写入数据 数据写入hbase时 先在hlog中记录日志 再修改memstore 直接返回成功 这样 不需要真正等待写入hdfs的过程 所以很快...由于hbase中的数据天然排序 再加上索引 整个查询也可以非常的快 Hbase中的region的寻址 在hbase中有一个hbase:meta表,其中存放了 表和region和regionSever 之间的对应关系信息...​ 支持增、删、读、改、顺序扫描操作 ​ 牺牲了一部分读的性能换取了高效写入能力 Hbase系统架构 hbase中的老大叫hmaster 小弟叫hregionServer 客户端叫Client...Zookeepr为hbase提供集群协调 client 访问hbase 保留一些缓存信息提升效率 zookeeper 保证任何时候集群只有一个HMaster 监控regionServer的状态

3.9K10

MongoDB、HBaseRedis 等 NoSQL 优劣势、应用场景

主流nosql的详解:MongoDB、HbaseRedis ? MongoDB MongoDB 是一个高性能,开源,无模式的文档型数据库,开发语言是C++。...HBase HBase 是 Apache Hadoop 中的一个子项目,属于 bigtable 的开源版本,所实现的语言为Java(故依赖 Java SDK)。...HBase 依托于 Hadoop 的 HDFS(分布式文件系统)作为最基本存储基础单元。...Redis Redis 是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。目前由VMware主持开发工作。...Redis 优势 1)非常丰富的数据结构; 2)Redis提供了事务的功能,可以保证一串 命令的原子性,中间不会被任何操作打断; 3)数据存在内存中,读写非常的高速,可以达到10w/s的频率。

1.6K40

HBase篇--HBase常用优化

二.具体优化 1.表的设计  1.1 预分区 默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region...因此Hbase的更新其实是不断追加的操作。...的应用场景,可以考虑在应用程序中做缓存,当有新的查询请求时,首先在缓存中查找,如果存在则直接返回,不再查询HBase;否则对HBase发起读请求查询,然后在应用程序中将查询结果缓存起来。...HTable和HTablePool使用注意事项 HTable和HTablePool都是HBase客户端API的一部分,可以使用它们对HBase表进行CRUD操作。...使用solr和hbase整合完成全文搜索。 a) 使用MR批量读取hbase中的数据,在solr里面建立索引(no  store)之保存rowkey的值。

5.9K50

Hbase入门(一)——初识Hbase

而这种特性使得Hbase对于实时计算体系的事件存储有天然的较好的支持。这使得Hbase在实时流式计算中也扮演者重要的角色。 ?...Hbase使用Java编写,还是一种NoSQL数据库,这些特性决定了Hbase独特的应用场景。...的表模型与关系型数据库的表模型不同: ​ Hbase的表没有固定的字段定义; ​ Hbase的表中每行存储的都是一些key-value对; ​ Hbase的表中有列族的划分,用户可以指定将哪些kv...中的数据,包含行键,包含key,包含value,都是byte[ ]类型,hbase不负责为用户维护数据类型; ​ HBASE对事务的支持很差; HBASE相比于其他nosql数据库(mongodb、redis...通过将数据增量的存入Hbase,并在流式处理中实时查询Hbase,结合历史得到最终的分析结果。

3.1K30

Hbase(二)Hbase常用操作

Hbase(二):Hbase常用操作 常用shell命令 hbase shell命令 描述 alter 修改列族(column family)模式 count 统计表中行的数量 create 创建表 describe...行,列对应的值,另外也可以指定时间戳的值) deleteall 删除指定行的所有元素值 disable 使表无效 drop 删除表 enable 使表有效 exists 测试表是否存在 exit 退出hbase...shell get 获取行或单元(cell)的值 incr 增加指定表,行或列的值 list 列出hbase中存在的所有表 put 向指向的表单元添加值 tools 列出hbase所支持的工具 scan...通过对表的扫描来获取对用的值 status 返回hbase集群的状态信息 shutdown 关闭hbase集群(与exit不同) truncate 重新创建指定表 version 返回hbase版本信息

3.1K10

使用 HBase - HBase Shell 命令

数人之道原创文章,转载请关注本公众号联系我们 HBase Shell 命令文章大纲 HBase 数据库默认的客户端程序是 HBase Shell,它是一个封装了 Java 客户端 API 的 JRuby...用户可以在 HBase 的 HMaster 主机上通过命令行输入 hbase shell,即可进入 HBase 命令行环境,以命令行的方式与 HBase 进行交互。...使用 quit 或 exit 命令可退出 HBase 命令行环境。 [hadoop@hadoop100 ~]$ hbase shell 下面介绍部分常用的 HBase Shell 操作命令。...1 HBase Shell 数据操作命令 这部分命令主要涉及对 HBase 的命名空间、表及数据的增删改查操作。...下面的操作以《初识 HBase - HBase 基础知识》3.2 节中的数据为基础进行。 图1:HBase Shell 操作基础数据 注意:数据会根据需要进行调整。

10.5K31

HBase漫谈 | HBase技术选型准则

HBase 的主要特性 HBase包含很多特性,这里列举了HBase的一些关键特性: 强一致性读写:HBase并不是最终一致性,而是强一致性的系统,这使得HBase非常适合做高速的聚合操作。...什么时候使用 HBase HBase作为一款NoSQL数据库,前面也提及了并不能解决所有问题。...3、能够容忍NoSQL短板 前面提及了NoSQL并不能解决所有问题,HBase也是一样,如果业务场景是需要事务支持、表与表的关联查询等,不建议使用HBase。...4、数据分析需求并不多 虽然说HBase是一个面向列的数据库,但它有别于真正的列式存储系统比如Parquet、Kudu等,再加上自身存储架构的设计,使得HBase并不擅长做数据分析,或者说数据分析是HBase...HBase 的使用场景 由于HBase丰富的特性,加上自身的海量数据存储能力与超大规模并发访问能力,使得HBase应用非常广泛。

3.1K10
领券