adjust mount read write

Chris Lu 2020-10-12 21:23:47 -07:00
parent 126c84cc15
commit 0401227605
4 changed files with 34 additions and 1 deletions

@ -44,7 +44,8 @@ There are no network round trip to lookup the volume id location.
For reads: For reads:
1. Client Reads File Metadata => Weed Filer => Weed Filer database (LevelDB, Cassandra, Redis, Mysql, Postgres, etc) 1. Client Reads File Metadata => Weed Filer => Weed Filer database (LevelDB, Cassandra, Redis, Mysql, Postgres, etc)
2. Client Reads File Chunks => Weed Volume Servers 2. Client optionally lookup volume Id => Weed Filer => Weed Master
3. Client Reads File Chunks => Weed Volume Servers
![](MountRead.png) ![](MountRead.png)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 110 KiB

32
zenuml.txt Normal file

@ -0,0 +1,32 @@
fileContent = WeedMount.ReadFile{
metadata = WeedFiler.ReadMetaData{
metadata = FilerStore.ReadMetaData{}
}
location = WeedFiler.LookupVolumeId{
location = Master.LookupVolumeId{}
}
chunks = VolumeServer.ReadChunks(){}
}
success = WeedMount.WriteFile{
fileIds = WeedFiler.Assign{
fileIds = Master.Assign{}
}
success = VolumeServer.WriteChunks(fileId){}
success = WeedFiler.WriteMetaData{
success = FilerStore.SaveMetaData{}
VolumeServer.PurgeOldChunks{}
}
}
metadata = Filer.Read(path){
metadata = FilerStore.Lookup(path)
}
volumeServerLocation = WeedMaster.Lookup(volumdId)
content = VolumeServer.Read(fileId) {
}
fileContent = WeedMount.ReadFile{
metadata = WeedFiler.ReadMetaData{}
chunks = VolumeServer.ReadChunks(){}
}