Comment puis-je Programmer des importations de données dans Solr
La page wiki, http://wiki.apache.org/solr/DataImportHandler explique comment les données d'index à l'aide de DataImportHandler. Mais l'exemple utilise une commande pour lancer l'opération d'importation. Comment puis-je planifier une tâche à accomplir cette sur une base régulière?c
OriginalL'auteur Eldo | 2010-07-08
Vous devez vous connecter pour publier un commentaire.
Sur UNIX/Linux, tâches cron sont vos amis! Sur Windows, il est Le Planificateur De Tâches.
Mise à JOUR
De le faire à partir du code Java, puisque c'est une simple requête GET, vous pouvez utiliser le Client HTTP de la bibliothèque. Voir ce tutoriel sur l'utilisation de la GetMethod.
Si vous avez besoin pour programmer l'envoi d'autres demandes de Solr, vous devriez probablement utiliser le Solrj bibliothèque. Il permet d'envoyer toutes les commandes de base à Solr ant il peut être configuré pour accéder à tout Solr des gestionnaires:
voir mes mises à jour dans la réponse
Aussi, si vous le faites à partir de cron, un wget 127.0.0.1:8983/solr/dataimport?commande=full-import fonctionne très bien!
OriginalL'auteur Pascal Dimassimo
J'ai été capable de le faire fonctionner en suivant les étapes:
Créer des classes ApplicationListener, HTTPPostScheduler et SolrDataImportProperties (code source répertoriés sur http://wiki.apache.org/solr/DataImportHandler#Scheduling).
Je crois que ces classes n'ont pas été commis encore.
Ajouter le suivant auditeur à Solr web.xml fichier:
Configurer dataimport.propriétés selon les instructions dans la page wiki.
OriginalL'auteur LeoO
simple d'ajouter cette ligne à votre crontab avec
crontab -e
commande:Ce sera plein d'importer toutes les 30 minutes. Remplacer
<solr_host>
et<core_name>
avec votre configurationOriginalL'auteur Daniel Cukier
Il y a une nouvelle patch par Esteve Fernandez qui fait tout fonctionner sous Unix/Linux: https://issues.apache.org/jira/browse/SOLR-2305
@Eldo Si vous allez avoir besoin de plus d'aide dans la construction de votre propre POT il suffit de déposer une question ici...
OriginalL'auteur Marko Bonaci
C'est un peu vieux, mais j'ai créé un Windows WPF application et de service pour faire face à cela, comme à l'aide de CRON jobs et le Planificateur de Tâches est un peu difficile à maintenir si vous avez beaucoup de cœurs /environnements.
https://github.com/systemidx/SolrScheduler
Vous suffit de les déposer dans un fichier JSON dans un dossier spécifié et il va utiliser un RESTE de client d'émettre les commandes de Solr.
OriginalL'auteur Bryon Weber
Nous pouvons utiliser le Quartz à faire, qui est comme le crontab sous linux. Mais, fondamentalement, la TimerTask incorporé dans le jdk est assez pour vous.
OriginalL'auteur Stony