Hi Dimitris,


Sorry, it was easy after all :)

now, something extra,
we have about 3-4M triples that we update occasionally by clearing the gragh and inserting the new triples.

1) does the index affect the clear/update procedure?
and if it does, are there any commands to call before / after to speed it up

Virtuoso maintains its free-text indexes either in real-time, or in batch mode. See paragraph 16.3.1.2. Time of Indexing from:

http://docs.openlinksw.com/virtuoso/sparqlextensions.html


In this case what you could do is set the index to manual mode:

   DB.DBA.VT_BATCH_UPDATE ('DB.DBA.RDF_OBJ', 'ON', 10);

before doing the delete/load sequence and then afterwards run the:
    DB.DBA.VT_INC_INDEX_DB_DBA_RDF_OBJ ();
to force another synchronization.


2) (a little out of topic), but i read somewhere that by disabling the http host the update is much faster. Is there a function to call from a script?

e.g.
disable http
(maybe disable index)
clear / update
(re-enable index)
enable http



Of course loading is quickest when it does not have to wait for any locks left by long running sparql queries, however in most cases they can co-exist.

If you really want to stop/start the http server, there are two new functions in the upcoming VOS release:

        http_lock();
        http_unlock();

which can be used to accomplish this.

I would recommend you also set in your virtuoso.ini:

    [HTTP Server]
    MaintenancePage             = atomic.html


This static page that should go into the vsp directory in your virtuoso installation, will be send to any client for as long as the http server is locked using a 503 Service temporary unavailable status, to let them know to try again later.


Best regards,

Patrick

        

Reply via email to