leofs icon indicating copy to clipboard operation
leofs copied to clipboard

[doc] Improve the detailed explanation about how LeoFS works

Open mocchira opened this issue 8 years ago • 2 comments

Draft - How it works

  • [ ] Cluster - leofs_docs/issues/29
    • [ ] Network Toporogy
    • [ ] Monitor
    • [ ] Recover
    • [ ] Update (Attach|Detach)
      • [ ] Rebalance
      • [ ] Takeover
  • [ ] Storage
    • [ ] Raw File Format
      • [ ] Object Storage - AVS
      • [ ] Metadata Storage
        • [ ] LevelDB
      • [ ] Mnesia (used by only managers
    • [ ] Large Object
      • [ ] Children
      • [ ] Grand Children
      • [ ] Caveats
        • [ ] leo_gateway settings affect the storage layout
        • [ ] Protocol used by PUT affect the storage layout
        • [ ] Multiple leo_gateways with different mode|chunked_obj_size
    • [ ] ACID
      • [ ] MVCC
      • [ ] When file:fsync called (filed at https://github.com/leo-project/leofs/issues/573
    • [ ] Compaction
      • [ ] Concurrent
      • [ ] Pararrel
      • [ ] little bit STW
    • [ ] Detect corruption
  • [ ] Eventual Consistency
    • [ ] Replication
      • [ ] Basic
      • [ ] Rack-aware
    • [ ] Conflict Resolution
    • [ ] How to handle incomplete writes
      • [ ] No rollback: write returns replication error
      • [ ] Hinted Hand Off (>= 1.3.2)
        • [ ] https://quabase.sei.cmu.edu/mediawiki/index.php/Writes_with_Unavailable_Replicas
        • [ ] https://github.com/leo-project/leofs/issues/561
  • [ ] Anti Entropy
    • [ ] Active
      • [ ] Read Repair
    • [ ] Passive
      • [ ] Recover (File|Node|Cluster|Ring)
      • [ ] Scrub Tool (filed at https://github.com/leo-project/leofs/issues/574
  • [ ] Cache on leo_gateway
    • [ ] Memory
    • [ ] Disk
  • [ ] Protocol
    • [ ] External
      • [ ] S3|REST between client and leo_gateway
      • [ ] NFS between client and leo_gateway
    • [ ] Internal
      • [ ] RPC between leo_gateway and leo_storage
      • [ ] RPC between leo_storages
      • [ ] Rebalance between leo_storages
      • [ ] Erlang RPC Limitation
      • [ ] Multi-DC replication between DCs
  • [ ] Data Flow
    • [ ] PUT/write
      • [ ] PUT via REST|S3
      • [ ] Write via NFS
    • [ ] GET/read
      • [ ] GET via REST|S3
      • [ ] Read via NFS
      • [ ] Readdir(|plus3) via NFS or listing objects via S3
  • [ ] Watchdog
    • [ ] CPU(Load)
    • [ ] Disk I/O(Bandwidth)
    • [ ] Rex
    • [ ] Erlang Internal I/O
    • [ ] Cluster
  • [ ] Security
    • [ ] Authentication
    • [ ] Access Control
    • [ ] Audit
      • [ ] Operation Log
  • [ ] Multi tenancy
    • [ ] Bucket
    • [ ] User (requested at https://github.com/leo-project/leofs/issues/557

mocchira avatar Dec 07 '16 00:12 mocchira

@yosukehara @windkit Totally refactored and covered as much topics as possible based on my understanding. feel free to add|modify contents if you find something missing|wrong.

mocchira avatar Dec 28 '16 06:12 mocchira

Updated based on FB from Vladimir on ML.

  • Add file:fsync on ACID section
  • Add scrub tool on Anti Entropy section

mocchira avatar Jan 19 '17 03:01 mocchira