CaDS est recommandé pour le traitement périodique des flux créés avec SPSS Modeler, mais si vous n'avez pas besoin d'une telle gestion détaillée ou si l'échelle n'est pas grande, SPSS Modeler Batch est également souvent utilisé. Je vais. SPSS Modeler Batch se connecte à SPSS Modeler Server et exécute les flux en les exécutant à partir d'une commande. L'interface graphique comme SPSS Modeler Client ne démarre pas. Fondamentalement, il exécute tous les nœuds terminaux placés dans le flux. Le refoulement SQL et le cache définis dans le flux fonctionnent également efficacement. À titre d'exemple de son utilisation, s'il existe un processus tel que l'exécution quotidienne des prévisions de ventes d'une certaine entreprise ou la mise à jour du modèle de prévision chaque semaine, créez un flux pour exécuter ce processus et cette commande par lots (clemb) de SPSS Modeler Batch. Peut être réalisé en exécutant à l'heure spécifiée à partir d'un autre planificateur (tel que CRON pour UNIX).
Exemple de commande
clemb -stream "/XXX/.../XXX.str" -execute -server -hostname XXX -username XXX -password XXX -Pmth=Jan
Vous pouvez transmettre des arguments au flux avec l'option -P lors de l'exécution de SPSS Modeler Batch. Comme indiqué dans le manuel suivant, par exemple, si vous écrivez Month = '\ $ P-mth' dans le nœud d'extraction de condition et que vous l'exécutez avec l'argument -Pmth = Jan lors de l'exécution dans le batch du modeleur, mth = Jan est reporté dans le flux. Month = '\ $ P-mth' devient Month = 'Jan', ce qui vous permet d'extraire uniquement les données qui correspondent à Month = 'Jan'. Il est également possible d'extraire des données sous différentes conditions telles que Month = 'Feb' en modifiant la chaîne de caractères après -Pmth = lors de l'exécution par lots.
"Utiliser les paramètres en mode batch" (Dans le manuel, l'équation est ==, mais elle équivaut à =.)
Si vous utilisez cette méthode et que vous l'exécutez avec le nom de la branche comme argument d'un flux, vous pouvez également prévoir les ventes et mettre à jour le modèle pour chaque branche.
SPSS Modeler Batch exécutera tous les nœuds terminaux dans le flux spécifié comme décrit ci-dessus, mais si vous souhaitez exécuter uniquement un nœud terminal spécifique, spécifiez l'ordre dans lequel les nœuds terminaux sont exécutés ou mettez à jour le modèle. , Contrôlé par le script Python associé. La méthode indiquée dans le lien manuel ci-dessus consistait à incorporer les arguments dans le jeu d'expressions CLEM dans le nœud du flux, mais je voudrais également présenter comment incorporer les arguments dans le script Python qui accompagne le flux. Par exemple, si vous souhaitez transmettre le nom de la branche avec l'option Branche, définissez-la avec -PBranch = comme indiqué ci-dessous.
Exemple d'entrée de commande
clemb -stream ...(Omission)... -PBranch=GINZA
Pour l'inclure dans un script Python, utilisez la méthode getParameterValue () de l'instance session () ou stream (). La différence est que stream () est valide pour le flux cible et session () est valide pour tous les flux ouverts, mais les paramètres obtenus par Modeler Batch sont obtenus à partir de session () ou stream (). Je peux le faire. Pour session () et stream (), écrivez-les dans le script Python comme indiqué dans l'exemple suivant.
session()dans le cas de
session = modeler.script.session()
Branch_Name = session.getParameters().getParameterValue('Branch')
stream()dans le cas de
stream = modeler.script.stream()
Branch_Name = stream.getParameterValue('Branch')
Si vous exécutez le lot avec ceci, "GINZA" sera affecté à la variable Branch_Name dans l'exemple précédent. Après cela, vous pouvez le gérer librement, par exemple en l'attribuant à l'expression CLEM du nœud dans le script Python. Les variables sont importées sous forme de chaînes de caractères, donc si vous souhaitez les traiter comme des nombres, vous devez effectuer une conversion de type telle que int ().
Il existe également une description dans le manuel suivant de l'importation de paramètres dans des scripts Python. (C'est un peu déroutant.)
Recommended Posts