IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Indexation permanente d'un serveur de fichiers


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 81
    Par défaut Indexation permanente d'un serveur de fichiers
    Salut à tous !

    juste une petite question sur les possibilités offertes par Java :

    J'ai besoin d'avoir une base de donnée contenant tous les noms, chemins et dates de dernières modifications de tous les fichiers présents sur mon serveur.
    Seulement il y en a une énorme quantité (+100 000 et bientôt plus), et le traitement prend quelque minutes.

    Le problème c'est que j'ai besoin d'avoir une base presque toujours à jours et si je lance mon programme qui remplit ma base de données que toutes les heures, ma base n'est pas a jour des fichiers crées et/ou modifier durant la dernière heure.
    Seulement si je lance mon programme tous les 10min, mon programme va lire et relire indéfiniment les fichiers présent sur mon serveur, et donc le ralentir continuellement...

    Comment puis-je faire pour avoir une base constamment à jour ? Existe-t-il un moyen d'obtenir seulement les nouveaux fichiers (et ceux modifiés) depuis la dernière exécution du programme ? Ou alors lire dans le snapshot du serveur, ou quelque chose comme ça ?

    Je suis perdu la...

  2. #2
    Membre émérite Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Par défaut
    Le seul moyen, c'est d'intercepter les appels de l'OS au système de fichier ; dans tous les autres cas, tu n'as aucune garantie de détecter toutes les modifications.

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Java 7 (pas encore sorti) fournira un système de "watch" sur des fichiers et/ou dossier. Reste à savoir si ça supportera la charge d'un serveur complet.

    Maintenant, en général, l'OS fournis déjà un service d'indexation, il serait peut être plus utile de l'utiliser. Sous linux tu as par exemple "locate" qui indexe tous les fichiers.

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Février 2010
    Messages
    767
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 767
    Par défaut
    Bonjour,

    Déjà il faudrait voir s'il n'y a pas une solution applicative simple à mettre en place. L'application met à jour un fichier ou créé un nouveau fichier et en même temps modifie l'index.

    Tout dépend de ce qui tourne sur ton serveur.

  5. #5
    Membre chevronné Avatar de NeptuS
    Profil pro
    Inscrit en
    Août 2005
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 392
    Par défaut
    ça ne s'appelle pas une solution de gestion documentaire ?
    Genre Alfresco ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 81
    Par défaut
    D'abord, merci à tous pour vos réponses !

    Les fichiers en questions sont modifier par différents utilisateurs par divers logiciels, donc aucune possibilité de mettre a jour ma base lors d'une modification.

    Je pense que je doit checker mon serveur toutes les heures par exemple et mettre a jour ma base.

    Le problème c'est que soit je ré-insert TOUS les fichiers, cela qui me prendra une petite heures :
    récupérer récursivement tous mes fichiers : environ 4 min, c'est correcte.
    Mais insérer en base ces 100000 fichiers prend environ 1 heure

    Ou bien, 2ème solution : pour chaque fichier je vérifie qu'il est en base, si oui je vérifie si la date de dernière modification a changer, si oui j'Update. Ce qui fait 3 requêtes multiplier par 100000 fichiers :/

    Si le programme dure plus d' une heure, je pourrais pas l’exécuter toute les heures, mais toutes les N heures par exemple, et ma base ne sera pas a jour avant ces N heures...

    Quelqu'un a-t-il une idée pour augmenter les performances des ces insertion ou Update massif ? j'ai entendu parler de Spring qui est efficace mais je connais pas...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fichier d'index avec HTACCES sur serveur IIS
    Par alas70 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 26/07/2009, 20h35
  2. [Reseau] Serveur de fichier, domaine interne, firewall, back
    Par nico33307 dans le forum Développement
    Réponses: 2
    Dernier message: 01/09/2005, 15h38
  3. Serveur de fichier Samba - problème accès Win XP
    Par rohstev dans le forum Réseau
    Réponses: 2
    Dernier message: 10/06/2005, 08h10
  4. Mise en place d'un serveur de fichier Samba/RedHat
    Par shaun_the_sheep dans le forum Réseau
    Réponses: 2
    Dernier message: 11/01/2005, 08h22
  5. Serveur de fichier Linux
    Par MrEddy dans le forum Réseau
    Réponses: 3
    Dernier message: 07/04/2004, 12h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo