Re: my $.02 - ignore at will
Hunter Matthews <[email protected]>
| Newsgroups | gmane.network.up2date.current.devel |
|---|---|
| Message-ID | <1014936917.19635.79.camel@jade> |
On Thu, 2002-02-28 at 16:35, Brian K. Jones wrote: > Hi, > > I just wanted to say that I like the idea of Current moving to what > they call 'Plan F' - moving to a sql database backend. I think this > lends greatly to the future scalability of the project, and also > makes development, testing, maintenance and extensibility much easier > for those of us more comfortable with a sql interface than having to > write/alter code just to see what's going on. On the ftp site, ftp.biology.duke.edu/pub/admin/current/patches is the file current-0.9.5-sql-1.patch.gz This is the latest iteration of toby's sql patch. This weekend I hope to take that patch, incorporate a couple of ideas from Todd Neimanich's sql design, and post a first 1.1 early next week. Which might actually come out before 1.0, if the users don't report that 0.99.0 is a good candidate. > I'm very interested in this aspect of the project (design thru > implementation), but am at a bit of a loss right now as to where to > start. It's not quite as easy as throwing up a database and start I'd read through Toby's patch and Todd's design. We'll be starting from Toby's code, but I like a couple of things from Todd's schema. [Todd's last design is in the patches directory as current_schema_rev2.sql ] Little of the sql will change for 1.1.0, but Toby pointed out several deficiencies with how I had Current engineered for storing data. Once thats fixed, we'll start whacking sql hard and fast. The only thing I know of sql wise that will definately change is the relationship between parent/child channels. I have two algorithms that should make dealing with them much easier. We may have to float both to see which one works better. > writing sql. In fact, I haven't developed in Python enough to even > know if it has a database abstraction layer, or database dependent > sql calls for each database supported. I'll go read my books again > tonight :) Toby's code so far uses the postgresql-python package from redhat-7.2 as its starting point. I plan to start from there as well. (As soon as I get my laptop upgraded, that is). There's some documentation in there, but I myself am slaving away over the New Rider's postgres book. Again, I'm not saying that Current will be postgres only for all time, just that the first working database version will. > If anyone who has been messing with this can give me s'more insight > or understanding about how to get information about these Berkeley > DB's (which I know very little about), I can probably at least come > up with some sort of design spec to work from to try to seamlessly > replace it with one of the many sql databases. Don't. Start with Toby's patch. The only future development with shelves _MIGHT_ be to keep the capability of having an anonymous-only server, that doesn't require you to install an sql database at all. I think that would be cool, but it'll get dropped pretty quick if it gets to be too much work. In any case, John and I can deal with the shelves. > As for Apache/mod_python/mod_ssl(?), someone more hardcore than me > will have to tackle that. I administer this stuff as part of my job, > but I don't develop the stuff. (most of my development, admittedly, > is in PHP, with whatever database you want). The cool part is Current won't have to know anything about either apache or mod_ssl - that'll just operate as a standard web server. mod_python requires some adjustment, but I or somebody can pick that up. -- Hunter Matthews Unix / Network Administrator Office: BioScience 145/244 Duke Univ. Biology Department Key: F0F88438 / FFB5 34C0 B350 99A4 BB02 9779 A5DB 8B09 F0F8 8438 Never take candy from strangers. Especially on the internet.