Hadoop基础教程-第10章 HBase:Hadoop数据库(10.1 NoSQL介绍)(草稿)
来源:互联网 发布:学会linux能干什么 编辑:程序博客网 时间:2024/05/17 01:11
第10章 HBase:Hadoop数据库
10.1 NoSQL介绍
10.1.1 NoSQL简介
随着互联网技术(互联网+,物联网)发展,特别是大数据时代到来,我们需要存储处理更多数据,这种需求远远超出传统关系型数据库的存储和处理能力。
为了应对这种情形,我们需要不停的扩展。扩展分为两类:一种是纵向扩展,即购买更好的机器,更多的磁盘、更多的内存等等;另一种是横向扩展,即购买更多的机器组成集群。在巨大的规模下,纵向扩展发挥的作用并不是很大。首先单机器性能提升需要巨额的开销并且有着性能的上限,永远不可能使用一台机器支撑所有的负载。鉴于这种情况,我们需要新的数据库,因为关系数据库并不能很好的运行在集群上。不错你也可能会去搭建关系数据库集群,但是他们使用的是共享存储,这并不是我们想要的类型。于是就有了以Google、Facebook、Amazon这些试图处理更多传输所引领的NoSQL纪元。
NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,是一项全新的数据库革命性运动。
NoSQL数据库的四大分类:
(1)键值数据库。键值数据库就像在传统语言中使用的哈希表。你可以通过key来添加、查询或者删除数据,鉴于使用主键访问,所以会获得不错的性能及扩展性。代表产品Redis。
(2)列数据库。列存储数据库将数据储存在列族(column family)中,一个列族存储经常被一起查询的相关数据。代表产品HBase。
(3)文档型数据库。面向文档数据库会将数据以文档的形式储存。每个文档都是自包含的数据单元,是一系列数据项的集合。代表产品MongoDB。
(4)图数据库。图数据库允许我们将数据以图的方式储存。实体会被作为顶点,而实体之间的关系则会被作为边。代表产品Neo4J。
10.1.2 列数据库
列数据库,可称为列式数据库、列存储数据库。列数据库是以列相关存储架构进行数据存储的数据库,主要适合于批量数据处理和即时查询。相对应的是行式数据库,数据以行相关的存储体系架构进行空间分配,主要适合于大批量的数据处理,常用于联机事务型数据处理。
从上图可以很清楚地看到,行式存储下一张表的数据都是放在一起的,但列式存储下都被分开保存了。
INSERT/UPDATE容易 查询时只有涉及到的列会被读取;
投影(projection)很高效;
任何列都能作为索引 缺点 选择(Selection)时即使只涉及某几列,
所有数据也都会被读取 选择完成时,被选择的列要重新组装
INSERT/UPDATE比较麻烦
10.2.2 HBase简介
Google公司的三大论文:Google File System(GFS)被设计成了HDFS,Google-MapReduce被设计出了MapReduce,而第3篇论文Google-Bigtable被设计成了HBase。由此可见HBase在大数据领域的重要性。
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.1 NoSQL介绍)(草稿)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.2 HBase基本概念、框架)(草稿)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.3 HBase安装与配置)(草稿)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.5 HBase Shell)(草稿)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.4 NTP时间同步)(草稿)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.6 HBase API)
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.7 HBase 批量导入)
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.1 Hive 介绍)(草稿)
- Hadoop基础教程-第5章 YARN:资源调度平台(5.1 YARN介绍)(草稿)
- Hadoop基础教程-第6章 MapReduce入门(6.1 MapReduce介绍)(草稿)
- Hadoop基础教程-第8章 Zookeeper(8.1 Zookeeper介绍)(草稿)
- Hadoop基础教程-第9章 HA高可用(9.1 HDFS 高可用介绍)(草稿)
- Hadoop基础教程-第8章 Zookeeper(8.5 Zookeeper内存数据库)(草稿)
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.7 HQL:数据查询)(草稿)
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.8 HQL:排序)(草稿)
- Hadoop基础教程-第3章 HDFS:分布式文件系统(3.5 HDFS基本命令)(草稿)
- Hadoop基础教程-第4章 HDFS的Java API(4.6 Java API应用)(草稿)
- Hadoop基础教程-第5章 YARN:资源调度平台(5.3 YARN集群配置)(草稿)
- Spring-task定时任务配置
- hdu 2052 Picture
- Node.js实现注册邮箱激活功能
- 进制转换(十进制数m转换成n进制)
- MFC串口通信串口指示灯的实现
- Hadoop基础教程-第10章 HBase:Hadoop数据库(10.1 NoSQL介绍)(草稿)
- FL2440的Linux内核编译出现问题的解决办法
- DM5加密
- Inside the C++ Model第二讲之 成员初始化列表(Member Initialization List)
- iOS GPUImage音视频采集以及美颜功能
- Springboot集成quartz之集群模式(第三期)
- Vue.js基础之小栗子(上)
- Spring Cloud中,Eureka常见问题总结
- C语言结构体解析