mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
remove verbose explanation
parent
a00499f95d
commit
d73cb612b5
|
@ -43,17 +43,6 @@ visit "http://localhost:8888/path/to/sources/"
|
|||
visit "http://localhost:8888/path/to/sources/?lastFileName=abc.txt&limit=50"
|
||||
```
|
||||
|
||||
### Design
|
||||
|
||||
A common file system would use inode to store meta data for each folder and file. The folder tree structure are usually linked. And sub folders and files are usually organized as an on-disk b+tree or similar variations. This scales well in terms of storage, but not well for fast file retrieval due to multiple disk access just for the file meta data, before even trying to get the file content.
|
||||
|
||||
SeaweedFS wants to make as small number of disk access as possible, yet still be able to store a lot of file metadata. So we need to think very differently.
|
||||
|
||||
We can take the following steps to map a full file path to the actual data block:
|
||||
|
||||
1. map <file_parent_directory, fileName> to <attributes, a list of file_id> Implemented by "weed filer" server.
|
||||
2. map <file_id> to <data_blocks>. Implemented by default SeaweedFS master and volume servers.
|
||||
|
||||
#### Architecture
|
||||
|
||||
For file reads:
|
||||
|
|
Loading…
Reference in a new issue