Friday, January 06, 2006

the moment I've been waiting for

Comment from Jerry Spicklemire:

OK then, this is the moment I've been waiting for. Using the Python DB API is the most flexible way to open up the storage layer. That will leave the door open for folks who want to use alternative DBMS backends to leverage all the existing drivers. Can you point me to the TKCS modules that deal with the bsddb piece?

Actually, what I've done is integrated bsddb as a service into twistd:
  1. First I created a tiered service in twcs/services/tieredservice.py.
  2. Then I created a bsddb service in twcs/services/bsddbservices.p.
  3. Finally I configured bsddb for tks in tks/dbconfig.py.

Note that bsddb is NOT a relational database. Indeed, its used as the backend of MySql. I use it to build a natively persistent object model in tks and tkcs.

Note also that I'm building a streaming system, where responses to a query may be quite long--but only calculated incrimentally as needed and often discarded after the first few parts. This is quite differrent from a relational DB interface which delivers the entire response in one getgo.

Bill

1 Comments:

At Fri Jan 06, 08:56:00 PM GMT+5:30, Anonymous Anonymous said...

Greetings,

Bill wrote:

"Actually, what I've done is integrated bsddb as a service into twisted:

1. First I created a tiered service in twcs/services/tieredservice.py.
2. Then I created a bsddb service in twcs/services/bsddbservices.p.
3. Finally I configured bsddb for tks in tks/dbconfig.py.

Note that bsddb is NOT a relational database. Indeed, its used as the backend of MySql. I use it to build a natively persistent object model in tks and tkcs.

Note also that I'm building a streaming system, where responses to a query may be quite long--but only calculated incrimentally as needed and often discarded after the first few parts. This is quite differrent from a relational DB interface which delivers the entire response in one getgo."

Right, the bsddb service plays a similar role in AgileWiki as the ZODB does in ZOPE, providing a storage layer to meet persistence requirements. Other projects such as APE, SQLObject, etc. are variations on the theme.

I'll take a look at the modules you listed.

Thanks for the reply,
Jerry Spicklemire

 

Post a Comment

<< Home