Поделиться через


Поток данных

Область применения: среда выполнения интеграции SSIS SQL Server в Фабрика данных Azure

Службы SQL Server Integration Services предоставляют три различных типа компонентов потока данных: источники, преобразования и назначения. Источники извлекают данные из хранилищ данных, таких как таблицы и представления в реляционных базах данных, файлах и базах данных Служб Analysis Services. Преобразования изменяют, объединяют и очищают данные. Целевые объекты загружают данные в хранилища или создают наборы данных в памяти.

Примечание.

При использовании настраиваемых поставщиков в файл ProviderDescriptors.xml необходимо внести значения столбца метаданных.

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

Соединение компонентов потока данных осуществляется путем соединения выходов источников и преобразований с входами преобразований и целевых объектов. При создании потока данных обычно соединяются второй и последующие компоненты — так же, как их добавляли к потоку данных. После соединения компонента входные столбцы могут быть использованы при настройке компонента. Когда нет доступных входных столбцов, настройка компонента завершится после его подсоединения к потоку данных. Дополнительные сведения см. в статьях Пути служб Integration Services и Соединение компонентов с путями.

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

Компоненты потока данных и их вводы и выводы

Реализация потока данных

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

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

Создание потока данных включает следующие шаги.

  • Добавление одного или нескольких источников для извлечения данных из файлов и баз данных, а также добавление диспетчеров соединений для подключения к источникам.

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

    Для некоторых преобразований требуется диспетчер соединений. Например, преобразование «Уточняющий запрос» использует диспетчер соединений для подключения к базе данных, содержащей искомые данные.

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

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

  • Настройка выходов ошибок для компонентов в целях решения проблем.

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

  • Включение примечаний для самодокументирования потока данных. Дополнительные сведения см. в разделе Использование заметок в пакетах.

Примечание.

При создании нового пакета можно воспользоваться мастером, который поможет правильно настроить диспетчеры соединений, источники и назначения. Дополнительные сведения см. в разделе Create Packages in SQL Server Data Tools.

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

Выражения

Некоторые из компонентов потоков данных (источники, фильтры и цели) поддерживают использование выражений с некоторыми своими свойствами. Выражение свойств — это выражение, которое заменяет значение свойства при загрузке пакета. Во время выполнения пакет будет использовать обновленные значения свойств. Выражения создаются с помощью синтаксиса выражений Служб Integration Services и могут включать функции Служб Integration Services, операторы, идентификаторы и переменные. Дополнительные сведения см. в разделах Выражения служб Integration Services (SSIS), Выражения служб Integration Services (SSIS) и Использование выражений свойств в пакетах.

При создании пакета в SQL Server Data Tools (SSDT) свойства всех компонентов потока данных, поддерживающих выражения свойств, предоставляются в задаче Поток данных, к которой они относятся. Чтобы добавить, изменить или удалить выражения свойств из компонентов потока данных, щелкните задачу потока данных и в окне «Свойства» или в редакторе задачи добавьте, измените или удалите выражения свойств. Выражения свойств для задачи потока данных можно добавлять, изменять или удалять в окне «Свойства».

Если в потоке данных содержатся компоненты, использующие выражения свойств, эти выражения также отображаются в окне «Свойства». Для просмотра выражений выберите задачу потока данных, которой принадлежат компоненты. Свойства можно просматривать по категориям или в алфавитном порядке. Если в окне "Свойства" отображается представление по категориям, все выражения, не использующиеся в конкретном свойстве, приводятся в списке категории Прочие . Если выражения представлены в алфавитном порядке, они отображаются по имени компонента потока данных.

Источники

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

Поток данных может содержать один или несколько источников.

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

Стандартный выход ссылается на внешние столбцы. Внешним называется столбец в источнике. Например, столбец MadeFlag в таблице Product базы данных AdventureWorks — внешний столбец, который можно добавить к стандартному выходу. Метаданные внешних столбцов хранят информацию об имени исходного столбца, типе и длине хранящихся в нем данных.

Выход ошибок источника хранит те же столбцы, что и стандартный выход, а также два дополнительных столбца, предоставляющих информацию об ошибках. Объектная модель Служб Integration Services не ограничивает количество регулярных выходных данных и выходных данных ошибок, которые могут иметь источники. Большинство источников, которые включают службы Integration Services, за исключением компонента скрипта, имеют один регулярный вывод, и многие источники имеют один вывод ошибок. Пользовательские источники могут быть спроектированы так, чтобы содержать несколько стандартных выходов и выходов ошибок.

Все выходные столбцы доступны в качестве входных столбцов для следующего компонента потока данных.

Кроме того, существует возможность указывать пользовательские источники. Дополнительные сведения см. в разделах Разработка пользовательского компонента потока данных и Разработка компонентов потока данных определенных типов.

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

Источники, доступные для загрузки

В следующей таблице перечислены дополнительные источники, которые можно скачать с веб-сайта Майкрософт.

Оригинал Description
Источник Oracle Источник Oracle — это исходный компонент Microsoft Connector для Oracle by Attunity. Соединитель Майкрософт для Oracle от Attunity также включает диспетчер соединений и назначение. Дополнительные сведения см. на странице загрузки Microsoft Connectors for Oracle and Teradata by Attunity(на английском языке).
Источник SAP BI Источник SAP BI — это исходный компонент соединителя Майкрософт для SAP BI. Соединитель Майкрософт для SAP BI также включает диспетчер соединений и назначение. Дополнительные сведения см. на странице скачивания Microsoft SQL Server Feature Pack(Пакет дополнительных компонентов Microsoft SQL Server).
Источник Teradata Источник Teradata — это исходный компонент соединителя Майкрософт для Teradata от Attunity. Соединитель Майкрософт для Teradata от Attunity также включает диспетчер соединений и назначение. Дополнительные сведения см. на странице загрузки Microsoft Connectors for Oracle and Teradata by Attunity(на английском языке).

Демонстрация использования повышения производительности Соединителя Майкрософт для Oracle от Attunity см. в статье "Производительность Microsoft Connector для Oracle по Attunity" (видео SQL Server).

Преобразования

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

Входы и выходы преобразований определяют столбцы входных и выходных данных. В зависимости от выполняемых операций над данными у одних преобразований может быть один вход и несколько выходов, а у других — несколько входов и один выход. Преобразования также могут включать выходы ошибок, которые предоставляют сведения о произошедших ошибках и сами данные, вызвавшие ошибку: например, строковые данные, которые не могут быть преобразованы в тип данных integer. Объектная модель Служб Integration Services не ограничивает количество входных данных, регулярных выходных данных и выходных данных ошибок, которые могут содержать преобразования. Пользовательские преобразования могут реализовывать любое сочетание входов, стандартных выходов и выходов ошибок.

Вход преобразования определяется как один или более входных столбцов. Некоторые преобразования Служб Integration Services также могут ссылаться на внешние столбцы в качестве входных данных. Например, вход преобразования «Команда OLE DB» включает в себя внешние столбцы. Выходным называется столбец, который добавляется преобразованием в поток данных. И стандартные выходы, и выходы ошибок содержат выходные столбцы. Эти выходные столбцы, в свою очередь, служат входными столбцами для следующего компонента потока данных: или другого преобразования, или целевого объекта.

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

Дополнительные сведения см. в статье Integration Services Transformations.

Назначения

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

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

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

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

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

Можно также написать отдельные назначения. Дополнительные сведения см. в разделах Разработка пользовательского компонента потока данных и Разработка компонентов потока данных определенных типов.

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

Назначения, доступные для загрузки

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

Оригинал Description
Назначение Oracle Назначение Oracle — это целевой компонент Microsoft Connector для Oracle by Attunity. Соединитель Майкрософт для Oracle от Attunity также включает диспетчер соединений и источник. Дополнительные сведения см. на странице загрузки Microsoft Connectors for Oracle and Teradata by Attunity(на английском языке).
Назначение SAP BI Назначение SAP BI — это целевой компонент соединителя Майкрософт для SAP BI. Соединитель Майкрософт для SAP BI также включает диспетчер соединений и источник. Дополнительные сведения см. на странице скачивания Microsoft SQL Server Feature Pack(Пакет дополнительных компонентов Microsoft SQL Server).
Назначение Teradata Назначение Teradata — это целевой компонент соединителя Майкрософт для Teradata от Attunity. Соединитель Майкрософт для Teradata от Attunity также включает диспетчер соединений и источник. Дополнительные сведения см. на странице загрузки Microsoft Connectors for Oracle and Teradata by Attunity(на английском языке).

Демонстрация использования повышения производительности Соединителя Майкрософт для Oracle от Attunity см. в статье "Производительность Microsoft Connector для Oracle по Attunity" (видео SQL Server).

Диспетчеры подключений

Многие компоненты потока данных подключаются к источниками данных. Добавить диспетчеры соединений, необходимые для компонентов пакета, следует до того, как компонент будет правильно настроен. Диспетчеры соединений можно добавить при создании потока данных или до начала его создания. Дополнительные сведения см. в статье Соединения в службах Integration Services (SSIS) и разделе Создание диспетчеров подключений.

Внешние метаданные

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

Проект служб Integration Services предоставляет автономный режим. При работе в режиме «вне сети» соединения с используемыми пакетом источниками и целевыми объектами не устанавливаются, а метаданные внешних столбцов не обновляются.

Входные и выходные данные

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

Входные данные

У целевых объектов и преобразований есть входы. Вход содержит один или более входных столбцов, которые могут ссылаться на внешние столбцы, если компонент потока данных настроен так, чтобы использовать их. Входы могут быть настроены для наблюдения за потоком данных и управления им: например, можно определить, что компонент должен прерывать нормальный ход работы при возникновении ошибки, пропускать ошибки или перенаправлять строки, содержащие ошибки, на вывод ошибок. Можно также задавать описание входа или обновлять имя входа. В конструкторе служб SSIS входные данные настраиваются с помощью диалогового окна Расширенный редактор. Дополнительные сведения о расширенном редакторе см. в статье Пользовательский интерфейс служб Integration Services.

Выходные данные

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

Выходы ошибок

У источников, целевых объектов и преобразований могут быть выходы ошибок. В диалоговом окне Настройка вывода ошибок можно определить, как компонент потока данных будет реагировать на ошибки в каждом входе или столбце. Если во время выполнения произошла ошибка или усечение данных, а компонент потока данных настроен так, чтобы перенаправлять строки, строки данных, содержащие ошибки, будут отправлены на выход ошибок. Выход ошибки может быть подсоединен к преобразованиям, что инициирует дополнительные преобразования или направляет данные в другой целевой объект. По умолчанию вывод ошибок содержит выходные столбцы и два столбца с данными об ошибках: ErrorCode и ErrorColumn. Выходные столбцы содержат данные из строки с ошибкой, ErrorCode хранит код ошибки, а ErrorColumn определяет столбец, в котором произошла ошибка.

Дополнительные сведения см. в разделе Обработка ошибок в данных.

Столбцы

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

Пути

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

Дополнительные сведения см. в разделах Пути служб Integration Services и Отладка потока данных.

Настройка компонентов потока данных

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

  • На уровне компонента определяются общие для всех компонентов свойства, а также свойства, характерные для конкретного компонента.

  • На уровне входа, выхода и выхода ошибок определяются общие свойства входов, выходов и выходов ошибок компонента. Если компонент поддерживает работу с несколькими выходами, то их можно добавить.

  • На уровне столбцов в дополнение к общим для всех столбцов свойствам задаются характерные свойства, предоставляемые компонентом для столбцов. Если компонент поддерживает добавление выходных столбцов, то их можно добавить к выходам.

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

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

Добавление или удаление компонента в потоке данных

Соединение компонентов в потоке данных

Видеоролик Performance of Microsoft Connector for Oracle by Attunity (SQL Server Video)(Работа соединителя для Oracle (Майкрософт) от компании Attunity — видео по SQL Server) на сайте technet.microsoft.com.