|   More 
          Project Info Mailing 
          List  Who | 
 
 
           
            | FreeSQL 
              is an attempt to build a SQL layer for Freenet, so that you can use Freenet as the storage component for SQL-based applications.
 Implemented (for now) in perl, it strives for total SQL compliance, 
              so
 that any SQL-based app can be ported to Freenet
 |  
 
           
            | Why 
              would you want to port SQL apps to Freenet? |  
           
            | Most 
                SQL-based web apps require you to own and operate your own, private,database application, and then share that information with others 
                via your
 web site. With FreeSQL, you can write apps that use a global "communal"
 database built into the fabric of Freenet. Keep in mind that "communal"
 doesn't have to mean "world-writable" (although it can). 
                Because of
 Freenet's secure SSKs, you can make your database "world-readable"
 instead.
 You 
                can also run multiple instances of the same app on the same data 
                set,even if those apps are running on different machines. Imagine 
                two
 Slash 
                sites running on two different
 web sites, but sharing the same pool of stories/comments/moderation.
 With 
                such a scheme, there is no possiblity for censorship of any kind. 
                Andbecause anyone can put up a mirror just by downloading the Slash 
                codebase
 and pointing it at the right database, the load is effectively
 distributed.
 |  
 
           
            | Yes, 
                it surely is. However, with efficient caching, FreeSQL can get 
                prettygood results if you leave it running for a while. You can even 
                cache your
 local data to a Berkeley DBM file, effectively running a local 
                copy of
 your distributed database. The point is that these local caches 
                can be
 blown away at will, without affecting anything other than speed.
 In 
                short: FreeSQL let's you trade performance for anonymity anddistrubuted access. For some apps, that's a good deal.
 Doesn't 
                this mean that my financial transaction database won't work withFreeSQL?
 ~
 Yes. FreeSQL is not a replacement for Oracle. Not even postgres. 
                But most
 apps don't use the full feature set of SQL, so most apps can be 
                ported to
 FreeSQL. If your app runs on MySQL, it will almost surely run 
                on FreeSQL.
 What's 
                slated to be ported to FreeSQL? Right 
                now, we are working on ports of the <ahref="http://enzyme.sourceforge.net">Enzyme open 
                source project</A>,
 PHPLIB, and at least one Slash-like app.
 |  
           
            | Absolutely. 
                Please join our mailing list, or just email us your ideas. |  
           
            | Isn't 
              FreeSQL just vaporware? Is it just an idea? |  
           
            | Nope. 
                There is real live code for FreeSQL. No, it's not Oracle, but 
                itdoes manage to mimic the command-line tool "mysql" pretty 
                well.
 |  
           
            | How 
              much SQL compatibility do you have so far? |  
           
            | From 
                the 0.3 release notes:FreeSQL is coming along nicely. The interactive SQL parser is 
                much
 improved, and we can now support SELECT, INSERT, UPDATE, CREATE, 
                and
 DELETE commands. The DB schema is stored in Freenet. We can also 
                support
 primary and secondary keys (indexes) and, most importantly, we 
                can now
 parse the output from mysqldump. That's right, you can dump your 
                MySQL
 database to a file, and then read it in to FreeSQL. Hopefully, 
                this means
 that porting apps from MySQL to FreeSQL should be only a little 
                while
 off...
 |  
           
            | Feature requests that we could use some help with: DBD/DBI interface,
 mimicking mysqldump and mysql, porting to a non-perl implementation, 
              and
 efficient XML-RPC support.
 
 |  
           
            | Surf on over to <a href="http://freenet.sourceforge.net">their 
                home page
 to find out</a>. In short: Freenet is a fully distributed, 
                anonymous and
 secure P2P file sharing architecture. It's not your mama's P2P 
                either.
 |  |