TFS的读写操作

TFS的写操作流程:

只有当所有的DataServer都备份完成了 才会返回写入成功

TFS写操作流程

客户端首先向nameserver发起写请求,nameserver需要根据dataserver上的可写块,容量和负载加权平均来选择一个可写的block。并且在该block所在的多个dataserver中选择一个作为写入的master,这个选择过程也需要根据dataserver的负载以及当前作为master的次数来计算,使得每个dataserver作为master的机会均等。master一段选定,除非master宕机,不会更换,一旦master宕机,需要在剩余的dataserver中选择新的master。返回一个dataserver列表。

客户端向master dataserver开始数据写入操作。master server将数据传输为其他的dataserver节点,只有当所有dataserver节点写入均成功时,master server才会向nameserver和客户端返回操作成功的信息

TFS的读操作流程:

1.根据TFS文件名解析出BlockId 和 File Id

2.像NameServer请求 通过BlockId 和File Id 拿到对应的DataServer服务器

  1. 通过发送Block_ID、File_ID和offset为参数的读请求到对应的dataserver,得到文件内容。


    TFS的读操作流程
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,220评论 2 89
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,280评论 19 139
  • 互联网应用经常需要存储用户上传的文档、图片、视频等,比如Facebook相册、淘宝图片、Dropbox文档等。文档...
    olostin阅读 5,825评论 0 2
  • 简介 TFS主要针对海量非结构化(结构化的数据是指像mysql中的数据,非结构化就是像NOSQL中的数据)的小数据...
    蓝色_fea0阅读 13,436评论 2 1
  • 孔夫子说:“四十而不惑。” 但,当我四十岁的时候,我却大惑而特惑。我的困惑是,我正在追寻的“成功”到底会把我引向何...
    zique阅读 3,258评论 7 3

友情链接更多精彩内容