Hi group,

I did not see any response to my question below, which is usual for this list where responses are usually fast and competent. As this is quite a crucial issue for our upgrade right now, I would like to ask again, and rephrase my question. I understand SDB is rather unsupported, but the issue is really a question on the core API.

Deprecating the BulkUpdateHandler will not only affect SDB but any other database such as Oracle RDF (the Jena adapter of which implements its own BUH right now). Granted, the class is not gone yet, but some existing API calls (Model.add) already bypass the BulkUpdateHandler, and I believe this was premature (revision 1419595). My suggestion is to continue to delegate Model.add through the BulkUpdateHandler for the upcoming release until the interface has been truly removed/replaced with something else. BUH does not represent much implementation overhead for Graph implementers, because they can simply use the default implementation. The current implementation is too inefficient for our product.

If there is a cleaner mechanism to get the same performance, then I'd be happy to hear about it.

Thanks
Holger


On 8/29/2013 9:39, Holger Knublauch wrote:
SDB currently implements its own BulkUpdateHandler, and I just made some tests that indicate that it is significantly faster than using GraphUtil.add (2 seconds versus 40 seconds for 10k triples). Now that BulkUpdateHandler has been deprecated, and Model.add is already using GraphUtil.add, what call sequence are we supposed to use to retain the good performance of the BulkUpdateHandler? Could a method Graph.add(Iterable<Triple>) be added to allow graphs to optimize the behavior for specific Graph types?

Thanks
Holger


Reply via email to