Outils personnels
User menu

Chargement des données dans Virtuoso

De Dbpedia.fr.

(Différences entre les versions)
m (saut de ligne nécessaire dans la commande SQL)
m (Charger les données : rappel lancement isql)
 
(3 versions intermédiaires masquées)
Ligne 1 : Ligne 1 :
-
== Essais ==  
+
== Supprimer les données à remplacer ==
-
=== methode 1 ===
+
Lors de la suppression d'un volume de données important, Virtuoso peut bloquer voir [http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VirtTipsAndTricksGuideDeleteLargeGraphs la documentation de Virtuoso]. Pour éviter cela, changer le niveau de logs :
 +
<nowiki>$ isql-v
 +
> log_enable(3,1);</nowiki>
-
DB.DBA.TTLP_MT(file_to_string_output('[fichier .nt]'), '', '[nom de graphe]', 255);
+
La suppression des données d'un graphe se fait par la commande :
-
   
+
  <nowiki>$ isql-v
-
{|cellpadding="10" cellspacing="0" border="1"
+
> SPARQL CLEAR GRAPH  <graph-name>;</nowiki>
-
|'''Machine'''
+
-
|'''RAM'''
+
-
|'''NumberOfBuffers'''
+
-
|'''MaxDirtyBuffers'''
+
-
|'''Temps de chargement'''
+
-
|'''max charge CPU (somme freq)'''
+
-
|'''max RAM utilisée'''
+
-
|-
+
-
|dbpedia.inria.fr, 2CPU
+
-
|8 Go
+
-
|2000
+
-
|1200
+
-
|2225054 msec - 37 min
+
-
|2500 MHz
+
-
|2600 Mo
+
-
|}
+
-
=== methode 2 ===
 
-
Avec la librairie rdfloader.sql voir [http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderExampleDbpedia tutoriel] :
+
== Charger les données ==
-
* Copier le code donné sur cette [http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderScript#Bulk%20Loader%20Procedures%20and%20Sub-procedures page] dans un fichier '''rdfloader.sql''' (à mettre dans un répertoire figurant dans l'entrée '''DirsAllowed''' du fichier '''virtuoso.ini''').
+
 
-
* Dans isql, tapper :
+
La fonction rdfloader est préinstallée depuis la version 6.1.5 de Virtuoso. Pour les verions précédentes, importer le sql donné dans ce [http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderExampleDbpedia tutoriel]).
-
<nowiki>SQL> load [chemin/vers/]rdfloader.sql;</nowiki>
+
 
-
Si une erreur du type <nowiki>"Table DB.DBA.load_list already exists"</nowiki> ou <nowiki>"Duplicate index name ll_state"</nowiki>, effacez d'abord les tables <nowiki>DB.DBA.load_list</nowiki> et <nowiki>DB.DBA.ldlock</nowiki> :
+
-
<nowiki>SQL> drop table load_list;
+
-
drop table ldlock;</nowiki>
+
* Sélectionnez les fichiers à charger :
* Sélectionnez les fichiers à charger :
-
  <nowiki>SQL> ld_dir ('[répertoire des fichiers à charger]', '*.nt', 'http://fr.dbpedia.org');</nowiki>
+
  <nowiki>$ isql-v
 +
> ld_dir ('[répertoire des fichiers à charger]', '*.nt', 'http://fr.dbpedia.org');</nowiki>
Remarque: selon la documentation, rdfloader est capable de lire directement les données dans des fichiers compressés en gzip, il faut alors remplacer <nowiki>'*.nt'</nowiki> par <nowiki>'*.nt.gz'</nowiki>.
Remarque: selon la documentation, rdfloader est capable de lire directement les données dans des fichiers compressés en gzip, il faut alors remplacer <nowiki>'*.nt'</nowiki> par <nowiki>'*.nt.gz'</nowiki>.
Ca ne marche pas avec des fichiers compressés en bzip2.
Ca ne marche pas avec des fichiers compressés en bzip2.
-
* Créer un fichier '''global.graph''' contenant :
 
-
<nowiki>http://fr.dbpedia.org</nowiki>
 
-
* Lancer le chargement des données :
 
-
<nowiki>SQL> rdf_loader_run ();</nowiki>
 
-
+
Il faut aussi que le ''[répertoire des fichiers à charger]'' soit listé dans l'attribut '''DirsAllowed''' du fichier de configuration '''virtuoso.ini''', sinon un message d'erreur
-
{|cellpadding="10" cellspacing="0" border="1"
+
* Lancer le chargement des données :
-
|'''Machine'''
+
<nowiki>> rdf_loader_run ();</nowiki>
-
|'''RAM'''
+
-
|'''NumberOfBuffers'''
+
-
|'''MaxDirtyBuffers'''
+
-
|'''Temps de chargement'''
+
-
|'''max charge CPU (somme freq)'''
+
-
|'''max RAM utilisée'''
+
-
|-
+
-
|dbpedia.inria.fr, 2CPU
+
-
|8 Go
+
-
|680000
+
-
|500000
+
-
|190516 msec - 3 min
+
-
|2226 MHz
+
-
|1426 Mo
+
-
|-
+
-
|dbpedia.inria.fr, 2CPU
+
-
|8 Go
+
-
|2000
+
-
|1200
+
-
|542730 msec - 9 min
+
-
|3179 MHz
+
-
|2226 Mo
+
-
|}
+

Version actuelle en date du 4 septembre 2013 à 22:50

Supprimer les données à remplacer

Lors de la suppression d'un volume de données important, Virtuoso peut bloquer voir la documentation de Virtuoso. Pour éviter cela, changer le niveau de logs :

$ isql-v
> log_enable(3,1);

La suppression des données d'un graphe se fait par la commande :

$ isql-v
> SPARQL CLEAR GRAPH  <graph-name>;


Charger les données

La fonction rdfloader est préinstallée depuis la version 6.1.5 de Virtuoso. Pour les verions précédentes, importer le sql donné dans ce tutoriel).

  • Sélectionnez les fichiers à charger :
$ isql-v
> ld_dir ('[répertoire des fichiers à charger]', '*.nt', 'http://fr.dbpedia.org');

Remarque: selon la documentation, rdfloader est capable de lire directement les données dans des fichiers compressés en gzip, il faut alors remplacer '*.nt' par '*.nt.gz'. Ca ne marche pas avec des fichiers compressés en bzip2.

Il faut aussi que le [répertoire des fichiers à charger] soit listé dans l'attribut DirsAllowed du fichier de configuration virtuoso.ini, sinon un message d'erreur

  • Lancer le chargement des données :
> rdf_loader_run ();
  • Dernière modification de cette page le 4 septembre 2013 à 22:50.
  • Cette page a été consultée 4 154 fois.