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)
(methode 2 : mis à jour méthode rdfloader)
Ligne 26 : Ligne 26 :
=== methode 2 ===
=== methode 2 ===
-
Avec la librairie rdfloader.sql voir [http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderExampleDbpedia tutoriel] :
+
Avec la fonction rdfloader (préinstallée dans Virtuoso 6.1.5. Sinon, le code sql est donné dans ce [http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderExampleDbpedia tutoriel]).
-
* 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 :
+
-
<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>SQL> 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>
+
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 :
* Lancer le chargement des données :
  <nowiki>SQL> rdf_loader_run ();</nowiki>
  <nowiki>SQL> rdf_loader_run ();</nowiki>
-
 
-
 
-
{|cellpadding="10" cellspacing="0" border="1"
 
-
|'''Machine'''
 
-
|'''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 du 21 mars 2013 à 13:56

Essais

methode 1

DB.DBA.TTLP_MT(file_to_string_output('[fichier .nt]'), , '[nom de graphe]', 255);

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 fonction rdfloader (préinstallée dans Virtuoso 6.1.5. Sinon, le code sql est donné dans ce tutoriel).

  • Sélectionnez les fichiers à charger :
SQL> 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 :
SQL> rdf_loader_run ();