Блог

Главная / Блог / Представляем новую функцию динамического макета в Astera Centerprise 8.0

Содержание
Автоматизированный, Без кода Стек данных

Научиться Astera Data Stack может упростить и оптимизировать управление данными вашего предприятия.

Представляем новую функцию динамического макета в Astera Centerprise 8.0

Октябрь 2nd, 2023

В обычном ETL или ELT конвейере все сопоставление данных жестко привязано к статически определенной схеме. Типы данных, количество столбцов и имена столбцов генерируются на основе исходного макета соответствующих исходных таблиц.

При таком подходе любые изменения в исходных файлах или таблицах должны вручную отражаться в связанных потоках данных и рабочих процессах. Хотя эти задачи, как правило, ограничены, в ситуациях, когда транзакционные данные поступают из разных мест, некоторые входные каналы могут содержать дополнительные столбцы или следовать другим правилам записи для определенных полей. Более того, соответствующие департаменты обычно более чем готовы постоянно корректировать способы передачи своих данных.

При наличии статических макетов пользователям может потребоваться внести несколько ручных корректировок в существующие сопоставления данных и преобразования для устранения отклонений обновленной схемы.

AsteraНовая опция динамического макета упрощает эти трудоемкие задачи с помощью интуитивно понятных функций, которые позволяют настраивать параметры для исходных и целевых объектов. Все изменения автоматически распространяются на связанные карты данных. Эти изменения инициируются на основе путей и связей, которые уже применяются к существующим полям в ваших потоках данных и рабочих процессах, независимо от видимой структуры исходных сущностей.

При включенных динамических макетах эти различия могут быть автоматически определены и реализованы в ваших процессах ETL и ELT, не нарушая ваши интеграции данных.

Примеры использования динамического макета

Мы определили несколько сценариев, в которых возможность автоматизировать структурные изменения макетов будет полезна нашим пользователям. Возможные варианты использования этой функции включают в себя:

  1. Быстрое обновление макетов потока данных при добавлении, удалении или изменении столбцов в источнике.
  2. Выполнение аналогичных процессов (очистка, преобразование, миграция) в нескольких потоках данных с минимальной ручной корректировкой.
  3. Создание динамического процесса ETL или ELT, который автоматически выбирает разрозненные файлы из заданного местоположения и загружает их в новые места назначения.

Эти варианты использования более подробно описаны ниже.

Работа с аномалиями макета

В следующем потоке данных вы можете видеть, что исходная сущность позволяет использовать три поля по умолчанию, которые затем расширяются с помощью преобразования переменной и постоянного значения.

отображение данных

Один объект обновлен в динамическом макете

Теперь мы можем использовать экран компоновщика, чтобы настроить новый параметр для источника, как показано ниже.

конструктор динамических макетов

Конфигурация параметров в построителе макета исходной сущности

После включения динамических макетов выходные данные для этой сущности автоматически обновляются, и все новые поля проходят через ту же логику сопоставления. Новая структура таблицы выглядит следующим образом:

предварительный просмотр данных динамического макета

Предварительный просмотр данных с отображением добавленных полей для исходного объекта в динамическом макете

Мы можем дополнительно протестировать эту функцию, добавив поле в исходный файл, не меняя макет исходного объекта в Astera Centerprise. Это покажет нам, точно ли изменение отражено в поток данных.

Предположим, мы проверяем вывод в пункте назначения после повторного запуска потока данных. В этом случае мы видим, что дифференциал был автоматически выполнен для устранения любых несоответствий между исходным объектом и файлом Excel. Дополнительное поле затем легко включается в существующее сопоставление. Точно такой же процесс будет происходить всякий раз, когда поля удаляются из исходного файла.

динамический макет

Динамически обновленный вывод

Динамические макеты при миграции больших объемов данных

Динамически обновляемые базы данных

Фактическая эффективность этой функции становится очевидной, когда мы реализуем ее в объекте рабочего процесса, который выбирает массив исходных файлов из репозитория и запускает их через серию заранее установленных преобразований.

отображение данных

Обновление нескольких исходных объектов в динамическом макете

Выше у нас есть динамический источник базы данных, настроенный так, чтобы указывать на входные данные, определенные при преобразовании переменных.

источник базы данных

Параметры конфигурации для источника базы данных

Однако преобразование переменных не содержит определений для исходного файла или каталога.

В этом случае определения предоставляются внешним источником элементов файловой системы в рабочем процессе (Увидеть ниже)

процесс проектирования

Источник внешней файловой системы, предоставляющий определения для динамически обновляемого потока данных

Этот исходный объект настроен так, чтобы указывать на каталог, содержащий 26 различных файлов, каждый из которых имеет разную структуру.

Как вы можете видеть выше, полный путь и имя входного файла были связаны с переменным объектом в потоке данных. Этот рабочий процесс также настроен на циклическое выполнение, поэтому каждый файл в исходном каталоге будет выбран и запущен через объект потока данных, который будет динамически адаптироваться к новому макету и запускать исходный файл через преобразования, представленные в последний вариант использования без необходимости ручной настройки пользователем.

Мы также настроили целевую таблицу в нашем исходном потоке данных для загрузки всех преобразованных файлов в целевой CSV, определенный как версия имени исходного файла в верхнем регистре, обозначенная другим выражением в переменной сущности.

Динамически обновляемые запросы SQL

Мы использовали SQL-запрос Исходный объект для выбора всех полей из таблицы «Сотрудники» в исходной базе данных на схеме ниже.

Динамический поток данных SQL-запроса

Источник запроса SQL в динамическом потоке данных

Запрос SQL

Оператор SELECT

Еще раз: пути параметров в переменной зависят от входных данных внешнего объекта рабочего процесса, как показано ниже.

динамический поток данных

Внешний источник рабочего процесса, предоставляющий значения параметров для динамического потока данных

В этом случае мы выбрали источник с разделителями, который содержит в общей сложности 26 имен таблиц. Этот объект передается через преобразование выражения, которое помещает указанное имя таблицы в ВЫБОР заявление

Затем этот оператор связывается с полем входной переменной sqlquery1 в потоке данных. В результате оператор выбора, выполняемый в источнике в рис 4 будет обновляться динамически, чтобы выбирать данные из новой таблицы каждый раз при выполнении потока данных.

К каждому новому динамически генерируемому потоку данных также можно получить доступ индивидуально, если требуются дополнительные настройки на основе входной таблицы.

Как видите, исходный файл в рис 5 настроен на циклическое выполнение, поэтому рабочий процесс будет продолжать предоставлять новые имена таблиц, которые будут использоваться в Рис 4 Источник SQL-запроса. Реализуя динамические макеты, пользователи могут сэкономить время и усилия, затрачиваемые на создание нескольких отдельных потоков данных для выполнения одних и тех же операций с разнородными исходными таблицами.

Очистка данных и динамические макеты

Еще одна высокоэффективная реализация динамических макетов — крупномасштабные операции по очистке данных. Постоянно обновляемый набор данных должен быть проверен на точность и согласованность перед передачей в системы отчетности и аналитики.

В традиционной схеме макет необходимо обновлять вручную при каждом обновлении исходных данных. В случаях, когда соответствующая функция внесла структурные изменения в свои таблицы, не уведомив об этом разработчиков, деятельность по очистке данных может быть полностью прервана. Это окажет значительное влияние на принятие решений как на исполнительном, так и на оперативном уровнях.

Более того, если нужно очистить несколько таблиц одинаковым образом, разработчикам потребуется создать отдельные процессы для работы с каждым источником.

очистка данных

Очистка данных в динамически обновляемом потоке данных

На рисунке выше показан исходный объект, который настроен на выбор CSV-файлов из входного источника на основе значений, предоставленных в преобразовании переменной.

Целевой объект был аналогичным образом настроен для создания нового пункта назначения на основе определений, предоставленных при преобразовании переменных.

ввод значений переменных

Значения переменных для ввода и вывода

преобразование данных

Очистка данных полей ввода

Хотя поток данных в настоящее время показывает только одно поле, проходящее через этот процесс, мы можем добавить несколько дополнительных столбцов к источнику без каких-либо проблем.

Они будут легко интегрированы в существующее отображение на основе Пользовательский ИД направляющее поле, преобразованное и отправленное в новое настроенное место назначения.

Astera CenterpriseФункция динамических макетов

Хотите распространить изменения на целевой объект или создать полноценный конвейер потока данных, который сможет реагировать в режиме реального времени на обновления и изменения исходных наборов данных? Astera Centerprise позволяет добавлять динамические макеты, которые повышают гибкость даже самых сложных сопоставлений данных.

Вы можете запланировать консультация без обязательств сегодня с нашей технической командой для получения дополнительной информации об этой и других функциях.

Вам также может понравиться
7 лучших инструментов агрегирования данных в 2024 году
Структура управления данными: что это такое? Важность, основные принципы и передовой опыт
Лучшие инструменты приема данных в 2024 году
принимая во внимание Astera Для ваших потребностей в управлении данными?

Установите соединение без кода с вашими корпоративными приложениями, базами данных и облачными приложениями для интеграции всех ваших данных.

Давайте соединимся сейчас!
давайте соединимся