Учебное пособие по SSIS для начинающих: Archiархитектура, корпуса и компоненты

⚡ Умное резюме

SQL Server Integration Services (SSIS) — это компонент Microsoft SQL Server используется для создания решений по интеграции данных и организации рабочих процессов, выполняя, например,tracETL (преобразование, трансформация и загрузка данных) используется для перемещения и очистки данных между различными источниками и пунктами назначения.

  • 🔄 ETL-движок: SSIS extracданные из таких источников, как SQL Server, Excel. OracleЗатем DB2 преобразует и загружает данные в целевую базу данных.
  • ???? Поток управления: Управление потоком выполнения — это «мозг» пакета, упорядочивающий контейнеры и задачи на основе ограничений по приоритету.
  • ❤️ Поток данных: Поток данных — это сердце SSIS, перемещающий строки через источники, преобразования и места назначения в памяти.
  • 📦 Пакеты: Пакет группирует задачи, которые выполняются в определенном порядке, и сохраняет их в виде файла .dtsx в SQL Server или файловой системе.
  • 🧩 Задачи: Встроенные задачи, такие как выполнение SQL-запросов, обработка потока данных, работа с файловой системой, FTP и отправка. Mail Настраиваются методом перетаскивания.
  • ⚡ Бенефиты: SSIS автоматизирует загрузку данных, очищает и стандартизирует данные, а также обеспечивает надежную обработку ошибок и событий.

SQL Server Integration Services (SSIS): архитектура, пакеты, задачи и рабочий процесс ETL.

Что такое ССИС?

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

Это упрощает перемещение данных из одной базы данных в другую. SSIS может, например,tracданные из самых разных источников, таких как базы данных SQL Server, файлы Excel. Oracle а также базы данных DB2 и многое другое.

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

Почему мы используем SSIS?

Вот основные причины использования инструмента SSIS:

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

История SSIS

До появления SSIS использовались службы преобразования данных SQL Server (DTS), которые входили в состав SQL Server 7 и 2000. В таблице ниже приведена таблица. tracКак каждый выпуск SQL Server влиял на развитие инструмента:

Версия XNUMX
SQL Server 2005 Microsoft Команда решила обновить DTS. Однако вместо обновления DTS они решили переименовать продукт в Integration Services (SSIS).
SQL Server 2008 В SSIS было внесено множество улучшений производительности. Были также представлены новые источники.
SQL Server 2012 Это был самый масштабный релиз SSIS. В этой версии была представлена ​​модель развертывания проектов. Она позволяет развертывать на сервере целые проекты и их пакеты вместо отдельных пакетов.
SQL Server 2014 В этой версии в SSIS было внесено немного изменений. Однако были добавлены новые источники и преобразования, которые загружались отдельно. CodePlex или пакет дополнительных компонентов SQL Server.
SQL Server 2016 Добавлена ​​функция поэтапного развертывания пакетов, позволяющая отправлять отдельные пакеты в существующий проект. Каталог SSISDB получил поддержку групп доступности Always On, настраиваемые уровни логирования и имена столбцов для обработки ошибок. Дополнительные облачные источники и источники больших данных появились благодаря Azure Пакет функций.
SQL Server 2017 Введена функция масштабируемости (Scale Out), которая распределяет выполнение пакетов между несколькими рабочими машинами, управляемыми с одного главного сервера. SSIS также впервые смог работать на Linux, а пакеты можно было развертывать в SSISDB на Azure SQL-база данных и выполнено на Azure- Среда выполнения интеграции SSIS в Azure Фабрика данных.
SQL Server 2019 Незаметный релиз, ориентированный на работу с файлами в облаке. Функции Flexible File Task и Flexible File Source/Destination упростили работу с файлами в облаке. Azure хранение данных, включая форматы Avro, ORC и Parquet (для них требуется Java (время выполнения).
SQL Server 2022 По сути, новых функций SSIS нет. Движок остался без изменений, в то время как MicrosoftИнвестиции компании в интеграцию данных сместились в сторону Azure Data Factory, а позже, Microsoft Ткань.
SQL Server 2025 Выпущено в Microsoft Ignite состоится в ноябре 2025 года. Главное нововведение — это менеджер подключений ADO.NET, построенный на современной платформе. MicrosoftПровайдер .Data.SqlClient, обеспечивающий поддержку TLS 1.3 и Microsoft Аутентификация Entra ID. В этом релизе также удалены или объявлены устаревшими многие компоненты: компоненты Attunity CDC, задачи Hadoop, хранилище пакетов SSIS, устаревшая служба Integration Services Service и 32-битный режим выполнения.

Основные особенности SSIS

Вот некоторые важные возможности SSIS:

  • Студийные помещения
  • Соответствующие функции интеграции данных
  • Эффективная скорость внедрения
  • Тесная интеграция с другими Microsoft Семейство SQL
  • Преобразование запросов в интеллектуальном анализе данных
  • Нечеткий поиск и группировкаping преобразований
  • Термин Extracпреобразования поиска терминов и поиска терминов
  • Компоненты высокоскоростной передачи данных, такие как подключение к SAP or Oracle

ССИС Archiтекстура

На приведенной ниже диаграмме показано, как основные компоненты SSIS взаимодействуют друг с другом, начиная от управления потоком выполнения и заканчивая параметрами:

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

Ниже перечислены компоненты архитектуры SSIS:

  • Управление потоком выполнения (хранит контейнеры и задачи)
  • Поток данных (источник, получатель, преобразования)
  • Обработчик событий (отправка сообщений, электронных писем)
  • Package Explorer (предоставляет единое представление для всего содержимого пакета)
  • Параметры (взаимодействие с пользователем)

Давайте подробно разберем каждый компонент:

1. Поток управления

Управление потоком выполнения — это «мозг» пакета SSIS. Оно помогает организовать порядок выполнения всех его компонентов. Компоненты содержат контейнеры и задачи, управление которыми осуществляется с помощью ограничений по приоритету.

2. Ограничения приоритета

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

3. Задача

«Задача» — это отдельная единица работы. Она аналогична методу или функции, используемым в языке программирования. Однако в SSIS вы не используете методы кодирования. Вместо этого вы используете технику перетаскивания на рабочую область для их настройки.

4. Контейнеры

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

В SSIS используются три типа контейнеров:

  • Контейнер последовательности
  • Контейнер цикла For
  • Контейнер цикла по каждому элементу

Контейнер последовательности: позволяет организовывать вспомогательные задачи по группам.ping и позволяет применять к ним транзакции или назначать контейнеру ведение журналов.

Контейнер цикла For: Предоставляет ту же функциональность, что и контейнер последовательностей, за исключением того, что позволяет запускать задачи несколько раз. Однако это основано на условии оценки, подобном loo.ping от 1 до 100.

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

5. Поток данных

Основное назначение инструмента SSIS — это...tracВвод данных в память сервера, их преобразование и запись в другое место назначения. Если управление потоком данных — это мозг, то поток данных — это сердце SSIS.

6. Пакеты SSIS

Ещё одним ключевым компонентом SSIS является понятие пакета. Это набор задач, которые выполняются в упорядоченном порядке. В данном случае ограничения по порядку выполнения помогают управлять порядком выполнения задач.

Пакет может сохранять файлы на сервере SQL Server, в базе данных msdb или каталоге пакетов. Он может быть сохранен как файл .dtsx, который представляет собой структурированный файл, очень похожий по структуре на файлы .rdl. Службы отчетовНа иллюстрации ниже показан пакет SSIS, сохраненный в виде файла .dtsx:

Пакет SSIS сохраняется в виде файла .dtsx и хранится на сервере SQL Server или в файловой системе.

7. параметры

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

Типы задач SSIS

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

Название задачи Описание
Выполнить задачу SQL Как следует из названия, он выполняет SQL-запрос к реляционной базе данных.
Задача потока данных Эта задача может считывать данные из одного или нескольких источников, преобразовывать данные в памяти и записывать их в одно или несколько мест назначения.
Задача обработки служб Analysis Services Используйте эту задачу для обработки объектов табличной модели или куба SSAS.
Выполнение задачи пакета С помощью этой задачи SSIS можно запускать другие пакеты в рамках того же проекта.
Выполнить задачу процесса С помощью этой задачи вы можете задавать параметры командной строки.
Задача файловой системы Она выполняет манипуляции в файловой системе, такие как перемещение, переименование и удаление файлов, а также создание каталогов.
Задача FTP Он позволяет выполнять основные функции FTP.
Задача сценария Это пустая задача. Вы можете написать код на .NET, который будет выполнять любую задачу по вашему желанию.
Отправить Mail Сложность задачи Вы можете отправить электронное письмо, чтобы уведомить пользователей о завершении обработки вашей программы или о возникновении ошибки.
Массовая вставка задачи Загрузить данные в таблицу можно с помощью команды массовой вставки.
Задача сценария Запускает набор VB.NET или код C# внутри Visual Studio окружающей среды.
Задача веб-службы Он выполняет метод веб-службы.
Задача наблюдения за событиями WMI Эта задача позволяет пакету SSIS ожидать и реагировать на определенные события WMI.
XML-задача Эта задача поможет вам объединить, разделить или переформатировать любой XML-файл.

Другие важные инструменты ETL

SSIS — один из многих примеровtracПлатформы t-transform-load. К другим важным инструментам ETL относятся:

  • SAP Услуги по передаче данных
  • Управление данными SAS
  • Oracle Строитель складов (OWB)
  • PowerCenter Информатика
  • IBM Информационный сервер InfoSphere
  • Репертуар эликсира для ETL данных
  • Поток данных агента

Преимущества использования SSIS

Инструмент SSIS предоставляет следующие преимущества:

  • Широкая документация и поддержка
  • Простота и скорость внедрения
  • Тесная интеграция с SQL Server и Visual Studio.
  • Стандартизированная интеграция данных
  • Предлагает возможности работы в режиме реального времени на основе сообщений.
  • Поддержка модели распределения
  • Помогает устранить сетевое препятствие для вставки данных в SQL Server с помощью SSIS.
  • Позволяет использовать целевой объект SQL Server вместо OLE DB для более быстрой загрузки данных.

Недостатки SSIS

К недостаткам использования инструмента SSIS можно отнести следующие:

  • Иногда это создает проблемы в не-Windows сред.
  • Неясное видение и стратегия.
  • SSIS не поддерживает альтернативные стили интеграции данных.
  • Проблемы с интеграцией с некоторыми другими продуктами.

Пример лучших практик SSIS

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

  • SSIS — это конвейер обработки данных в оперативной памяти, поэтому важно убедиться, что все преобразования выполняются в памяти.
  • Постарайтесь свести к минимуму количество регистрируемых операций.
  • Планируйте мощности, исходя из анализа использования ресурсов.
  • Оптимизируйте преобразование SQL-запроса, источник и место назначения данных.
  • Составьте расписание и правильно распределите его.

Часто задаваемые вопросы (FAQ)

ETL расшифровывается как Extract, Transform, Load. SSIS extracданные из таких источников, как SQL Server, Excel или OracleПрограмма преобразует данные в памяти путем очистки и слияния, а затем загружает результат в целевую базу данных или файл.

SSIS — это локальный инструмент ETL, устанавливаемый вместе с SQL Server, который преобразует данные в оперативной памяти. Azure Data Factory — это облачный сервис интеграции данных, который управляет конвейерами обработки данных и ориентирован на ELT (Electronic Data Tracer). Существующие пакеты SSIS также могут работать в этом формате. Azure через среду выполнения интеграции SSIS.

Файл .dtsx — это XML-файл, в котором сохраняется пакет SSIS. В нем хранятся задачи пакета, поток управления, поток данных и соединения, и его можно развернуть в SQL Server, базе данных msdb или файловой системе.

Пакеты SSIS создаются с помощью SQL Server Data Tools (SSDT), расширения Visual StudioОн предоставляет конструктор с функцией перетаскивания для управления потоком выполнения и потоком данных, поэтому для большинства задач не требуется писать код вручную.

Да. SSIS по-прежнему поставляется с современными версиями SQL Server и остается широко используемым инструментом ETL для локальных сред. Команды также запускают существующие пакеты в облаке через Azure- Среда выполнения интеграции SSIS, благодаря чему навык остается актуальным.

Все три являются службами SQL Server. SSIS отвечает за интеграцию данных и ETL-процессы. ССРС SSAS формирует отчеты, а SSAS предоставляет OLAP-кубы и возможности анализа. Они часто используются вместе. Microsoft Комплекс инструментов бизнес-аналитики.

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

Да. Второй пилот GitHub Можно создавать код на VB.NET или C# внутри задачи SSIS Script Task, а также SQL-запросы для задач Execute SQL Tasks. RevПросмотрите каждое предложение, прежде чем запускать его в своем пакете.

Подведем итог этой публикации следующим образом: