J'ai un travail Pentaho et dans l'une des transformations je veux obtenir le nombre de fichiers dans un dossier. J'ai essayé deux approches différentes, mais les deux ont pris plus de 2 minutes à exécuter. J'aimerais savoir s'il y a une étape qui pourrait être utilisée pour le faire de façon plus efficace.Obtenir rapidement le nombre de fichiers du dossier
Approche 1-à obtenir des lignes de nombre de fichiers -> Set Variables
Dans mes Get lignes de fichiers compte pas que j'ai le répertoire et un joker pour obtenir le nombre de fichiers xml (* xml.). dans un dossier. Dans l'onglet contenu, le compte de fichiers est enregistré dans un champ (fichierCompte) qui est ensuite enregistré dans une variable. Pour un dossier contenant 3 722 fichiers xml, il a fallu 2:15 pour fonctionner.
Approche 2-obtenir les noms de fichiers -> Grouper par -> Définir les variables
Avec cette approche, j'ai un cadre similaire à l'étape « Get File rows count 'mais ensuite après je fais un groupe par action avec le type' Nombre de lignes (sans argument de champ) '. Cette méthode s'est déroulée en 2h30 pour les mêmes 3 722 fichiers.
Je pense que cela prend tellement de temps parce qu'il essaie d'obtenir les fichiers en mémoire, mais je me soucie seulement du nombre. J'espérais voir un moyen d'obtenir le compte.
Merci pour l'entrée, il est plus logique d'utiliser l'approche deux surtout quand vous ne vous souciez pas du nombre de lignes. J'ai fait un autre test et trouvé ce qui causait la lenteur. Quand je regardais un dossier local, il courait très vite, à une vitesse similaire à la capture d'écran que vous avez joint. Quand j'ai couru contre un dossier de réseau alors cela a pris le même temps de plus de deux minutes. Cela m'amène à croire que le problème est de communiquer avec l'emplacement du partage et non l'étape elle-même. –