divinerapier / weaver

A distributed object file system inspired by the paper Beaver which was published by Facebook Inc. at 2010.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Weaver

Weaver 是一个基于 Facebook Inc.2010 发表的论文 开发的一个分布式对象文件系统。

组件

WeaverGateway

作为所有请求的入口。

WeaverDirectory

  1. 维护逻辑卷到物理卷的映射关系;
  2. 负责对读写数据进行负载均衡;
  3. 维护逻辑卷的空闲空间;
  4. 维护图片对应的逻辑卷;

WeaverCache

Cache 服务是一个分布式缓存,可以使用数据的 ID 对内容进行索引。当缓存命中失败时,负责从后端 Store 服务获取数据。

WeaverStore

每一个 Store 服务维护多个物理卷。每个物理卷存储了百万级别的数据。具体来说,一个物理卷可以被认为是一个超大的文件(比如100G),被保存在物理磁盘上的某个位置。可以通过图片所在物理卷及偏移量,大小等信息快速读取数据。

Architecture

architecture

About

A distributed object file system inspired by the paper Beaver which was published by Facebook Inc. at 2010.

License:Apache License 2.0


Languages

Language:Rust 99.0%Language:Makefile 1.0%