Правила разбора данных

«Сырые»(первичные) данные – данные полученные от источника, в формате специфичном для источника, но не обязательно совпадающем с форматом данных используемым в DWH. Если формат «сырых» данных делает невозможным прямое их помещение в DWH, необходимо применить алгоритмы извлечения. Выбор алгоритма обусловлен типом данных. Алгоритм извлечения данных нуждается в некоторых настройках, предварительно выполненных пользователем. Данные настройки специфичны как для формата данных, так и для конкретной структуры данных.
Сумма таких настроек является: правилом разбора данных.


В ETL правила разбора данных находятся в справочнике «Правила разбора данных». Для того чтобы открыть справочник «Правила разбора данных» перейдите: Панель функций раздела «Главное» » Настройки » Установить правила разбора данных
ПутьКПравилу.png

Правило разбора данных

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

Форма правила:
ФормаПравила.png

Описание табличной части правила

  • Колонка таблицы - (2) - Имя колонки таблицы в которую следует поместить значение из первичных данных.
  • Тип поля - (3) - Тип данных колонки таблицы
  • Путь к элементу - (4) - Описание пути к элементу внутри первичных данных. Используется формат специфичный для типа первичных данных. Для JSON – используется JSONPath, для XML – XMLPath и т.д.
  • Тип элемента - (5) - Ожидаемый тип элемента в первичных данных. Используется для проверки/приведения типа.
    Если тип элемента в первичных данных не соответствует указанному, данные элемента загружены не будут.
    Если выбрать тип элемента аналогичный типу первичных данных (пример: JSON-json), то данные элемента будут загружены в оригинальном формате. Таким образом можно загружать целиком блоки данных, например массив JSON можно поместить в одну колонку таблицы с типом text или jsonb.
    Если тип поля таблицы и тип поля элемента отличаются, будет выполнена попытка приведения типа элемент к типу поля. В ситуациях когда приведение не очевидно, есть варианты для таких типов, например: «Дата строкой (ISO)» подсказывает что данные имеют строковой тип, но представляют собой дату в ISO формате.
  • ! - (6) – Флаг необязательного элемента. Необязательным является такой элемент, данные из которого не нужны сами по себе, а только совместно с данными обязательных элементов. Таким образом, если данных в обязательных элементах не окажется, не обязательные загружены не будут.
  • По умолчанию - (7) – Значение по умолчанию для колонки таблицы. Используется если элемент в данных отсутствует, не содержит значение, или не может быть приведён к типу данных колонки таблицы.
  • Набор - (1) – Произвольное имя, используется для объединения отдельных строк правила в набор. Наборов может быть несколько. Все наборы описывают общую структуру таблицы приёмника, но содержат разные пути к элементам. Позволяет в одну таблицу загружать строки, полученные из разных областей первичных данных.

Общие свойства правила

  • Тип данных - Тип первичных данных, требуется для выбора алгоритма при разборе данных по правилу.
  • Кодировка - Позволяет точно указать кодировку элементов с типом «текст» в первичных данных.


Конструкторы правил - Инструменты для создания правил на основании образца первичных данных.

Открыть конструктор с пустым правилом возможно из формы списка справочника «Правила разбора данных» используя кнопку
КнопкаОткрытьКонструктор.png
Из формы элемента справочника «Правила разбора данных» можно открыть в конструкторе конкретное правило используя кнопку
КнопкаОткрытьПравилоВконструкторе.png