Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!
Free Trial

Base de Connaissance

Apprenez auprès des experts.
TIPS de la semaine

Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !

Voir l'index
La macro cache DataSet v2 Vous pouvez télécharger la macro cache DataSet v2 à partir de la Alteryx Analytics Gallery (dans le district de macros) ici. Pourquoi la mise à jour? L'année dernière, j'ai fait un outil qui m'a permis de créer des «points d'enregistrement» dans mes workflows, et d'éviter de perdre du temps à exécuter l'intégralité du workflow après avoir effectué des modifications incrémentielles. Beaucoup de gens ont répondu à un billet de blog que j'ai écrit à ce sujet, et quelques grandes suggestions est sorti de cette discussion. Un utilisateur a même fait sa propre version mise à jour de la macro, parce qu'il voulait être en mesure de spécifier où les fichiers ont été enregistrés par la macro. C'était vraiment génial, et m'a inspiré à mettre en œuvre certaines des autres suggestions des utilisateurs avaient et partager la macro mise à jour du cache DataSet avec vous les gars ici. Merci à @ErikB de partager sa mise à jour avec moi! Espérons que cela devienne une tendance-si vous vous sentez comme une fonctionnalité est manquant, n'ayez pas peur de commencer à piquer autour des entrailles d'une macro et de faire vos propres changements et de les partager. Cela est bon pour tout le monde parce que cela signifie que nous pouvons faire de meilleurs outils ensemble par la collaboration, mais c'est aussi une excellente occasion d'apprendre de nouveaux modèles et astuces dans Alteryx. Qu'est-ce qui est différent dans cette version? Cette mise à jour est vraiment tout au sujet de la gestion du stockage et du nettoyage des fichiers mis en cache. Dans la version précédente de l'outil, tous les fichiers mis en cache seraient sauvegardés à l'endroit où la macro elle-même vivait. Mais ce n'était pas toujours souhaitable, et si vous l'utilisez beaucoup, vous pourriez vous retrouver avec un grand dossier de fichiers comme ceci: Donc, nous allons jeter un oeil à ce qui est nouveau dans la configuration de l'outil pour traiter ce problème: Pour la plupart, le premier onglet devrait paraître assez familier (et si non, revenir à la poste d'origine pour voir comment il fonctionne), mais il ya trois nouvelles options sous "Write mode" qui vous permettent de spécifier combien de temps vous voulez que les fichiers mis en cache à vivre. Si vous sélectionnez la première option ("Delete après l'arrêt de Alteryx"), les fichiers mis en cache seront écrits dans le répertoire Temp (et en lecture) du Alteryx, qui sera automatiquement effacé lors de la fermeture de Alteryx. Toutefois, si vous sélectionnez la deuxième option, les fichiers seront supprimés après un nombre de jours spécifié. Ceci est déclenché par l'exécution de la macro, donc si vous l'utilisez une fois et plus jamais, alors qu'un fichier mis en cache ne sera pas supprimé. Mais si vous utilisez l'outil régulièrement, alors il va effacer les anciens fichiers. (pour ce faire, la macro maintient un index des emplacements où les fichiers mis en cache ont été créés, puis à chaque fois qu'il est utilisé dans un workflow, il recherche les fichiers mis en cache dans les répertoires qui ont une date d'expiration qui est passée à échéance et les supprime.) (dans une version future, je peux regarder dans l'automatisation de ce avec schtasks.) Enfin, vous avez la possibilité de ne jamais supprimer un fichier mis en cache. (c'est ainsi que l'outil utilisé pour fonctionner.) L'onglet Options avancées Ici, vous pouvez indiquer à la macro où enregistrer les fichiers mis en cache. La première option ("default") va indiquer à la macro d'enregistrer dans un dossier dédié cached_datasets dans le répertoire AppData spécifique à l'utilisateur. Toutefois, si l'option "supprimer après l'arrêt de Alteryx" est sélectionnée dans l'onglet précédent, le fichier sera écrit (et lu à partir de) le répertoire Temp à la place. La deuxième option ("workflow Directory") indique à la macro d'enregistrer les fichiers dans le même répertoire que le workflow dans lequel vous avez inséré la macro cache DataSet v2. Enfin, si vous ne souhaitez pas que la macro vérifie les fichiers mis en cache périmés et les supprime, cochez la dernière option de cet onglet. Voilà. Profiter! Et de garder les commentaires à venir (et bien sûr, vos propres variations)! Teaser Je suis excité de dire que la fonctionnalité de mise en cache va être officiellement intégré dans le produit dans une version future d'une manière très élégante et rationalisée! (certains d'entre vous ont peut-être ramassé sur ce sujet dans le fil des suggestions de produits ici.) J'ai eu le plaisir d'être impliqué dans certaines des discussions de conception initiale autour de la nouvelle fonctionnalité, et je pense sincèrement que ça va être totalement jeu-changer à la façon dont nous développons des workflows dans Alteryx. (c'est tout ce que je peux partager à ce point, mais fera de mon mieux pour fournir des mises à jour comme ils deviennent disponibles!) : smileyvery-Happy: Cette mise à jour de la macro de DataSet de cache inclut des options pour gérer le stockage et le nettoyage des fichiers mis en cache. Cache
Afficher l'article complet
La macro de DataSet de cache Vous pouvez télécharger la version la plus récente de la macro de DataSet de cache (v2) de la Alteryx Analytics Gallery et la lire ici. (vous pouvez également obtenir la version originale du DataSet de cache ici.) Une des grandes choses sur Alteryx est de savoir comment une fois que vous obtenez le coup de lui, vous êtes capable de manipuler des données presque aussi vite que vous pouvez penser à l'étape suivante dans votre processus. Vous finissez par passer moins de temps à jongler avec les mécanismes de mélange et d'analyse de vos données, et plus sur le problème réel de l'entreprise à portée de main. Vous obtenez dans un flux rythmique, cet état d'esprit où vous perdez la trace du monde extérieur tout en éclabousseant les accents de Regex et les faits saillants de la formule sur votre toile, et devenez un avec les données pour créer un chef-d'œuvre de travail. Mais lors de la construction d'un workflow qui traite de grandes quantités de données et/ou exécute des analyses de processeur lourde, vous pourriez trouver difficile d'entrer dans ce flux rythmique que vous êtes habitué quand vous devez attendre plusieurs minutes entre les pistes pour voir les résultats de l'ajout d'un outil ou un Groupe d'outils sur la toile. Une solution à cette limitation de votre flux est d'échantillonner toutes les données. Il y a plusieurs façons de le faire. L'un consiste à placer des outils d'échantillonnage stratégiquement tout au long de votre workflow. Une façon plus robuste et plus propre d'accomplir la même chose est de créer une constante utilisateur pour limiter le nombre d'enregistrements sur les outils d'entrée: Cliquez sur n'importe quel espace sur la toile, puis dans la fenêtre de configuration, accédez à l'onglet "workflow" Ajouter une nouvelle constante définie par l'utilisateur appelée "sample" et la définir à un nombre relativement faible, comme 1000 Dans le panneau de configuration de tous les outils d'entrée, définissez l'option "limiter l'enregistrement" à "% User. Sample%" (sans les guillemets) Développez votre workflow avec le nombre d'enregistrements d'entrée limitée, et lorsque vous êtes prêt à l'exécuter avec l'ensemble complet de données, il suffit de définir l'utilisateur constante définie "sample" pour être vide afin que les données ne sont pas plafonnés Le problème avec cette approche est que dans de nombreux cas, vous n'allez pas voir le comportement dont vous avez besoin pour construire votre workflow de manière appropriée. Mais que faire si vous pouviez "sauver votre place" et d'exécuter uniquement les nouveaux outils que vous avez ajouté à la toile, sans ré-exécuter tout le reste encore une fois? Eh bien, je vais vous montrer comment vous pouvez faire exactement cela-avec l'aide de la macro cache DataSet! Voici une démo rapide de la façon dont il fonctionne. Supposons que vous avez un workflow qui dispose de trois sources de données d'entrée qui ont chacune plus de cent millions de lignes. Vous les Nettoyez et faire un peu de traitement, et déjà cela commence à prendre plus de temps que vous souhaitez attendre avant d'ajouter l'outil suivant et de jouer avec la configuration. À ce stade, vous décidez d'arrêter de déconner et de couper à la poursuite avec la macro de DataSet de cache. Pour ce faire, vous devez d'abord placer les outils que vous avez terminé la configuration dans un conteneur d'outils. Vous ajoutez ensuite une macro de DataSet de cache au dernier outil du flux: Si vous n'êtes pas familier avec l'outil conteneur outil, vous pouvez le trouver dans la catégorie outil de documentation. Pour l'utiliser, il suffit de le placer sur la toile, puis de faire glisser une sélection d'outils en elle. Ensuite, vous devez configurer la macro de DataSet de cache, qui heureusement est très simple. Vous voudrez lui donner un nom unique et descriptif (si vous avez plusieurs macros de DataSet de cache sur votre toile, soyez sûr de leur donner chacun des noms différents!), et vous voudrez laisser le mode d'exécution réglé à «écrivent». Maintenant, lorsque vous exécutez le workflow, le Datastream étant alimenté dans la macro de DataSet de cache (dans ce cas, la sortie du deuxième outil de transposition) sera enregistrée en tant que fichier temporaire. (plus spécifiquement, il sera enregistré en tant que fichier de données Alteryx dans le même dossier que la macro de DataSet de cache lui-même.) Installation terminée! Nous allons accélérer notre workflow! Maintenant que nous avons la configuration du workflow pour utiliser la macro de DataSet de cache, nous allons le mettre à l'utilisation. Après avoir exécuté le workflow une fois avec la macro de DataSet de cache en mode "Write", vous pouvez l'activer en mode "Read" afin qu'il référence le fichier temporaire au lieu du flux d'entrée. Lorsque vous faites cela, vous verrez un indicateur d'erreur sur la macro de DataSet de cache vous indiquant qu'il est en "mode lecture". Ce n'est pas une erreur réelle, mais est destiné à être un indicateur visuel commode de sorte que lorsque vous commencez à construire un grand flux de travail avec de nombreuses macros de DataSet de cache, vous pouvez dire instantanément ceux qui sont mis à "Read" mode. Cela est important car cela signifie que l'entrée Datastream est ignorée, et si vous effectuez des modifications à un outil en amont, ces modifications ne passeront pas par la macro de DataSet de cache alors qu'elle est en mode «Read» puisqu'elle est lue à partir du DataSet temporaire enregistré au. Maintenant, lorsque vous exécutez le workflow à nouveau, au lieu de prendre quelques minutes, il finira de fonctionner presque instantanément! Vous pouvez maintenant continuer à créer votre workflow à partir de la macro de DataSet de cache. Lorsque vous avez votre configuration de workflow à votre goût, vous pouvez faire un clic droit sur les macros de jeu de données de cache et "supprimer et se connecter" pour se débarrasser d'eux sans perturber le flux des données, ou vous pouvez simplement placer la macro en "Bypass" mode, qui permettra le flux de données THRO ugh il intact comme si elle n'était même pas là. Retour dans le flux Une fois que vous commencez à utiliser la macro de jeu de données de cache, vous obtiendrez le coup de lui rapidement, et vous retrouverez de nouveau dans cette cannelure douce que vous êtes habituée, même lors de l'élaboration de certains lourds traitement intensive des ressources dans votre workflow. Espérons que vous trouverez la macro de jeu de données de cache pour être un ajout utile à votre boîte à outils qui vous permet d'obtenir plus de Alteryx. Si vous avez des questions, des commentaires, ou des commentaires, s'il vous plaît le partager dans la section commentaires ci-dessous, je l'apprécierais vraiment et je suis heureux de vous aider avec tous les problèmes que vous pourriez rencontrer. Une note rapide avant de se séparer: comme indiqué, cette macro écrit des datasets temporaires dans le dossier contenant la macro de DataSet de cache. Il se peut que vous souhaitiez supprimer occasionnellement les datasets dans ce dossier s'ils prennent beaucoup d'espace. À un certain point, j'ai l'intention de mettre à jour la macro pour inclure la logique pour le nettoyage de ces jeux de données temporaires, mais ce sera pour une autre fois. Quand je fais, je vais être sûr de lien vers la mise à jour ici. En attendant, c'est laissé à l'utilisateur. Après Pour conclure, je voulais montrer un exemple de ce qu'un workflow pourrait ressembler qui a été développé une section à la fois avec la macro de DataSet de cache. Dans la capture d'écran de workflow ci-dessous, j'ai eu trois grands ensembles de données que j'avais besoin de transformer et de normaliser avant de développer un modèle avec l'ensemble d'outils prédictifs Alteryx. C'était en fait ce problème très qui a été l'inspiration pour la macro de DataSet de cache. Sur le côté gauche se trouve le workflow final avec tous les conteneurs d'outils activés et les datasets de cache en mode "Write" (encerclé en rouge pour les rendre plus visibles), et sur la droite est le même Workflow avec les conteneurs désactivés et les macros de mise en cache mis en mode "Read". Shoutout à collègues ingénieur de contenu Neil Ryan, qui a également développé une macro de mise en cache avec la même fonctionnalité indépendamment, avant que je fasse. Je ne me sens pas juste en prenant le plein crédit pour cette solution à un problème commun que nous avons tous rencontré, quand Neil m'a battu au Punch. En dépit de la création fondamentalement la même chose, pour quelque raison que sa macro n'a pas eu autant de visibilité au sein de notre groupe, et en conséquence, je suis celui qui écrit ce billet de blog. C'est une véritable situation de Leibniz-Newton. Donc, si cela est bien reçu, je suis heureux de partager la gloire avec Neil. Mais si vous ne l'aimez pas, s'il vous plaît diriger votre colère et la déception envers Neil, puisque quand vous y pensez, c'était son idée d'abord. À: -10/12/2015: Une mise à jour mineure de la macro a été téléchargée afin qu'elle puisse être présente dans les workflows téléchargés dans la galerie en 10,0. Lorsqu'une macro est dotée d'un outil d'entrée et d'un outil de sortie qui pointe vers le même fichier, elle l'interprète comme un problème et indique que la validation a échoué. Cela se produit dans cette macro, puisque nous sommes à la fois la lecture et l'écriture à partir du fichier mis en cache temporaire, même si elle ne se produit jamais en même temps. Nous obtenons autour de ceci en pointant les outils d'entrée/sortie à différents noms de fichier d'espace réservé, et puisque les outils d'action mettent à jour le chemin en utilisant le nom spécifié par l'utilisateur dans la configuration, nous sommes bons pour aller. Gardez à l'esprit cependant, que si vous êtes en téléchargeant un workflow à la galerie qui utilise cette macro, vous serez OK si elle est réglée sur "Write" ou "Bypass" mode, mais se déroulera dans les problèmes si vous l'avez réglé sur "Read" mode! -10/14/2015: Ajout d'un lien pour télécharger la macro à partir de la galerie en haut de la page. -04/11/2016: Ajout d'un lien vers la macro cache DataSet V2 en haut de la page. Le développement de workflows à forte intensité de ressources peut être un défi lorsque les modifications de test impliquent l'exécution du workflow via des itérations qui peuvent prendre plusieurs minutes ou plus avant d'être en mesure de voir les résultats. Ce message parcourt l'utilisation de la macro de DataSet de cache pour développer des workflows d'une manière plus intelligente, éviter les temps de longue durée répétés et accélérer le processus de fusion et d'analyse de plus grandes séries de données. Cache
Afficher l'article complet
Étiquettes