I watched the video (interview by Maria) and read the [wiki].
I don’t understand how other nodes take over their ‘server’ role for providing stored data.
Let’s say I have a file of ten yottabytes named X and send it to the safenetwork.
It will get chunked into at least 3 pieces and 4 copies (or more if chosen for more redundancy) of each chunk which are encrypted and sent to 8 nodes.
What if some nodes go offline? The network issues a replacement of the chunk to an other node.
I do understand that a node going offline deletes the data chunk. Isn’t this a waste of energy and bandwidth? Intuitively I believe it’s better not to delete chunks from nodes that have a historical 99.9% uptime. Namely, if all nodes have 99.9% uptime there’s less than 1 ms downtime per day for the client.
Has there been any math done about the economy of rewards, node uptime, and availability? For instance, how much time does there need to pass before copies are issued to other nodes? Is there an algorithm to delegate where and when which chunk (by size) is stored?
I can imagine nodes that are negatively correlated in epoch uptime time windows can economically secure a better safenet without needless copying yottabyte-sized chunks of data across the network.
The file will be chunked into chunks each of a maximum size of 1MByte
Each of those chunks will be stored on 8 vaults.
The file will be stored across many many vaults. Only if the network is very small or the file extremely large will there be any one vault with more than one chunk copy of that file in it.
Datachains will help in allowing good vaults to go offline and come back on and may not lose any of the data because the datachains can verify the chunks in the vault are correct. The principle of making new copies of chunks of a vault that goes off line is to compensate for an imperfect world and a necessary evil if you will. If you don’t do this then the likelihood of large files not having all their chunks available because one chunk has all 8 vaults currently off line.
I believe a white paper has much of this. Its difficult to do maths on vault up time simply because they are controlled by people. Although some estimation was done for average up time assuming typical behaviour.
This doesn’t make any sense. The time for a person’s client is unrelated to node uptime. The client is separate to the nodes and they can operate together on the one machine
As soon as the vault is deemed offline the chunks it had are copied to new vaults/[quote=“Gus, post:1, topic:14508”]
Is there an algorithm to delegate where and when which chunk (by size) is stored?
[/quote]
The where is based on the chunk’s hash.
Search out node aging and you see that nodes (vaults) have to progress through a set of stages so this certainly helps. But the copying is needed otherwise data can be and will be lost.[quote=“Gus, post:1, topic:14508”]
yottabyte-sized chunks
[/quote]
Ok, that’s nice. But the chunk gets copied anyway if the node goes offline? So, if a good_vault1 goes offline it will be copied to good_vault2. And if good_vault2 goes offline the chunk will be copied to good_vault3? Or will it first check if good_vault1 is online with the chunk having kept its integrity before issuing a copy to good_vault3?
The network aims to keep the number of copies to 8. Lets say for a particular chunk 3 of the vaults go off line, then 3 more copies are made to keep it at 8. Then 2 of those 3 come back on line and their chunks reinstated as valid, so there is 10 copies. This allows 2 vaults to go off line before any more copies are made. This was for a particular chunk of a file. Eventually vaults will go offline and not have their chunks reinstated, so eventually you expect that the number of copies will go back to 8. In any case the maximum number of copies would be 15 if the vaults always had their chunks reinstated when coming back on line.
When a vault goes offline the chunks that are needed to be copied will be copied to new vaults and each chunk could go to different vaults and if the network is of a sufficient size then the probability is high that all its chunks will go to different vaults.
The group will obviously check the number of copies online for a chunk when the vault goes offline and only initiate a copy if the number is below the required number. Otherwise you could end up with 1000 copies of every chunk after a few years of vaults going offline then back online.