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

Проблемы

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

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

Традиционные механизмы интеграции корпоративных данных, такие как ETL (Extract, Transfer, Load), обеспечивают физическую консолидацию подготовленных данных в едином хранилище для дальнейшего использования в задачах аналитики. Этот подход не отвечает требованиям быстрого доступа к разнородным данным, поскольку для интеграции каждого очередного источника нужно много времени на предварительную обработку. Как показывает анализ, проведенный The Datawarehouse Institute, в среднем добавление нового источника в хранилище занимает около восьми недель. Кроме того, традиционные хранилища, как правило, ориентированы на реляционный формат данных, это означает, что за бортом интеграции останутся неструктурированные данные, потребность в анализе которых является сегодня актуальной для большинства организаций. В попытке решить проблемы интеграции данных, компании часто начинают создавать «зоопарки» интеграционных решений, реализуя сложные системы управления основными данными (Master Data Management, MDM), системы управления неструктурированными данными на основе метаданных, решения по консолидации разрозненных СУБД, специализированные системы для интеграции данных локальных и SaaS-приложений и др.

Дэвид Линтикум, международный эксперт в области интеграции приложений, SOA и облачных вычислений, отмечает, что результатом хаотичного внедрения не самых эффективных способов интеграции данных становится ИТ-инфраструктура, в которой:

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

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

Определения

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

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

Один из теоретиков и активных пропагандистов идеи виртуализации данных, эксперт в области технологий управления данными и бизнес-анализа, управляющий директор консалтинговой компании R20/Consultancy Рик ван дер Ланс определяет виртуализацию данных как процесс предоставления потребителям интерфейса доступа к данным, который скрывает такие технические аспекты, как физическое размещение данных, структура и технология хранения, API, язык доступа. Под потребителем данных понимается любое приложение, которое запрашивает данные и манипулирует ими, — например, система отчетности. Ланс разделяет понятия виртуализации и федерации данных. Сервер федерации — один из механизмов реализации виртуализации, которая также может быть построена с помощью сервисной шины предприятия (Enterprise Service Bus, ESB), предоставляющей доступ к данным через сервисы или путем размещения всех источников данных в облаке. Федерацию данных Ланс определяет как технологию объединения данных из разнородных автономных источников путем представления их потребителям в виде единого источника.

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

Эти различия обобщает определение, которое дает популярный технологический ресурс Techopedia: виртуализация данных — процесс агрегирования данных из различных информационных источников для формирования единого логического представления, для того чтобы конечные решения (приложения, информационные панели, порталы и др.) могли осуществлять доступ к данным, не зная об их физическом местоположении. Процесс виртуализации данных включает в себя: абстрагирование технических аспектов данных (API, язык доступа, структура хранения); трансформацию данных и улучшение их качества; федерацию данных — возможность получить результирующий набор данных из множества источников, видимых как один; предоставление данных из разнородных источников по запросу.

Наиболее рациональный взгляд на виртуализацию данных и смежные технологии предлагает Барри Девлин, один из крупнейших авторитетов в области хранилищ данных и аналитических технологий для бизнеса. В своем блоге на b-eye-network.com он высказывает точку зрения, что виртуализация, федерация, технологии интеграции данных предприятия (Enterprise Information Integration, EII) практически эквивалентны, а различия заключаются лишь в нюансах, главным образом связанных с реализациями в продуктах различных производителей. Суть же их всех заключается в том, что они предоставляют механизм для декомпозиции запроса к данным на подзапросы, которые посылаются распределенным источникам, и формирования из полученных данных единого ответа на запрос. Все детали этого механизма скрыты от пользователя. А для его реализации требуются метаданные, описывающие источники данных, набор адаптеров, обеспечивающих взаимодействие с этими источниками, и логический уровень, изолирующий пользователя от всех технологических сложностей доступа к разнородным данным (см. рисунок).

 

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

 

Технологии

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

  • Средства обнаружения данных. Позволяют идентифицировать структуру и содержимое распределенных источников данных. ПО виртуализации должно поддерживать максимально широкий спектр типов данных: SQL, XML, MDX, веб-сервисы, «плоские» файлы, базы данных мэйнфреймов, неструктурированные данные.
  • Средства бизнес-моделирования, или «абстрагирования» данных. Обеспечивают создание унифицированных моделей данных из разнородных источников. Система виртуализации представляет информацию о данных в виде набора таблиц или веб-сервисов, обеспечивая единый интерфейс для доступа к данным различной природы. При этом важно, что метаданные в семантическом виртуализационном слое представляют данные и взаимосвязи между ними исходя из их бизнес-назначения, полностью скрывая технические детали размещения данных и способов доступа к ним.
  • Механизм оптимизации и выполнения запросов. При поступлении запроса от приложения-потребителя к объекту данных сервер виртуализации вычисляет наиболее эффективный путь доступа к реальным данным, выполняет необходимые трансформации и предоставляет результат.
  • Адаптеры данных. Реализуют доступ к распространенным базам данных, приложениям и сервисам.

Сдержанный прием ранних реализаций средств виртуализации данных аналитики объясняют серьезными технологическими недостатками, которые мешали использовать эти решения в масштабных проектах, сводя их применение к небольшим инсталляциям для нишевых задач, что противоречит самой сути виртуализации данных. Одной из основных претензий был невысокий уровень производительности при запросе большого объема данных, когда нужно объединять данные из нескольких источников и выполнять «на лету» сложные преобразования. Именно низкая производительность не позволяла масштабировать такие решения на уровень всей компании. Потому неудивительно, что ведущие игроки этого рынка тратят значительную часть своих исследовательских бюджетов на улучшения механизмов оптимизации и выполнения запросов. По данным Forrester, сегодня основные предложения на рынке виртуализации данных обязательно включают развитые средства оптимизации на базе правил, которые способны вычислить наиболее быстрый путь доступа к данным или определить способ доступа, потребляющий минимальный объем ресурсов. Но поле для исследований в этой области остается — сегодня актуальной задачей для платформ виртуализации данных становится поддержка новых источников неструктурированных данных, и разработчикам надо будет искать способы наиболее эффективной обработки запросов к таким источникам, например базам NoSQL.

Распространенным способом повышения производительности является кэширование данных — результаты наиболее частых обращений к источникам сохраняются в кэш-памяти сервера виртуализации, благодаря чему запросы к ним могут обрабатываться локально. Кэш периодически обновляется, а процесс кэширования прозрачен для потребителей. Многие производители предоставляют технологию распределенного кэширования, поддерживающую масштабные развертывания среды виртуализации данных. Интеграция распределенного кэша с системами обмена сообщениями позволяет последним управлять обновлениями кэша в географически разбросанных точках, тем самым способствуя дополнительному повышению скорости запросов к данным. Технологию обработки в памяти вполне можно считать перспективной для реализации кэширования в платформах виртуализации данных.

Значительные улучшения претерпевают средства обнаружения данных — для них становится обязательной возможность в реальном времени проводить исследование новых источников и формировать для них метаданные, которые затем автоматически передаются в подсистему моделирования с целью создания объектов данных в виртуальном хранилище. Ближайшее будущее систем виртуализации данных связано с расширением функциональности модулей бизнес-моделирования, которые должны будут интегрировать все больше бизнес-спецификаций, например бизнес-глоссариев, для более полного моделирования виртуальных объектов данных и поддержки корпоративных политик в стратегическом управлении данными (data governance).

Более активному использованию платформ виртуализации в масштабе всего предприятия должна способствовать расширенная поддержка адаптеров к стандартным источникам данных и корпоративным системам. В качестве примеров таких расширений аналитики Forrester приводят интеграцию Composite Data Virtualization Platform c ПО промежуточного слоя IBM WebSphere MQ и Tibco ESB для управления распределенным кэшем, поддержку в Informatica Data Services шаблонов преобразования данных в соответствии с отраслевыми стандартами, интеграцию данных облачных сервисов SaaS и PaaS.

Особую важность приобретает включение в сферу виртуализации Больших Данных, чем и озаботились многие производители, дополняющие свои виртуализационные пакеты адаптерами к Apache Hadoop. Новые рыночные возможности имеются также у средств виртуализации в предоставлении унифицированного SQL-интерфейса к базам NoSQL — в связи с ростом востребованности таких источников в корпоративных применениях для них появляется все больше интерфейсов на базе SQL, но эти разработки, как правило, пока не отличаются зрелостью и предназначены для доступа лишь к одному определенному источнику. Платформы виртуализации с развитыми механизмами SQL-доступа, средствами федерации разнородных источников и возможностями работы с нереляционными данными вполне могут занять доминирующее положение на рынке инструментов для работы с Большими Данными.

Использование

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

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

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

  • Логическое расширение хранилища данных. Виртуализация данных позволяет дополнить исторические данные, находящиеся в корпоративном хранилище, данными реального времени или внешними данными, например с сайтов. Такие возможности могут понадобиться, скажем, при формировании аналитических отчетов о продажах, в которых информация за определенный период должна объединяться с текущими данными о заказах клиентов в интернет-магазине.
  • Создание виртуального хранилища данных. Компания с территориально распределенной структурой посредством платформы виртуализации может консолидировать в единую корпоративную базу данных хранилища различных подразделений и филиалов.
  • Формирование источника данных для системы ETL. Платформа виртуализации может использоваться для консолидации нескольких источников для ETL-обработки данных. Вместо построения прямого интерфейса к каждому источнику инструментарий ETL использует виртуализацию для унифицированного доступа к нужным данным.
  • Прототипирование. Разработчики могут использовать систему виртуализации для тестирования работы приложений с различными источниками данных до момента их физической консолидации в хранилище.
  • Создание полного представления о клиенте. Объединение данных о клиентах из всех возможных источников (систем ввода заказов, контакт-центра и др.) дает возможность получения так называемого взгляда на клиента «в 360 градусов».
  • Бизнес-аналитика с возможностями самообслуживания. Инструменты self-service BI, предоставляемые такими компаниями, как Tableu, Spotfire, позволяют бизнес-пользователям самостоятельно ставить и решать различные аналитические задачи. Однако если при этом им потребуется изменить структуру данных в хранилище или добавить новый источник, то потребуется вмешательство ИТ-специалистов, что приведет к длительным задержкам. Платформа виртуализации обещает поддержать скорость и гибкость приложений self-service BI скоростью и гибкостью конфигурации среды хранения данных, на которые эти приложения опираются.
  • Аналитика неструктурированных данных. Платформа виртуализации упрощает задачу интеграции в аналитическую обработку данных различной природы, в том числе электронной почты, социальных сетей, данных с мобильных устройств, Больших Данных.
  • Интеграция облачных данных. В компаниях, где развиваются гибридные информационные среды (используются приложения SaaS), часть вычислительной нагрузки переносится в общедоступные облака, развертываются платформы частного облака — актуальной становится задача получения единого представления данных во всех компонентах такой среды.

По данным Forrester, в 2011 году менее 20% ИТ-организаций включили в свой интеграционный пакет системы виртуализации данных, еще меньше положительно оценивали потенциал этой технологии. Однако аналитики прогнозировали изменение ситуации в ближайшие три года. Опрос специалистов по бизнес-аналитике, проведенный в марте 2013 года, выявил почти 35% респондентов, уже сделавших инвестиции в технологии виртуализации данных, а более четверти опрошенных частично или полностью развернули программную систему виртуализации. Свыше трети участников исследования пока не имеют планов относительно виртуализации данных, большинство из них — по причине неосведомленности. Пионеры применения виртуализации данных перечисляют значительное число плюсов, среди которых доминируют простота и гибкость работы с данными и эффективная интеграция. При этом большинство компаний, внедряющих виртуализацию данных, делают это в корпоративном масштабе.

 

Производители

 

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

В первую категорию попадают IBM, Informatica, SAP, Oracle, Microsoft и Red Hat, которые предлагают широкий спектр функций, позволяющих реализовать разнообразные варианты использования виртуализации в корпоративном масштабе. К их предложениям склонны обращаться крупные компании, которые предпочитают закрывать все потребности управления данными с помощью решений от одного поставщика.

Для систем представителей второй категории — таких компаний, как Composite Software, Denodo Technologies, Radiant Logic, Stone Bond, — характерна большая интегрированность функций, простота развертывания и использования платформы виртуализации данных. К этой категории относится еще ряд производителей, которые специализируются на разработке функций, дополняющих комплексные платформы виртуализации, включая распределенное кэширование данных, поисковые движки, облачные сервисы, средства управления жизненным циклом информации (ILM), репликацию, трансформацию, обеспечение качества, моделирование данных, управление контентом и др. Здесь можно назвать компании Endeca Technologies (куплена Oracle), Gigaspaces, Ipedo, Memcached, Pentaho, Quest Software, Talend и Terracotta.

По данным Forrester, на рынке средств вирутализации данных пока доминируют IBM и Informatica, чьи решения Infosphere Federation Server и Data Services соответственно отличаются наибольшей полнотой. Мощная комбинация средств интеграции, моделирования, трансформации, обеспечения качества и производительности сервисов данных характерна также для решений от Composite Software и Denodo Technologies. По сведениям Forrester, инсталляции Composite Data Virtualization Platform реализуют наиболее сложные инфраструктуры виртуализации данных. Что неудивительно — компания Composite Software является пионером этого рынка и одним из самых заметных пропагандистов идей виртуализации. Эта компания была недавно приобретена Cisco, которая сейчас активно развивает технологии сетевой виртуализации SDN. Возможно, это слияние обещает в будущем интересные результаты синергии двух технологий виртуализации.

Компания SAP представила технологию интеллектуального доступа к данным на базе своего продукта HANA, которая реализует динамический доступ к реляционным и нереляционным базам Hadoop, Sybase ASE, Sybase IQ, хранилищам от других поставщиков и использует высокопроизводительную обработку в памяти HANA для оптимизации выполнения запросов к неоднородным источникам данных. Этой технологией SAP расширила свой пакет предложений по виртуализации данных, включающий платформу BusinessObjects Data Services и ряд функций NetWeaver.

 

***

Рынок виртуализации данных неизбежно будет расти, хотя и не очень быстрыми темпами, — во все более усложняющихся информационных средах компаний потребность в таких решениях очевидна, и, по прогнозам Forrester, в 2014 году объем рынка достигнет 8 млрд долл.