I wonder how it can be tightly coupled with SDB if SDB uses its internal table format which makes the database pretty much useless for relational DB tools?
If you can get the RDF dump, you can switch to any other triple store. Even if the original data is in a relational DB, you can use a tool like D2RQ http://www4.wiwiss.fu-berlin.de/bizer/d2rq/ to extract RDF. I'm just saying :) Martynas On Fri, Jan 27, 2012 at 9:01 PM, John Fereira <[email protected]> wrote: > Unfortunately, the semantic web application (VIVO) I'm working with is > tightly coupled with SDB so switching to TDB is really an option (though I > did just have a discussion with one of the developers to see if it could be > done). Among other things, VIVO manages it's own SDB connections and *does* > do connection pooling. > > -----Original Message----- > From: Martynas Jusevicius [mailto:[email protected]] > Sent: Friday, January 27, 2012 1:34 PM > To: [email protected] > Subject: Re: Fuseki (broken pipe) > > John, > > I was fighting with the same problem some time ago: > http://tech.groups.yahoo.com/group/jena-dev/message/46541 > and I managed to solve it, as far as I remember. > > But my advice would be -- save yourself the trouble and start using TDB. TDB > is actively developed, and performance on SDB using more complex queries > quickly becomes unacceptable. > > Martynas > http://graphity.org > > On Fri, Jan 27, 2012 at 7:25 PM, John Fereira <[email protected]> wrote: >>>On 24/01/12 15:16, John Fereira wrote: >>>> After getting fuseki with SDB working yesterday I check it this >>>> morning and got a 500 Server Error, with a SQLException in >>>> executing SQL statement message. >>>> >>>> This appears to be the same problem I was trying to fix by migrating >>>> from Joseki to Fuseki. After a bit of searching I came across this >>>> thread (http://tech.groups.yahoo.com/group/jena-dev/message/35766) >>>> which describes the same problem when using Joseki. The link I've >>>> included shows a class for doing database connection pooling but it >>>> appears to be a standalone class and there isn't any information >>>> about where it might be hooked into SDB. I've been using database >>>> connection pooling for a long time and have had better success with >>>> the C3p0 db connection pooling library and have it wired into a >>>> Tomcat servlet container but it seems to me a ConnectionPooling >>>> class could be wired into SDB, but it would be nice if it pulled in >>>> the database connection values from the config file instead of >>>> hardcoding them in the java class as the URL shown above does. >>>> >>>> I've seen numerous references to connection management and >>>> connection pooling with SDB but haven't seen any sort of recipe for >>>> how to put it all together. >>>> >>> >>>If it's overnight, is this the MySQL timeout idle connections issue? >>>MySQL, by default, kills connections after (IIRC) 8 hours of idleness. >> >> Yes, the connection closed overnight (and yes the idle value is 8 hours, >> based on the wait_timeout or interactive_timeout mysql variables). I guess >> my question is "why is a connection being held open for 8 hours?". >> >>> >>>Connection pooling is a good solution to this, the crude way is >>>?autoReconnect=true or adjust the server settings to some very, very long >>>period. >>> >> >> I thought I'd read something that setting ?autoReconnect=true didn't seem to >> fix the problem. It seems that adjusting the idle timeout to a very long >> period would just result in running out of database connections eventually. >> Connection pooling *would* be a good solution as long as the connection is >> returned to the pool once the transaction is complete. >> >>>Adding connection pooling support to SDB would be good. There's >>>nothing there except an assembler setting to set the number and a >>>comment in SDBConnection about where it might hook in ... but that's >>>as far as it goes >> >> There is a "pool" comment in SDBConnection but it looks like the place to >> add pooling would be in the SDBConnectionFactory (which also has a pooling >> comment). It currently obtains a java.sql.Connection using >> JDBC.createConnection. I think I can figure out where to inject connection >> pooling but I'm not quite sure what its' doing when sdb:jdbcUrl is not >> specified in the desc file. >> >>> >>>Not sure of the status of c3po ... one preview release in 2010-05 but before >>>that 2007-05. Maybe Apache Commons DBCP is a better bet. >> >> I'm certainly not married to c3p0...it's just what I found to be a bit more >> reliable a few years ago when I was implementing connection pooling in one >> of my web applications. >>
