Основы проектирования корпоративных систем - Сергей Зыков
Шрифт:
Интервал:
Закладка:
Что касается потоков данных, попробуем рассмотреть некоторые примеры, в частности применение SSIS для поддержки процессов и работ, которые ориентированы на центры обработки данных. В основе лежит применение конвейерного подхода для преобразования данных. Архитектура конвейера поддерживает буферизацию, что позволяет конвейеру достаточно быстро осуществлять манипуляции над наборами данных после их загрузки в память. При этом суть похода заключается в выполнении всех этапов ETL-преобразований в рамках одной операции без промежуточного хранения. Хотя специфичные требования к преобразованию, операциям или оборудованию могут несколько осложнить реализацию этого подхода, тем не менее для повышения производительности архитектура позволяет в целом минимизировать объем промежуточного хранения данных. SSIS, по возможности, даже избегает копирования данных памяти, что принципиально отличается от традиционных ETL-средств, которые часто требуют промежуточного хранения данных практически на каждом этапе процесса преобразования, обработки, интеграции данных. Такого рода поддержка манипуляций над данными без промежуточного хранения позволяет существенно улучшить ETL-средства, а также дать возможность поддержки хранения и манипулирования с реляционными и плоскими данными. При этом гетерогенные данные, как структурированные, так и неструктурированные, хранящиеся в формате XML и т. д., перед загрузкой в буферы преобразуются в табличную структуру, т. е. разбиваются на строки и столбцы. И далее любую операцию с табличными данными можно выполнять на любой стадии функционирования конвейера поточной обработки данных. Это означает, что единственный конвейер способен интегрировать разнообразные источники данных и выполнять над этими источниками данных операции произвольной степени без промежуточного хранения. Конечно, если промежуточное хранение по эксплуатационным требованиям является необходимым, то SSIS дает возможность поддерживать и такого рода реализации. Эта архитектура позволяет применять SSIS в самых разных сценариях интеграции данных, от традиционных ETL-решений до нетрадиционных способов интеграции гетерогенной корпоративной информации.
SSIS судя по рис. 16.11 дает возможность комплексной полнофункциональной ETL-интеграции, обеспечивая возможности по функциональности, масштабируемости и производительности, существенно более высокие, чем у большинства конкурирующих аналогов, при значительно меньших затратах. Особенность решения составляет конвейерная архитектура, которая дает возможность получать данные из множества источников одновременно, выполнять целый ряд преобразований последовательно и передавать данные нескольким приемникам в параллельном режиме. Такого рода архитектура дает возможность применять SSIS-технологии не только для больших наборов данных, но и для множественных потоков данных. При перемещении данных из источника к приемнику или из нескольких источников к нескольким приемникам можно разделять, объединять, комбинировать потоки данных или иным образом манипулировать информацией. Рисунок 16.11 дает иллюстрацию примера манипулирования потоками данных при таком преобразовании. Рисунок 16.12 иллюстрирует процесс очистки данных.
Рис. 16.11. Схема интеграции данных
SSIS тесно интегрирована с функциональностью просеивания или очистки данных в службах анализа данных. Поддержка анализа данных обеспечивает абстрагирование от закономерностей в наборе данных, инкапсулирует их модели анализа. Можно применять эту модель анализа для того, чтобы предсказать, какие данные относятся к набору, а какие нет, т. е. просеять данные и отсечь так называемые аномальные. То есть можно использовать анализ данных как инструмент, который повышает качество данных в корпоративной системе и снимает противоречия или намеренные искажения данных сотрудниками. Поддержка сложного распределения данных в SSIS позволяет не только выявить аномальные данные, но и автоматически корректировать или заменять их. Это делает возможным варианты очистки по принципу замкнутого цикла.
Рис. 16.12. Очистка данных
Пример использования потока как источника данных, эта важная особенность SSIS, представлен на рис. 16.13.
Имеется возможность загрузки данных в компонент Data Reader ADO.NET. Этот компонент можно включить в конвейер потока данных, что дает возможность использовать Data Reader как источник данных, которые предоставляются собственно ADO.NET. При этом можно использовать SSIS не только как традиционные ETL-инструменты для загрузки, преобразования данных в хранилище, но и как источник данных, который может предоставлять доступ к интегрированным и синхронизированным в очищенные данные источник, причем по запросу пользователя, и делать это даже из офисных приложений. Например, эту функциональность можно задействовать для того, чтобы службы отчетов, Reporting Services, извлекали данные из множества разнообразных источников, в которых хранится информация для корпоративных приложений. При этом SSIS-пакеты используются как источник данных. Для управляемости корпоративных систем на основе SQL Server используются подходы, связанные с политиками, автоматизированным обслуживанием на основе задач, и оповещение операторов и графиков, средства Performance Data Collection, которые позволяют оптимизировать производительность графическим образом, и специальный инструмент для оптимизации индексов таблиц баз данных и разделов, который называется Data Base Engine Tuning Advisor. Осуществляются принципы упреждающего управления, которые обеспечивают: логическое представление конфигурации системы, что позволяет администраторам заблаговременно определять желаемую конфигурацию служб данных, а не вносить изменения после того, как возникнут проблемы; интеллектуальный мониторинг, который поддерживает на основе политик инфраструктуры управление, отслеживание и запрещение изменений, несовместимых с желаемыми конфигурациями; а также виртуализацию управления, которая позволяет масштабировать изменения по инфраструктуре, структуре корпорации, передавать или распределять их по большому количеству серверов, что облегчает применение унифицированных политик во всей организации.
Рис. 16.13. Использование потока как источника данных
Каким образом осуществляется создание конфигурационных политик?
На рис. 16.14 представлен механизм инструментария для создания политик. SQL Server 2008 поддерживает существенно расширенный набор элементов управления конфигурациями и правилами настройки сервера баз данных.