On 25/06/15 17:35, Paul Tyson wrote:
Hi Andy, no joy yet.

On Wed, 2015-06-24 at 22:36 +0100, Andy Seaborne wrote:
On 24/06/15 21:37, Paul Tyson wrote:
Before working through the configuration of an ontology model in
fuseki2, I wanted to ask if anyone has experience with large models.

I estimate there will be 250K class definitions, about 40M triples.

That's not that large :-)
(There are installations I've worked with x10 that many triples).

What hardware are you running on?

I just took a small sample (500 class definitions), and am running on a
Windows laptop with 4Gb memory.



My queries will be for instance checking:

select ?class
where {
_:a rdf:type ?class;
   ex:p1 "v1";
   ex:p2 <R1>;

Well, depending on the frequencies of

?  ex:p1 "v1"
and
?  ex:p2 <R1>

that query will be quite fast.  i.e. if there is a property-object that
selects a few resources (100s), then that 's no much of a stress test
should work fine.

I specified OWL_MEM_MICRO_RULE_INF for the OntModel. Fuseki grinds on
this query for a long time (more than 30 minutes) and consumes all
memory and cpu.

That's because there is inference as well as storage. Ontology model don't have to have inference.

The rule engine and TDB can interact badly, especially as the database grows relative to the available RAM.

Which of the micro rules do you have a requirement for?

        Andy





# ...all properties of _:a
.
}

Is there hope of fast performance in this scenario?

Yes.

To be clear, my class definitions are like:
<Class1> owl:equivalentClass [owl:intersectionOf (
   [owl:unionOf (<A1> <A2> ...)]
   [owl:unionOf (<B1> <B2> ...)]
   )];
<A1> owl:equivalentClass [owl:Restriction;
   owl:onProperty ex:p1;
   owl:hasValue "v1"].
<B1> owl:equivalentClass [owl:Restriction;
   owl:onProperty ex:p2;
   owl:hasValue "v2"].

I expect to find <Class1>,<A1>,<B1> as a rdf:types of [ex:p1 "v1";ex:p2
"v2"].

Eventually I need to use OWL2 datatype restrictions, so it doesn't
appear the current Jena OWL reasoner will get me there, but I wanted to
explore the capabilities.

I need to get some other tools to validate the ontology to make sure
there's nothing pathological, but on inspection it looks OK.

Regards,
--Paul



Any other approaches for better performance?

Thanks,
--Paul





Reply via email to