mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
Updated Erasure coding for warm storage (markdown)
parent
0c2220e715
commit
fab41b846c
|
@ -33,6 +33,13 @@ The default command is `ec.balance -force`. It will try to spread the data shard
|
||||||
## How the read works?
|
## How the read works?
|
||||||
When all data shards are online, the read for one file key are assigned to one volume server (A) that has at least one data shard for the volume. Server A will read its copy of index file, and locate the volume server (B), and read from server B for the file key.
|
When all data shards are online, the read for one file key are assigned to one volume server (A) that has at least one data shard for the volume. Server A will read its copy of index file, and locate the volume server (B), and read from server B for the file key.
|
||||||
|
|
||||||
|
For example, one read request for 3,0144448888 will:
|
||||||
|
1. Ask master server to locate the EC shards for volume 3, which is usually a list of volume servers.
|
||||||
|
2. The read client can randomly pick one of the returned volume servers, A.
|
||||||
|
3. Server A will read its index file, find the right volume server B that has the file content. Sometimes it may have to contact additional servers if the file is split between multiple blocks. But usually the data shard has 1GB block size. So this does not happen often.
|
||||||
|
|
||||||
|
So in normal operations, there are usually one extra network hop compared to normal volume reads.
|
||||||
|
|
||||||
In case of missing data shards or read failures from server B, server A will try to collect as many pieces of data as possible from the remaining servers, and compute the required data.
|
In case of missing data shards or read failures from server B, server A will try to collect as many pieces of data as possible from the remaining servers, and compute the required data.
|
||||||
|
|
||||||
## Read Performance
|
## Read Performance
|
||||||
|
|
Loading…
Reference in a new issue