Основы
Практики 1–9Удалить все Browse Tools
Browse ToolОбязательно удаляйте все инструменты Browse по завершении workflow. Browse может быть полезен для просмотра и проверки данных в процессе разработки, но в готовом потоке он не нужен.
Browse Tools нежелательны в готовом workflow по двум причинам: во-первых, они засоряют обзор потока; во-вторых, каждый Browse Tool создаёт временный файл .yxdb (Alteryx Database), что замедляет обработку.
Есть возможность просто отключить все Browse Tools, если нужно — без удаления:
Canvas → Runtime → Disable All Browse Tools
Правильные типы данных
Select ToolЛучшая практика — убедиться, что вы работаете с правильными типами данных и осмысленными именами переменных как можно раньше в workflow. Это можно сделать с помощью инструмента Select в начале потока.
Это гарантирует хороший обзор переменных и поможет избежать потери времени — например, попыток выполнить числовые операции со строками. Некоторые программы требуют специфических типов данных в зависимости от источника — например, экспорт TDE-файлов в Tableau с Unicode-символами требует типа V_WString.
Выделите нужные переменные → Options → Change Field Types of Highlighted Fields
Для выбора/снятия выделения нескольких переменных: Выделить → Options → Select → (De)Select All Highlighted Variables
Документация: описательные заголовки
Документирование workflow — всегда лучшая практика. При работе с несколькими workflow важно давать им описательные названия. Если workflow взаимозависимы, полезно также их пронумеровать.
Описательные пронумерованные заголовки облегчают понимание зависимостей между workflow и дают представление о содержании без необходимости открывать каждый файл.
Пример именования
- 1. Sales Cleansing and yxdb
- 2. Sales Analysis
- 3. Customer Cleansing and yxdb
- 4. Customer Analysis
- 5. Output to Tableau
Документация: аннотации инструментов
Аннотации — короткие и точные описания того, что происходит внутри каждого инструмента. Они очень полезны, так как дают понять назначение инструмента. Аннотация остаётся прикреплённой к инструменту даже при его перемещении.
Редактировать аннотации можно, кликнув на инструмент → иконка «Label» → поле Annotation. Положение аннотации настраивается галочкой «Place Annotation on the Top».
Полный код формулы в аннотации — нечитаемо и засоряет холст.
Краткое описание: «Форматирование типов & переименование», «Создание переменных заказа».
Документация: Comment Tool
Аннотации могут стать неудобными, если нельзя кратко объяснить все шаги в нескольких словах. В этом случае Comment Tool может быть полезнее. Он работает как текстовый блок и может быть размещён где угодно на холсте. В отличие от аннотаций, текстовые блоки не прикреплены к конкретному инструменту.
Comment Tool также имеет дополнительные параметры форматирования: форма, цвет, выравнивание, стили шрифта и фоновые изображения. Найти его можно в панели Documentation.
Документация: Tool Containers
Tool Containers позволяют группировать части workflow по этапам. Это помогает чётко понимать, какие инструменты используются вместе на каждом шаге анализа.
Можно добавлять имена и цвета к контейнерам, что усилит группировку. Компоновка внутри контейнера сохраняется при его перемещении. Особенно эффективно использовать контейнеры вместе с Comment Tools.
Называйте инструменты описательно, а не просто нумеруйте — имя инструмента появится в панели Results при запуске потока, что упростит отладку.
При использовании Tool Containers: рекомендуется устанавливать margin = 0 и transparency = 50%.
Удалять дубликаты из Join
Join ToolПри использовании Join Tool для объединения двух источников данных по полям с одинаковыми именами, Alteryx по умолчанию добавляет префикс к переменным из правого ввода. Эти значения являются дубликатами и в большинстве случаев лишь замедляют обработку.
Обязательно удаляйте все дублирующиеся переменные из Join. Это можно сделать двумя способами:
Способ 1
Снимите галочки рядом с дублирующимися (правыми) переменными в конфигурации Join.
Способ 2
При большом количестве дубликатов: Join Configuration → Options → Deselect Duplicate Fields
Нет ошибок, предупреждений, конверсионных ошибок
При построении workflow в Alteryx вы рано или поздно столкнётесь с ошибками, конверсионными ошибками и предупреждениями. Это замечательная функция. Лучшая практика — устранять ошибки сразу при их появлении.
Поддерживайте чистоту панели Results — это гарантирует отсутствие ошибок в логике и упрощает обнаружение проблем при следующем запуске. Ошибки отображаются восклицательным знаком под инструментом. Ссылка на инструмент (в скобках) в панели Results указывает на источник ошибки.
При работе с макросами (например, предиктивными инструментами) Alteryx по умолчанию показывает только ошибки из макросов, а не конверсионные ошибки и предупреждения. Для отображения всех сообщений:
Canvas → Workflow-Configuration → Runtime → Show All Macro Messages
Используйте макросы
Если у вас несколько workflow или потоков данных, к которым нужно применить одинаковую логику, лучшая практика — использовать макросы. Macro Workflow — это просто workflow, который может запускаться как единый инструмент внутри другого workflow.
Существует три типа макросов: Batch-, Iterative- и Location Optimizer-Macros. Макрос имеет собственную конфигурацию в Interface Designer, что создаёт гибкость для конечного пользователя.
Создайте репозиторий макросов, где Alteryx будет искать макросы в указанных директориях и отображать их в палитре инструментов.
Перейти к Interface Designer: View → Interface Designer
Структура
Практики 10–11Хорошая структура папок
Поддерживайте логичную структуру папок для источников данных, workflow, результатов и прочих материалов. Это даёт хороший обзор работы и упрощает передачу другим.
Рекомендуемая структура (Проект 1)
- 📁 Alteryx/ — Output/, Workflows/
- 📁 Archive/ — старые версии workflow
- 📁 Data/ — Input Data/, Metadata/
- 📁 Tableau/ — Dashboards/, Extracts/
Без автоматического XML-парсинга
XML Parse ToolНе рекомендуется использовать автоматический XML-парсинг. XML-код может измениться и сломать workflow. Поэтому никогда не используйте Auto Detect Child при использовании XML Parse Tool в производственной среде.
Вместо этого явно укажите имя дочернего элемента (Specific Child Name) — это сделает workflow устойчивым к изменениям структуры XML.
Производительность
Практики 12–17Центральный источник данных — загрузка один раз
При работе с несколькими источниками данных лучшая практика — разделять подготовку и анализ данных. Создайте один workflow для подготовки всех данных в единый центральный источник, который затем используется как ввод в аналитическом workflow.
Рекомендуется сохранять данные в формате Alteryx Database (.yxdb) — это наиболее эффективный формат для чтения и записи в Alteryx, так как использует те же типы полей, структуры и форматы, что и Alteryx внутри. Также нет ограничения на количество записей (только на размер — 2 ГБ).
Отключить все выводы
При разработке workflow иногда нужно внести изменения или протестировать новый процесс, не перезаписывая важные файлы. Вместо удаления и повторного подключения Output Tool — просто отключите все выводы.
Containers для частичного выполнения
Tool Containers полезны для частичного выполнения и организации workflow. Размещая инструменты внутри контейнера, можно разбить данные на управляемые части и открывать/закрывать контейнеры без влияния на работу инструментов.
Инструменты внутри отключённого Tool Container не будут обрабатываться при запуске workflow — это удобно для тестирования отдельных частей.
Использование Performance Profiler
Оптимизируйте workflow для максимально быстрой работы. Если workflow работает медленно, включите Performance Profiler — он профилирует каждый инструмент и показывает, какие из них занимают больше всего времени.
Download — из-за больших объёмов данных; решение: запускать загрузку ночью.
RegEx — зависит от используемого регулярного выражения; оптимизируйте метод поиска, например, используя числа вместо текста.
Join — часто снижает производительность при больших данных.
Исследование данных на подвыборках
При первичной разработке workflow ограничивайте количество записей. Это ускоряет обработку и экономит время при работе с большими данными. Задайте Record Limit в конфигурации Input Tool.
Инструменты для подвыборок
- Select Records — выбор конкретных записей
- Sample — ограничение по числу или проценту
- Random % Sample — случайный процент записей
💡 Кэширование
При работе с реляционными БД используйте кэширование (Cache Data в конфигурации Input Tool) — может существенно сократить время обработки.
Использование In-DB инструментов
При работе с большими объёмами данных лучшая практика — использовать In-Database (In-DB) инструменты для предварительной обработки данных прямо в базе. In-DB инструменты работают только внутри подключённой базы данных.
Выбор между In-DB и In-Memory зависит от скорости и сложности операций. Если In-DB даёт прирост скорости — используйте его. Если нет, или нужна гибкость In-Memory инструментов — остайтесь в памяти.
Тёмно-синий фон иконок, синие входы и выходы, «жирные» соединения. Зелёные входы/выходы означают передачу данных между памятью и базой данных.
Завершение
Практики 18–21Временная метка на источнике данных
Formula ToolПри создании отчётов и workflow важно информировать пользователей о последнем времени запуска. Простой способ — добавить временную метку в имя выходного файла или в сам источник данных. Используйте Formula Tool и функцию DateTimeToday().
Функция DateTimeToday() возвращает текущую дату и время. При создании Excel-файла используйте Formula Tool для создания поля с полным путём к файлу, содержащим сегодняшнюю дату. В конфигурации Output Tool активируйте «Take File/Table Name From Field».
List Runner для управления выполнением
При работе с несколькими workflow используйте инструмент List Runner для управления порядком выполнения. List Runner принимает список модулей Alteryx и запускает их последовательно, выводя все логи в единый выход и указывая на ошибки, конверсионные ошибки или предупреждения.
Используйте List Runner в связке с Log Parser Tool — он разбирает лог в таблицу Alteryx и указывает не только конкретный модуль, но и ID инструмента с описанием ошибки.
Чистый и хорошо построенный Workflow
По завершении workflow убедитесь, что не оставили лишних инструментов. Это могут быть Select Tool для проверки типов, Sort Tool для валидации или любой инструмент, который больше не нужен.
Всегда ищите кратчайший путь от входа к выходу. После решения задачи часто полезно пересобрать workflow заново — вы обнаружите, что можно получить тот же результат меньшим числом шагов. Это также помогает убедиться, что вы не тянете ненужные данные.
Относительные зависимости
Относительные пути определяют расположение относительно местонахождения workflow в системе пользователя. При использовании абсолютных путей и перемещении workflow они ломаются. Относительные зависимости обеспечивают гибкость при совместном использовании и развёртывании.
В диалоге Workflow Dependencies можно изменить одну зависимость (Edit) или все сразу (All Relative).
Аналитика
Практики 22–24Проверки и тестирование
Message ToolЛучшая практика — проводить регулярные проверки и использовать их для предупреждения о потенциальных ошибках. Примеры логических проверок:
- Все коэффициенты должны суммироваться до 100%
- Ни одна строка не должна выпасть из Join
- В потоке не должно быть ошибок, предупреждений или конверсионных ошибок
Message Tool идеально подходит для настройки тестов. В нём можно указать собственные критерии проверки, которые будут выводиться в окне результатов при нарушении. Message Tool отлично работает совместно с List Runner.
Вычисления
Документируйте и проверяйте все вычисления в workflow. Используйте описательные аннотации для Formula Tools, четко указывая что именно вычисляется в каждом поле.
При создании сложных вычислений разбивайте их на промежуточные шаги — это упрощает отладку и проверку корректности результатов.
Вы получаете правильные цифры?
Всегда проверяйте результаты workflow на соответствие ожидаемым значениям. Сравнивайте итоговые цифры с известными эталонными значениями или проверяйте на небольших подвыборках, где результат можно проверить вручную.
Используйте Browse Tool стратегически на промежуточных этапах для верификации данных в процессе разработки. После завершения — удалите все Browse Tools (Практика № 1).
Перед финальным запуском workflow убедитесь: нет ошибок → нет предупреждений → нет конверсионных ошибок → результаты соответствуют ожиданиям.