赞
踩
大数据技术出现后,很多拥有海量数据的公司开始选择像Hadoop的方式来存储海量数据
Hadoop使用分布式文件系统HDFS来存储海量数据,并使用 MapReduce 来处理。Hadoop擅长于存储各种格式的庞大的数据,任意的格式甚至非结构化的处理
Hadoop主要是实现批量数据的处理,并且通过顺序方式访问数据
要查找数据必须搜索整个数据集, 如果要进行随机读取数据,效率较低
NoSQL是一个通用术语,泛指一个数据库并不是使用SQL作为主要语言的非关系型数据库
HBase是BigTable的开源java版本。是建立在HDFS之上,提供高可靠性、高性能、列存储、可伸缩、实时读写NoSQL的数据库系统
HBase仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务
主要用来存储结构化和半结构化的松散数据
Hbase查询数据功能很简单,不支持join等复杂操作,不支持复杂的事务(行级的事务),从技术上来说,HBase更像是一个「数据存储」而不是「数据库」,因为HBase缺少RDBMS中的许多特性,例如带类型的列、二级索引以及高级查询语言等
Hbase中支持的数据类型:byte[]
与Hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加存储和处理能力,例如,把集群从10个节点扩展到20个节点,存储能力和处理能力都会加倍
HBase中的表一般有这样的特点
大:一个表可以有上十亿行,上百万列
面向列:面向列(族)的存储和权限控制,列(族)独立检索
稀疏:对于为空(null)的列,并不占用存储空间,因此,表可以设计的非常稀疏
不少的头条类、新闻类的的新闻、网页、图片存储在HBase之中,一些病毒公司的病毒库也是存储在HBase之中
HBase之上有OpenTSDB模块,可以满足时序类场景的需求
用户画像,是一个比较大的稀疏矩阵,蚂蚁金服的风控就是构建在HBase之上
主要是轨迹、气象网格之类,滴滴打车的轨迹数据主要存在HBase之中,另外在技术所有大一点的数据量的车联网企业,数据都是存在HBase之中
Kylin一个cube分析工具,底层的数据就是存储在HBase之中,不少客户自己基于离线计算构建cube存储在hbase之中,满足在线报表查询的需求
在电信领域、银行领域,不少的订单查询底层的存储,另外不少通信、消息同步的应用构建在HBase之上
典型的应用就是xx朋友圈类似的应用,用户可以随时发布新内容,评论、点赞。
之上有Phoenix的插件,可以满足二级索引、SQL的需求,对接传统数据需要SQL非事务的需求
存储爬虫数据
海量数据备份
短网址
…
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。