Changes between Version 10 and Version 11 of GSoCIdeas/Notes


Ignore:
Timestamp:
2010-03-17T04:04:39Z (11 years ago)
Author:
zooko
Comment:

remove share migration -- it lives on wiki:GSoCIdeas now

Legend:

Unmodified
Added
Removed
Modified
  • GSoCIdeas/Notes

    v10 v11  
    1717== Server Selection ==
    1818''Which servers are connected to your client, and which of them have which shares of your files?''
    19  === Dynamically migrate shares to maintain file health. ===
    2019
    21 Difficulty: medium - hard
    22 
    23 When uploading a file to a grid, Tahoe-LAFS will make sure that the file is
    24 healthy (a good discussion of what healthy means is found in #778) before
    25 reporting that the file is uploaded successfully. Tools to effectively
    26 maintain file health (or to adapt to new definitions of health) aren't
    27 quite complete, however -- our users have had several use cases that aren't
    28 easily addressed with what we have. Students taking this project would be
    29 building tools to address those use cases.
    30 
    31 A good starting point would be to become familiar with how files are placed on
    32 a grid. [http://allmydata.org/trac/tahoe-lafs/browser/docs/architecture.txt architecture.txt],
    33 [http://allmydata.org/trac/tahoe-lafs/browser/docs/specifications/file-encoding.txt file-encoding.txt],
    34 [http://allmydata.org/trac/tahoe-lafs/browser/docs/specifications/mutable.txt mutable.txt],
    35 [http://allmydata.org/trac/tahoe-lafs/browser/src/allmydata/immutable/upload.py the immutable file upload code], and
    36 [http://allmydata.org/trac/tahoe-lafs/browser/src/allmydata/mutable/publish.py the mutable file upload code] are good
    37 places to do that.  Also, you might want to look at the
    38 [http://allmydata.org/trac/tahoe-lafs/browser/src/allmydata/storage/server.py storage server code] to understand that
    39 better. Some good tickets to start looking at are #699, #543, and #232; you'll
    40 find that those link to other tickets.
    41 
    42 There are many ways to help address these issues. Some ideas:
    43 
    44   * Alter the CLI and the WUI to give users the ability to rebalance
    45     files that they've uploaded already. (#699)
    46   * Build tools that allow node administrators to moves shares around
    47     a grid (#543, #864)
    48   * Alter Tahoe-LAFS to rebalance mutable files when uploading a new version
    49     of them. (#232)
    50 
    51 (it is doubtful that any one of these projects is enough to fill a summer, but, combined, they would be a big usability improvement for Tahoe-LAFS)
    52 
    53 Depending on how you address this, this is tightly integrated with ideas of
    54 file health and accounting, so prospective students would do well to explore
    55 those open issues, too. A good accounting jumping-off point is #666. A good
    56 jumping-off point for health is #778.
    5720 * Use Zeroconf or similar so nodes can find each other on a local network to enable quick local share migration.
    5821 * Deal with unreliable nodes and connections in general, getting away from allmydata.com's assumption that the grid is a big collection of reliable machines in a colo under a single administrative jurisdiction. [http://allmydata.org/trac/tahoe-lafs/query?status=!closed&order=priority&keywords=~availability Tickets labelled 'availability']