欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  互联网

Hadoop组件介绍(下)

程序员文章站 2022-03-06 18:13:52
Hbase是面向列的数据库,普通的关系型数据库是面向行的存储结构(面向行:向数据库插入一条记录,这个记录就是一行)。Hbase建立的表有三个关键字段,第一个是RowKey:类似于主键,唯一的标识一行,第二个字段是Timestamp时间戳,HBASE在插入新数据时,旧数据不会被覆盖掉,而是新数据加上一个新的时间戳;第三个字段是Column Family即列族,允许一个表下有多个列族,一个列族下有多个列,但一般建议设置一个列族。列族名:列名。好处:例如QQ的业务办理都大量稀疏矩阵,在此基础上,增加......

Hadoop组件介绍(下) 

Hadoop组件介绍(下)

Hbase是面向列的数据库,普通的关系型数据库是面向行的存储结构(面向行:向数据库插入一条记录,这个记录就是一行)。

Hbase建立的表有三个关键字段,第一个是RowKey:类似于主键,唯一的标识一行,第二个字段是Timestamp时间戳,HBASE在插入新数据时,旧数据不会被覆盖掉,而是新数据加上一个新的时间戳;第三个字段是Column Family即列族,允许一个表下有多个列族,一个列族下有多个列,但一般建议设置一个列族。列族名:列名。好处:例如QQ的业务办理都大量稀疏矩阵,在此基础上,增加一列则要牵扯到所有数据,而如果使用面向列的,则很好实现。

Hmaster是Hbase的管理节点,Hbase的服务节点是RegionServer,提供服务的单位是Region,一台RegionServer上有一台或多台Region,一个Region上只有一个HLOG,HLOG是一个预写机制,Hbase插入数据时,先写入HLOG中,写入HLOG成功后给客户端返回一个插入成功的消息后,再把HLOG中的数据写入到Region中。这样做的优点是可以保持强的一致性,即使server断电了,内存中的数据消失了,可以从HLOG或HDFS中找回数据。Hbase非常快的原因是直接从内存中读取数据(Store下的MemStore),当MEMStore在内存中占到一定的量的时候就刷新到磁盘上,最后写到HDFS上去。Hbase无论是改还是删,旧数据都仍然存在,因此数据量会变得非常大,因此Hbase使用了两种机制来解决这个问题,split(拆分)和Compact(紧缩)

Hadoop组件介绍(下)

Spark是纯内存计算,比mapreduce、Hive快的多,还支持各种数据挖掘算法。

Transformation变换 Action执行,spark在对RDD进行Transformation时,只会改变DAG,不会真正执行,因此如果Transformation做错了,可以回到前面某一步,重新定义。

Hadoop组件介绍(下)

一共包含四种节点,持久无序、持久有序、临时无序、临时有序。

Zookeeper每个节点既可以包含子节点又可以保存值。不像文件系统只有叶子节点保存值,目录文件不保存值。

Zookeeper包括三个成员:Observer可有可无,写消息必须从Leader,读消息可以从Leader或Follower或Observer。Observer不参与选举,好处是Observer挂掉之后,很快下线,且可以保证合适的选举数量。如果只对读有压力,可以增加Observer。

Hadoop组件介绍(下)

Hadoop组件介绍(下) 

Redis不依托hadoop组件,redis比memcache的好处就是除了在内存运行还支持持久化。

本文地址:https://blog.csdn.net/zhao2chen3/article/details/111961151

相关标签: hadoop 数据分析