On Mon, 2011-12-05 at 23:06 +0100, Mariano Rodriguez wrote: > The results are fine. However, the time to compute them is slow. In > particular, returning from qexec.exectSelect is very fast (few millisecond) > but retrieving the count is very slow, even if its just a couple of rows.
The inference doesn't start until you start to pull on results, then there is a large upfront forward inference cost and smaller per-query backward inference steps. > Am I doing something wrong here? Didn't notice anything particularly wrong, the rule reasoner must just be slow on that data. Don't know why. As Andy said, using the streaming RDFS inference is probably a better match. > I'm now thinking it might be actually better to store the model, complete > with inferences in TDB, and then querying. Would this be more efficient? If > so, would this code suffice? Yes. There is no point in doing inference over TDB, the normal mode of use is to compute the wanted closure in memory and then store in the persistent store for efficient query later. Dave > String directory = > /Users/mariano/Documents/Archive/Work/projects/semantic-index/lubm/benchmarks/jena/tdb10"; > Model database = TDBFactory.createModel(directory); > database.add(lubm1); > database.commit(); > database.close(); > > > Thank you in advance, > Best regards, > Mariano > > > > > > > > Mariano Rodriguez Muro > http://www.inf.unibz.it/~rodriguez/ > KRDB Research Center > Faculty of Computer Science > Free University of Bozen-Bolzano (FUB) > Piazza Domenicani 3, > I-39100 Bozen-Bolzano BZ, Italy > 猴 > > > >
