Slashdot Mirror


Open Source Moving in on the Data Storage World

pararox writes "The data storage and backup world is one of stagnant technologies and cronyism. A neat little open source project, called Cleversafe, is trying to dispell of that notion. Using the information dispersal algorithm originally conceived of by Michael Rabin (of RSA fame), the software splits every file you backup into small slices, any majority of which can be used to perfectly recreate all the original data. The software is also very scalable, allowing you to run your own backup grid on a single desktop or across thousands of machines."

40 of 169 comments (clear)

  1. Editors, please note! by Anonymous Coward · · Score: 5, Informative

    Editors please note!

    Editors, please note that there is some incorrect information in this post. Firstly, the original concept of the IDA was designed by Shamir of RSA fame, not Rabin.

    Also note that the Cleversafe IDA is a custom algorithm, and is only similar to Shamir's initial concept.

    1. Re:Editors, please note! by Jake73 · · Score: 3, Interesting

      Really? This is just error correction. Reed-Solomon error correction, and even the Chinese Remainder Theorem can be applied to reconstruct data when some has been intentionally or unintentionally punctured.

  2. Backup for Backuper? by foundme · · Score: 3, Interesting

    I can't find this in the FAQ -- is there a "creator/seeder" in the whole process? Which means a particular group of slices can only be unlocked by a particular seeder created by Turbo IDA.

    If there is a creator/seeder, then we are still burdened by having to keep this seeder safe so that we can retrieve the distributed slices.

    If there is no creator/seeder, is this safe enough so that people cannot patch slices together by way of trial-and-error?

    --
    Please stop entering code 2,2,7,6,6,4
  3. The 'R' stands for Rivest, not Rabin by Durindana · · Score: 5, Informative



    While Michael Rabin was inventor of the Rabin cryptosystem in 1979, it was Ronald Rivest, Adi Shamir and Len Adleman behind RSA two years earlier.

    1. Re:The 'R' stands for Rivest, not Rabin by dan+dan+the+dna+man · · Score: 2, Funny

      Nonsense, everyone know it was Rowland Rivron..

      --
      I don't read your sig, why do you read mine?
  4. Re:I don't think you know what that word means. . by flanksteak · · Score: 4, Funny

    Speak for yourself. I have all my old business buddies back up my data for me.

  5. Think RAID5, only way better by El+Cubano · · Score: 4, Interesting

    Using the information dispersal algorithm originally conceived of by Michael Rabin (of RSA fame), the software splits every file you backup into small slices, any majority of which can be used to perfectly recreate all the original data.

    It seems like this can be tuned to provide varying levels of fault tolerance. According to the abstract (I don't have an ACM web account, and I couldn't find the full text), it seems like I can take a file and make it so that any four chunks can be used to rebuild the file. I can then take those chunks and distribute them eight times to different machines. Thus, five of the eight machines would have to be rendered inoperable before I were unable to retrieve my data.

    If I understand it correctly, then this is really slick.

    1. Re:Think RAID5, only way better by dracken · · Score: 4, Interesting

      Rabin's algorithm relies on a nifty trick. If you take a k dimensional vector and store the dot product with k orthogonal vectors then the vector can be reconstructed using just the dot product. This is a fancy way of saying any point on the x-y plane can be located if you have the x-coordinate and y-coordinate. However, if you take a k dimensional vector and compute the dot product with l mutually orthogonal vectors (where l > k), then any k dot products are enough to reconstruct the original vector.

      Rabin has shown how to come up with l vectors of which k are mutually orthogonal.

    2. Re:Think RAID5, only way better by volve · · Score: 2, Funny

      Pardon?!

      I think I've suddenly gone blind because your "[non-]fancy way of saying" doesn't sound a damn thing like the gibberish my eyes just read. "mutually orthagonal vectors" ?!

      If I'm wrong, then I should probably go and lie down, but I just showed my wife and now she's crying... so I think it's your explanation and not me.

      *goes to find advil*

    3. Re:Think RAID5, only way better by siwelwerd · · Score: 2, Informative

      I think you mean linealy independent, not mutually orthogonal. Infact, the word orthogonal isn't even in Rabin's paper. Thus, what Rabin has done is shown how to generate n vectors such that any m are linearly independent .

    4. Re:Think RAID5, only way better by siwelwerd · · Score: 4, Informative

      It's an l dimensional space though. The PDF of the paper is http://portal.acm.org/ft_gateway.cfm?id=62050&type =pdf&coll=GUIDE&dl=GUIDE&CFID=70220506&CFTOKEN=528 80553, and is accessible to anyone who's had an undergraduate course in linear algebra. The crux of the argument is on page 4.

  6. stagnant?? by Phredward · · Score: 4, Insightful

    Companies are crying out for new storage solutions all the time. If the answer is slow in coming it is not due to "cronyism" and "stangnation". Rather the causes include the facts that distributed storage is hard, and people don't like loosing their data.

  7. Rar + Par + BitTorrent? by DigitalRaptor · · Score: 4, Interesting

    This sounds like Rar, Par, and BitTorrent got merged in some freak transporter accident...

    Par files (for use with QuickPar, etc) are great, saving all sorts of extra posting on binary newsgroups.

    --
    Lose Weight and Feel Great with Isagenix
    1. Re:Rar + Par + BitTorrent? by Ohreally_factor · · Score: 3, Funny

      I'm trying to imagine RAR with a PAR head and BitTorrent wings.

      --
      It's not offtopic, dumbass. It's orthogonal.
  8. Not a new idea by D3viL · · Score: 5, Informative

    so it's sort of like parchive http://parchive.sourceforge.net/ which is software splits every file you backup into small slices, any majority of which can be used to perfectly recreate all the original data

  9. You mean Shamir, not Rabin by Anonymous Coward · · Score: 5, Interesting

    While R in RSA stands for Ron Rivest, it is Adi Shamir (S of RSA) you have in mind. He came up with a wonderful secret sharing scheme which allows a bunch of folks or computers to keep pieces of secret in such a way that no N of them have any idea what the secret is, even if they collude. OTOH N+1 of them can easily figure out the secret. RSA can help you keep important secrets safe this way: if the owner is OK, the secret cannot be recreated; if the owner quits or dies, all-important secret holders can recover his password and unencrypt critical company data. And if a couple of them cannot participate, you still can get your secret back.

    Even more amazingly Shamir's secret sharing scheme allows computing math functions, such as digital signatures, without ever recovering secret keys. This is called threshold cryptography, some of you may be interested to learn about its many wonders. Shamir rocks and so is threshold crypto!

  10. innovation by Ajehals · · Score: 2, Interesting
    Any innovation (if that's what this is - no doubt it will turn out to be something that someone else thought of in the 80's..) is welcomed in this area.

    Maybe one day vendors will stop pushing overly expensive and utterly bland storage solutions. i.e. Last time I had a meeting about storage the product was: 2x Servers 2x Disk Arrays with possible storage of a little under 2TB (using 24 80Gb SCSI HDDs) with RAID 5, Oh and the storage was presented as 4 @500Gb drives to the OS (Some proprietary thing). all in at a cool £27.000, (and that was before the license for CIFS) guess how it was billed - innovative... Its a joke, so the solution? In the meantime lots of SATA Drives and file replication, eventually? maybe we can make use of all that storage that sits on every machine on the LAN that is never used...

  11. been done before by Splork · · Score: 4, Informative

    Related companies/projects happened in this order: MojoNation .. MNet .. HiveCache .. AllMyData

    good luck!

  12. Virtual file server -- was a program for old Macs by dfloyd888 · · Score: 5, Interesting

    In the early 90s, a company made a virtual file server for networked Macs. Each client Macintosh had a file on its hard drive, and when a request was made through the driver, a number of Macs were contacted, and files were read and written to in a fairly load balanced fashion. I'm pretty sure it used some decent (think single DES) encryption at the time too, so someone couldn't just dig through the server's file on their Mac's hard disk and glean important data. It also added some redundancy, so if a Mac or two wasn't up on the network, it wouldn't kill the virtual Appleshare folder.

    By chance, anyone remember this technology? I have no idea what happened to it, but it would be a blockbuster open source app if done today, and was platform independant. If done right, one could create data brokerage houses, where people could buy and sell storage space, and also reliability, where space on a RAID or server array would be of higher value than space on a laptop that is rarely on the Internet.

  13. Borg Technology by JoeCommodore · · Score: 4, Funny
    When I read the statement: ...the software splits every file you backup into small slices, any majority of which can be used to perfectly recreate all the original data. The software is also very scalable, allowing you to run your own backup grid on a single desktop or across thousands of machines.

    I was immediately visualizing a Borg Cube regenerating after a hit from the Enterprise.

    regardless, it sounds cool.

    --
    "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
  14. Re:Virtual file server -- was a program for old Ma by Germo · · Score: 2, Informative

    i haven't remembered the name yet, but the company was bought by novell shortly before NDS came out. i always thought it was how NDS replicated itself around w/o eating up the network while trying to take care of itself.

  15. Link to pay-for-view contents by andrew+cooke · · Score: 3, Insightful

    The most interesting link here is behind a pay-wall. Do the editors bother to follow the link in articles? Do they just assume we all have ACM access? Come on, this place used to be a bit better than this, didn;t it?

    --
    http://www.acooke.org
  16. New idea... NOT. by pedantic+bore · · Score: 4, Informative
    Why does this remind me of something? It sounds like something I've heard about already, more or less.

    I just hope they don't patent it!

    --
    Am I part of the core demographic for Swedish Fish?
  17. MOD PARENT REDUNDANT by Cal+Paterson · · Score: 4, Funny

    We all knew that.

  18. Re:redundancy = your secret is safe (with us) by Ruff_ilb · · Score: 2, Insightful

    Not necessarily; if the copies you have are broken apart and split up, that doesn't mean you have a security breach.

    For example, if I tell you my 8 character password has a "q" in it, you've only lowered the number of possible passwords from 2821109907456 to 78364164096. Not exactly useful, either way.

    And of course, what good is keeping the data out of the wrong hands if the RIGHT HANDS can never get to it?

    --
    http://www.TheGamerNation.com/Forums
  19. Sounds familiar. Like my master's thesis. by Saturn49 · · Score: 4, Interesting

    This can be done quite easily with Reed-Solomon coding. In fact, you don't need the majority of the nodes, but simply an arbitrary N set of nodes, with an arbitrary M nodes as redundancy. N=1 and M=1 is basically RAID1. N = n and M = 1 is simply RAID5, N=n and M=2 is RAID 6.

    In fact, I wrote a RSRaid driver for Linux for my thesis and did some performance testing on it. I'll save you the 30 pages and just tell you that the algorithm is far too CPU intensive to scale up very well for fileserver use (my original intent,) but I did conclude it could be used as a backup alternative to tape. Hmmmm.

    Direct Link
    Google Cache
    Please forgive the double brackets, I fought witH Word and lost.
    Contact me if you'd like to play with the code. I never did any reconstruction code, but the system did work in a degraded state, and was written for the Linux 2.6 kernel.

  20. Re:I don't think you know what that word means. . by umeboshi · · Score: 2, Funny

    Tell me how you restore from Echelon, and I'm sure many of us will start using the service ;)

  21. Byzantine for Beginners by jd · · Score: 2, Interesting

    The basis of the method lies in the Byzantine General's Problem and related mathematical puzzles. A derivative is used in cryptography for distributed keys. As a backup strategy, it looks interesting - you don't need any higher level of trust than you would need in the Byzantine General's Problem, for exactly the same reasons. This includes not just backup devices but also all connections to backup devices (so you have security against SAN failures, packet corruption and other such problems). The price you pay for this added security and reliability is that it is going to be either extremely slow or more expensive.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  22. Publius by twitter · · Score: 2, Interesting
    ATT has something like this called Publius. Scientific American reviewed it and, in a most unscientific and unAmerican opinion, called it "irresponsible." The goal was not just storage, but publication.

    It's nice to see another attempt that's free. Free speech requires anonymity.

    --

    Friends don't help friends install M$ junk.

  23. Storage should be Boring! by stereoroid · · Score: 4, Insightful

    One point that's been brought home to me in a very real way, in my position in senior support for one of the major storage system vendors: the hard disks themselves really do make a difference. SCSI disks are much more expensive because of their construction, the duty cycles they can perform to over long periods. You can NOT hammer a SATA disk at 90% of the time, 24/7, and expect it to last the way an enterprise-class SCSI disk does. My company sells low-cost SATA disk systems too, and some customers find that the lower price is a false economy for what they need the system to do.

    I'm kinda missing the point of the "editorializing" in this article: when a storage system is doing its job, it IS boring. You put bytes in, assured they will be stored, and you get them out on demand. You want nothing "interesting" to happen to the data that your business is built on! Sure, the technology is stagnant, if that means customers can get access to the data, reliably, year after year. We Slashdotters are prepared to take "bleeding edge" risks that enterprise customers are not.

    --
    (this is not a .sig)
  24. RAID 5 at the File Level by kbahey · · Score: 2, Interesting

    Slashdotted! Can't check the site contents or the wiki.

    From the summary : "the software splits every file you backup into small slices, any majority of which can be used to perfectly recreate all the original data."

    So, basically it is like RAID 5 striping and parity applied to the file level.

    Neat concept.

  25. Re:I don't think you know what that word means. . by nsayer · · Score: 2, Funny
    The data storage and backup world is one of [...] cronyism

    Nice fileserver you 'ave there. Shame if somefing were to 'appen to it. Know what I mean, 'squire?

  26. Re:redundancy = your secret is safe (with us) by mengland · · Score: 3, Informative

    Hello-

    I am the chief designer of the Cleversafe dispersed-storage system (aka a grid-storage software system) and am one of the project's co-founders. The Cleversafe system never stores a complete copy of the data in any one place (or "grid node" in our terminology). At most 1/11th of the file data--we call it a file "slices"--is stored at any one grid node in a "scrambled" (i.e., non-contiguous), compressed, and encrypted/signed fashion. The grid _never_ stores more than one copy of the data on the grid, and that one copy is never stored all in the same place--it's dispersed using an optimized information-dispersal algorithm that we created but has similar properties to the previously-published info-dispersal algorithms (IDAs).

    If a grid node and its associated content--i.e., the user's file slices on that node--are ever completely compromised (firewall comes down, all encryption and scrambling is cracked, etc), then the cracker acquires at most 1/11th (one-eleventh) of the data users data.

    Further, if any half (or at least 5 out of any 11) of the grid nodes are for any reason destroyed or otherwise unavailable, all of the user's data is still accessible. This is done by generating a "coded" file slice for every data slice that we store on the node, and regenerating missing file slices from down nodes by pumping the available data and coded slices through our info-dispersal algorithms (which are all open-sourced, by the way) that are executed on the client side or when the grid "self heals" for destroyed nodes.

    The system can also be implemented in a cost-effective fashion. The grid system can sustain so many concurrent, per-node outages that the availability/uptime requirements for each node are minimal. Also, the grid-node servers need not support much processing capability, for the client offloads much of the work from the servers.

    We feel this system provides a powerful combination of reliability, scalability, economy, and security.

    The hardest part of the design, imo, is to be able to reliably track all of these file slices across a large and heterogeneous set of grid-node machines housing these info-dispersed file slices. We designed the grid meta-data system from the ground up to do this and to be capacity-expandable, performance-scalable, and easily serviceable. More details for the open-source flavor of the grid-software design can be found here:
    http://wiki.cleversafe.org/Grid_Design

    There's much more that I can say about this system; I plan to add additional comments to this thread as more questions and comments arise. I'm sure there are new comments I have yet to read, for they're coming in pretty quickly...

    I also encourage further discussion at our newly-created web forums: http://forums.cleversafe.org/
    Mailing lists (that will be synchronized with the web forums) will also be available at cleverafe.org in the near future.

    -Matt

  27. Addendum by kfg · · Score: 2, Funny

    The editor I hired after I sacked the last one, has been sacked.

    KFG

  28. Notes from lead Cleversafe designer by mengland · · Score: 5, Informative

    (This is a repost from an earlier part of the thread so that I can get these comments on the toplevel.)

    Hello-

    I am the lead designer of the first Cleversafe dispersed-storage system (aka a grid-storage software system) and am one of the project's co-founders. The Cleversafe system never stores a complete copy of the data in any one place (or "grid node" in our terminology). At most 1/11th of the file data--we call it a file "slices"--is stored at any one grid node in a "scrambled" (i.e., non-contiguous), compressed, and encrypted/signed fashion. The grid _never_ stores more than one copy of the data on the grid, and that one copy is never stored all in the same place--it's dispersed using an optimized information-dispersal algorithm that we created but has similar properties to the previously-published info-dispersal algorithms (IDAs).

    If a grid node and its associated content--i.e., the user's file slices on that node--are ever completely compromised (firewall comes down, all encryption and scrambling is cracked, etc), then the cracker acquires at most 1/11th (one-eleventh) of the data users data.

    Further, if any half (or at least 5 out of any 11) of the grid nodes are for any reason destroyed or otherwise unavailable, all of the user's data is still accessible. This is done by generating a "coded" file slice for every data slice that we store on the node, and regenerating missing file slices from down nodes by pumping the available data and coded slices through our info-dispersal algorithms (which are all open-sourced, by the way) that are executed on the client side or when the grid "self heals" for destroyed nodes.

    The system can also be implemented in a cost-effective fashion. The grid system can sustain so many concurrent, per-node outages that the availability/uptime requirements for each node are minimal. Also, the grid-node servers need not support much processing capability, for the client offloads much of the work from the servers.

    We feel this system provides a powerful combination of reliability, scalability, economy, and security.

    The hardest part of the design, imo, is to be able to reliably track all of these file slices across a large and heterogeneous set of grid-node machines housing these info-dispersed file slices. We designed the grid meta-data system from the ground up to do this and to be capacity-expandable, performance-scalable, and easily serviceable. More details for the open-source flavor of the grid-software design can be found here:
    http://wiki.cleversafe.org/Grid_Design [cleversafe.org]

    There's much more that I can say about this system; I plan to add additional comments to this thread as more questions and comments arise. I'm sure there are new comments I have yet to read, for they're coming in pretty quickly...

    I also encourage further discussion at our newly-created web forums: http://forums.cleversafe.org/ [cleversafe.org]
    Mailing lists (that will be synchronized with the web forums) will also be available at cleverafe.org in the near future.

    -Matt
    Cleversafe project lead

  29. Comparing Cleversafe IDA algorithms with others by mengland · · Score: 2, Informative

    More notes on our IDAs compared with others:

    The Cleversafe information dispersal algorithms (IDAs) were designed to provide real-time performance with large amounts of data storage and retrieval (gigabytes, petabytes and above). Previous algorithms, like Rabin, Shamir and Reed-Solomon, are very effective at storing smaller amounts of data (kilobytes), but their computational overhead which is proportional to the square of the data block size or greater arent well suited for quickly dispersing/restoring larger amounts of data. The Cleversafe algorithms encode AND decode data with a computational overhead that is linearly proportional to the size of the data blocks. Specifically, the Cleversafe encoding algorithms for an 11 node grid with a threshold level of 6, required 5 operations per byte to encode data. For decoding on this dispersed storage grid, the Cleversafe algorithms require 4 operations per byte to decode data greater than 99% of the time and no more than 13 operations per byte in rare cases.

    Another Cleversafe contributor, Chris Gladwin, developed our IDAs. For more info:

    http://wiki.cleversafe.org/Turbo_IDA_Technology

    On can also read an Excel spreadsheet (found in the above wiki page) and C++ source code that represents the "guts" of our 11-Pillar IDA code module.

    For more info about Cleversafe contributors:

    http://wiki.cleversafe.org/Cleversafe_Contributors

    You can see Chris and I at the bottom of the page which is ordered with the most-recent contributor listed first.

    -Matt England

    ps: We are finishing up our project announcement at this week's MySQL User's Conference where we drew significant interest. We have engaged some MySQL core developers regarding integrating the their technology with ours.

  30. Re:Correction!!! by b4704084 · · Score: 2, Informative

    BTW, I am a research assistant for Professor Michael Rabin at Harvard. I think Slashdot editors have the responsibility for making the correction!

    Most people seem to know RSA names well but the IDA algorithm in this article is not related to RSA. So their comments on what R in RSA stands for can misguide the readers!

  31. Re:"any majority of which" by Josmul123 · · Score: 2, Interesting

    Aside from RTFM, let me, as a Cleversafe employee, try to explain a bit of what's happening. Cleversafe technology allows for a client-server application where your data to be backed up is sliced up into eleven pieces using our OWN Information Dispersal Algorithm... This is not RSA as some previous posts would lead you to believe. Once the data is split using this algorithm, it is sent out to eleven different sites running our server software. When you want to restore your data (say after recovering from a hard drive failure), you begin downloading your chunks of data, which you cannot access without your private key information. When retrieving your data, up to five of the eleven "dispersed grid" servers can be absolutely unresponsive, and you can still re-assemble your data (similar to .PAR files or RAID5, only with an open-source algorithm created by us). This allows us to have a dispersed storage mechanism with no single point of failure. In actuality, grid nodes could be running different operating systems and be located around the world. A breach at a single point would, assuming someone could decrypt a slice of someone's data (not very easy to do, I'll tell you), allow someone 1/11 of someone's data. For example, you'd be able to know there's a 3 in my credit card number if it was stored on the grid. This makes the technology not only more failsafe (over 99.9% uptime, I believe was the calculation), but also extremely secure.

  32. Re:I think this is wrong again by jabuzz · · Score: 2, Interesting

    No you would be wrong, the RSA algorithm was first described by Clifford Cocks, a British mathematician working for GCHQ in 1973, four years before the description in 1977 by Ron Rivest, Adi Shamir and Len Adleman.

    It is a classic example of a bad patent. There was prior art (though admittedly this was kept top secret till 1997) and it also failed the obviousness test. Clearly if someone else came up with the same algorithm four years earlier it was clearly obvious to someone skilled in the art of cryptography. In fact Cocks invented the algorithm "over night" after being told about James H. Ellis (another GCHQ worker) concept of none secret encryption, which occurred to Ellis after reading a paper from World War II by someone at Bell Labs describing a way to protect voice communications by the receiver adding (and then later subtracting) random noise.

  33. Re:I think this is wrong again by Paul+Crowley · · Score: 3, Insightful

    RSA get the credit because they brought the concept to science. Similarly, Biham and Shamir get the credit for differential cryptanalysis. If you invent it and keep it secret you don't get the credit; that's the cost of the Faustian bargain you made with the security services.