分布式系统第一章

1.2分布式存储系统分类
分布式存储的数据类型
- 非结构化数据:包括所有办公文档、图片、音频、视频等。
- 结构化数据:一般存储于关系数据库中,二维关系表结构来表示。其模式(Schema,包括属性、数据类型以及数据之间的联系)和内容是分开的,模式需要预先定义。
- 半结构化数据:如HTML。其模式和内容是混在一起的。不需要预先定义数据的模式结构。

不同的分布式存储系统适用于存储不同数据类型,分成以下四种:

  • 分布式文件系统
  • 分布式键值系统
  • 分布式表格系统
  • 分布式数据库
    1.分布式文件系统
    可存储Blob数据(二进制大对象)、定长块以及大文件。也可作为 分布式表格系统及分布式数据库的底层存储。
    在系统市县层面,分布式文件系统内部按照数据库(chunk)来组织数据,每个chunk可以包含多个数据(blob,定长块),一个大文件可以分拆到多个chunk中。分布式文件系统将这些数据块分散到存储集群,处理数据复制、一致性、负载均衡、容错等分布式系统难题,并将用户对这些数据的操作映射为对chunk的操作。
    2.分布式键值系统
    用于存储关系简单的半结构化数据,只提供CRUD操作一条键值对。从数据结构角度看,分布式键值系统与传统的哈希表比较类似,不同的是,分布式键值系统支持将数据分不到集群中的多个存储节点。它是分布式表格系统的一种简化实现,一般用作缓存,比如Memcache。一致性哈希是分布式键值系统中常用的数据分布技术。
    3.分布式表格系统
    分布式表格系统用于存储关系较复杂的半结构化数据。分布式表格系统以表格为单位组织数据,每个表格包含多行,通过主键标识一行,支持主键的CRUD和范围查找功能。
    分布式表格系统可以支持事务,单行事务或者某个实体组(Entity Group,一个用户下的所有数据旺旺构成一个实体组)下的多行事务,如Google Bigtable,Amazon DynamoDB等。与分布式数据库想必,分布式表格系统主要支持对单张表格的操作,不支持复杂操作,如多表关联,嵌套子查询;同一个表格多行数据也不要求包含相同类型的列,适合半结构化数据。
    4.分布式数据库
    一般从单机关系数据库扩展而来,用于存储结构化数据。典型系统包括MySQL数据库分片集群(MySQL Sharding)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值