mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
adjust mount read write
parent
126c84cc15
commit
0401227605
|
@ -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)
|
||||||
|
|
||||||
|
|
BIN
MountRead.png
BIN
MountRead.png
Binary file not shown.
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 100 KiB |
BIN
MountWrite.png
BIN
MountWrite.png
Binary file not shown.
Before Width: | Height: | Size: 89 KiB After Width: | Height: | Size: 110 KiB |
32
zenuml.txt
Normal file
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(){}
|
||||||
|
}
|
Loading…
Reference in a new issue