DFS & KV

Name Server

在线伸缩性

性能

Hadoop

小文件

索引

GlusterFS

N/remount

S

map

Y*

FastDFS 

多个

Y

F

Y*

MogileFS

多个

Y

N

Y*

TFS

主备

Y

F

Y

MFS

多个

Y

F

Y

GridFS

N/1

Y

N

Y

HDFS

主备

Y

N

Y

mongoDB

3/1

Y

N

map

Y

Y

hypertable

主备

Y

F

Y

Y

Y

Voldemort

N

F

Y*

CouchBase

多个

Y

H

Y*

Y

Cassandra

Y

N

Y

GlusterFS

堆栈式,用户可以通过不同的模块不断的叠加功能。比如先做各种软RAID, 然后加卷管理,然后FUSE,然后NFS。这些是通过双边的翻译器提供的。

无元数据,使用开放式的hash,目录的二次映射元数据存在目录信息里边。

如果用非Gluster客户端,比如NFS,性能很一般,而且读写只能是同时单个节点。而使用gluster客户端的是全联通,这样对客户端的个数就有严格控制了。

不支持删节点。只能替换。

MogileFS

Trackers + Storage Servers

Trackers元数据用mysql维护。

Storage Server就是一个web服务器,用本身的mogstored,或者nginxapache加上些扩展均可。上传下载都基于RESTWebDAV

FastDFS 

Trackers+Storage Server

一个相当轻的文件系统,小巧精悍。

复制:通过组的方式来控制复制(组内全量),另外在一定时间内的文件的访问只在组中的源服务中,这样来避开文件尚未同步到其他组成员的尴尬。

元数据放在文件名中:

组名+磁盘+目录+文件名,Storage server可以根据文件ID直接定位到文件。例如: group2/M00/00/00/CgrgQE7MsRXaKxx9AAzodQCbVVc047.jpg。 从文件名可以反解出文件创建时间和源SS的IP这两个字段,这样如何时间达不到30分钟,直接访问源服务器,连访问tracker的步骤都省了。

通过这种命名方式,元数据就很轻,只需维护组,还有组的负荷。

TFS

FastDFS一样,将元数据叠入文件名中,减少系统维护的元数据数量,从而支持众多的小文件。

DataServer:可以根据文件名的blockid区定位到DS,根据文件名中的fileid区获取到具体DS中的文件名,DS中维护了该文件名对应的磁盘文件以及在磁盘文件里边的偏移量和长度。

MFS

MaprHDFS兼容产品,C++,充分利用硬件特性:裸设备

GridFS

使用MongoDB来存放文件。

MongoDB

多个config server,但是只要有一台出现问题,整个系统就变得只读。

CouchBase

Memcached+虚拟内存的方式。

存储基于bucket,多个buckets组成一个vbucket

通过lucence的方式来支持view和数据的搜索。

Voldemort

文档极少,Read-repair, 存储支持多种引擎,比如BDB,MySQL,in-memory.read-only

一致性hash,复制的时候根据key的位置,搜索当前和之后的r-1个不同节点


HyperTable

1. 元数据节点支持HA

2. 支持hql,支持遍历, 支持正则表达键和value(row_regexp,value_regexp)

3. 支持Map-reduce方式处理数据

4. 性能更好,同样使用HDFS超过HBase 30%

5. 底层存储支持local fileMapR。 其中MapR没有单点NameNode问题,另外性能号称是hadoop的三倍

OS: CentOS 6.1
CPU:  2X AMD C32 Six Core Model 4170 HE 2.1Ghz
RAM:  24GB 1333 MHz DDR3
disk:  4X 2TB SATA Western Digital RE4-GP WD2002FYPS
12台机器


Write

Value Size

Key Count

Hypertable
Throughput MB/s

HBase
Throughput MB/s

10,000

500,041,347

188

93.5

1,000

4,912,173,058

183

84

100

41,753,471,955

113

?

10

167,013,888,782

34

Scan

Value Size

Keys Submitted

Hypertable
Keys Returned

HBase
Keys Returned

Hypertable
Throughput MB/s

HBase
Throughput MB/s

10,000

500,041,347

500,041,347

500,026,388

478

397

1,000

4,912,173,058

4,912,173,058

4,912,184,933

469

371

100

41,753,471,955

41,753,471,955

*

413

*

10

167,013,888,782

167,013,888,782

*

292

SRandom read

Dataset
Size

Hypertable
Queries/s

HBase
Queries/s

Hypertable
Latency (ms)

HBase
Latency (ms)

0.5 TB

7901.02

4254.81

64.764

120.299

5 TB

5842.37

3113.95

87.532

164.366

Uniform read

Dataset
Size

Hypertable
Queries/s

HBase
Queries/s

Hypertable
Latency (ms)

HBase
Latency (ms)

0.5 TB

3256.42

2969.52

157.221

172.351

5 TB

2450.01

2066.52

208.972

247.680


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值