Atmos的结构-元数据及数据流向
达沃时代 发表于:13年03月19日 11:11 [转载] DOIT.com.cn
3.3元数据
以对象为基础的存储结构,为每个数据分配一个唯一的对象ID,用户根本不需要关心文件的位置和任何映射关系。每个对象包括元数据:
系统元数据:文件信息、长度等常见的文件属性
用户元数据:文件更偏向于专有应用的属性,如歌曲对应的艺术家、唱片等,也可对文件添加制定的标签。
根据这两类元数据,可以将文件分成不同的对象组。在分类之后,对不同的对象组实施不同的管理策略,非常灵活。
元数据在Node内部有多个存储副本,在其他Node上,存储元数据的可读副本;每个MDS负责一部分元数据信息,每个文件的元数据通常会保存3份副本。从这一点可以看出,Atmos在元数据管理上的分区方式。通常操作会选取本地就近的MDS进行,降低访问广域的延迟。
文件的访问有如下几种方式:
OID:Object id,即文件在全局的唯一标示
Path:文件在文件系统中的路径
Tag:制定给文件的标签。
3.4数据流向
数据创建过程如下,只描述主要过程,可能与图中不符
Client询问RMS,数据在哪个mds
发送到主mds
mds生成唯一文件id;并询问策略服务PM,获取文件的布局方式
PM返回xml形式的策略,包括位置、副本数、副本方式、触发条件
mds填写用户信息和文件属性等
查询RMS,决定在本地的资源存储方式
生成LSO,分配给SS,会生成本地副本
Client并发发送到多个ss上
ss创建后台数据,并将对象ID返回给client
client收集多个ss的id并发送给mds
执行异步同步策略,mds生成任务发送给js
文件读过程如下:
向RMS查询,获取相应的MDLS
Client到MDLS查询文件的主、从MDS、远程MDS分布
Client获得回应,得到对象的布局状况
Client解析后,向最近的ss发送请求
SS返回给Client