Hi Minto, yes, this is an issue I know. The problem is that there is no control on transactions, and all is executed in auto commit mode. This because it is not easy to control the execution flow from within the data access layer. Commonly, one would wrap the operations (each triple addition) between some begin() and commit() operations, to allow the changes to be performed in a single transaction (or multiple, buffering). But we do not know how the addTriple() method is called and keeping a consistent state on the background is not easy. One way could be having an addTriples(Iterator) method, that could manage this internally. But this imply changing the MGraphs interface... Of course there might be other ways too.
Best, Enrico (however I am out of work at the moment, so I will interact slowly for the next twenty days). Best, Enrico [1] Enrico Daga -- http://www.enridaga.net skype: enri-pan On 4 August 2014 12:21, Minto van der Sluis <[email protected]> wrote: > Hi, > > I have been using the Clerezza Virtuoso provider and made some small > changes. > > Using this provider to insert triples I noticed poor performance. > Looking a bit further I noticed that every single triple being added > requires its own roundtrip to the Virtuoso database. Wouldn't > performance increase if multiple triples were added in a single roundtrip? > > As in using sparql "Insert Data" ? > > Regards, > > Minto >
