ИТ переживают интересную полосу своего развития, наконец перестав ориентироваться на отдельные устройства и технологии, как это было на протяжении предшествующих 60 лет. Теперь на первый план выходят не физические способы работы с устройствами (device centric), а логические методы работы с данными (data centric). Этот сдвиг парадигмы нашел свое отражение во всех ипостасях виртуализации (памяти, систем хранения, серверов, каналов связи), каждая из которых есть не что иное, как часть более общего решения, причем из совокупности этих решений складывается общий процесс смены центричности от устройств к данным.

На пути к технологиям работы с информацией

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

Виртуализация данных началась с воплощения различного рода сценариев, предназначенных для использования сервисных архитектур в форме таких технологических направлений, как информация как сервис (Information as a Service) и информация по требованию (Information On Demand, IOD). И то и другое не столько технологии, сколько концептуальный взгляд на них. Концепцию "информация как сервис" впервые предложила в 2006 году аналитик IDC Сандра Роджерс в отчете Information as Service to the Enterprise, а идеи IOD примерно с того же времени стали частью глобальной пропагандистской кампании IBM. Суть IaaS достаточно понятна: для того, чтобы сервисы могли реализовывать возложенные на них функции, им должна быть предоставлена соответствующая информационная поддержка. В силу универсальной природы сервисов поддержка должна быть тоже универсальной, например выполненной в форме того или иного связующего ПО, расположенного между сервисами и источниками данных. Концепция IaaS получила развитие в таких трудах Forrester Research, как Enterprise Information Virtualization and the Information Fabric ("Информационная инфраструктура и виртуализация корпоративной информации") и The Forrester Wave: Information-As-A-Service. До 2008 года аналитики Forrester использовали термин Enterprise Data Virtualization, но потом, следуя моде на злоупотребление словом без должного понимания его смысла, в компании заменили слово "данные" на "информацию".

К счастью, у любой моды есть одно замечательное свойство — она рано или поздно проходит. Проходит мода и на безоглядное использование слова "информация", и сейчас акцент снова сместился на данные, теперь чаще говорят о виртуализации данных (Data Virtualization). В такой постановке исчезает неопределенность и все представляется более логичным. Суть виртуализации данных сводится к простому тезису — речь идет об обычном абстрагировании данных от конкретной формы их хранения. Попробуем разобраться, что это означает и как соотносится с федерацией данных (Data Federation), интеграцией данных (Data Integration) и другими близкими понятиями. Все эти подходы и решения отражают одну из важнейших нынешних тенденций — уход от ориентации на устройства к ориентации на данные, переориентация с частных форм на общие, затрагивающая практически все стороны ИТ, от мобильных устройств до корпоративных хранилищ. Любая виртуализация подразумевает сбор ресурсов в общий пул и их дальнейшее распределение между потребителями. На рис. 1 показано, что данные, физически оставаясь на месте, объединяются в один виртуальный пул, а затем поступают в системы бизнес-аналитики, приложения, корпоративные коллажи и т. д. На рис. 2 приведена общая схема компонентов системы виртуализации.

 

 

Рис. 1. Общая схема виртуализации данных

 

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

  • федерирующий сервер, единообразно представляющий данные из разных источников, с тем чтобы приложения видели данные как одно большое хранилище;
  • виртуализация, сосредоточенная в сервисной шине предприятия (Enterprise Service Bus, ESB), выполняющей функции абстрагирования и предоставляющей данные приложениям в форме сервисов;
  • облако, содержащее данные (одна из возможных форм виртуализации); где и как хранятся данные, пользователю неизвестно;
  • виртуальная база данных в памяти, подпитываемая из физических СУБД;
  • собственное решение для конкретной организации.

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

 

 

Рис. 2. Компоненты системы виртуализации

 

То, что называют интеграцией информации предприятия (Enterprise Information Integration, EII), можно рассматривать как эмбриональный период виртуализации данных, который распространялся в основном на данные в табличных формах. На этом уровне не обеспечивался достаточный универсализм — интеграция данных для двух приложений не гарантировала возможность для работы с ними третьему. Образно EII сравнивают с такой системой телефонии, где абонент связан с другим напрямую, а не через одну центральную станцию. Естественно, что такой подход не предполагает работы с большими объемами данных и с трудом поддается масштабированию. В облачную эпоху и эпоху "больших данных" такой подход не перспективен, отсюда и потребность в виртуализации данных, которую можно реализовать с разной степенью автоматизации. Самый примитивный — основной уровень (Basic Data Virtualization), затем идут средний, или продвинутый (Advanced Data Virtualization), и верхний, интеллектуальный (Intelligent Data Management).

Интеграция данных: синтаксис и семантика

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

Приемы Basic Data Virtualization сводятся к перемещению данных с носителя на носитель и их федерализации, а технологии, которыми реализуется этот уровень, рассчитаны на технический персонал, осуществляющий администрирование данными. Связи между источниками данных могут быть представлены в табличной форме или таксономиями, это может потребовать высококвалифицированных специалистов по SQL и схемам СУБД, которые могут быть чрезвычайно сложны и трудоемки в обработке. Как следствие, этот уровень отличается не только высокой стоимостью проектов виртуализации, но и большими издержками в процессе эксплуатации, поскольку сложно обеспечить повторное использование чего-то однажды сделанного (reusability) — каждую интеграционную задачу приходится решать заново.

Уровень Advanced Data Virtualization отличается использованием метаданных, хранимых в соответствующих каталогах, а технологии используют сведения о внутренних структурах источников данных и превращают все, в том числе и реляционные данные, в объекты. Объектный подход дает возможность реализовать желаемую связь типа "один ко многим" (hub and spoke). Такая модель позволяет избежать излишних затрат труда и перемещения данных, а также обеспечивает существенно большую безопасность данных, поскольку они остаются на месте. Для материализации Advanced Data Virtualization используется постоянно работающий сервер метаданных (Persistent Metadata Server), который может не только выполнять предписанные ему функции, но и поддерживать работу Intelligent Data Management, обеспечивая как горизонтальное (увеличение числа источников), так и вертикальное масштабирование (наращивание функциональности). Преимущество Persistent Metadata Server в том, что такие системы работают на два-три порядка быстрее, чем реляционные СУБД, это происходит потому, что они имеют дело только с ссылками на данные. В отличие от Basic Data Virtualization, все в конечном итоге сводится к переадресации и установлению связей между источниками данных и потребителями, что обеспечивает глобализацию данных. Серверы могут собираться из специализированных программных лезвий (Application Software Blades), предназначенных для работы с приложениями таких компаний, как SAP, PeopleSoft или Siebel.

Применение решений класса Intelligent Data Management ведет к гармонизации данных – синхронизации по данным двух и более приложений. Подобного рода процесс должен обеспечивать работу в реальном времени и быть полностью автоматизированным. В конечном счете он должен приводить к единому пространству данных (One Data Continuum).

***

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