Сайт Информационных Технологий

Каталог >> Базы Данных >> Cache' >> Cache'

И.А.Семёнов

Cache'

Цель статьи заключается в ознакомлении читателей с одной из современных постреляционных технологий Cache, позволяющей реализовать современные концепции хранения и анализа корпоративных данных.

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

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

С появлением необходимости использования новых аналитических технологий обнаружения знаний (Data Mining), возникли и новые требования к хранилищам данных, с которыми общепризнанные реляционные системы неспособны справиться. Многократная реструктуризация модели данных может быть отнесена к одному из таких требований. Постреляционная СУБД Cache имеет необходимые средства для решения подобных задач. В этой системе имеется:

Этот список можно продолжить и далее.

В основе концепции Cache лежит принцип многомерного представления данных.

Сегодня на рынке доступен ряд коммерческих серверов многомерных БД. Некоторые продукты (такие, как Cache) хранят данные в истинно многомерных БД, другие выгружают данные из реляционных БД в статические многомерные модели, третьи обращаются к реляционным данным, используя виртуальное многомерное представление, с которым и работает пользователь. К статической или виртуальной многомерной модели можно отнести продукты фирм Oracle, Informix, Sybase, Computer Associates, Microsoft и др., которые предлагают покупателям системы, позволяющие хранить многомерные структуры данных, однако их ядра подобны имеющимся у реляционных БД.

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

С целью дальнейшего повышения производительности обработки транзакций, в БД Cache реализована концепция “разреженных массивов”. Пространство базы данных занято лишь реальными данными - пустые данные не занимают места вообще. Эта действительно “лаконичная” технология базы данных повышает производительность и масштабируемость, сокращая число операций чтения/записи.

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

Унифицированная структура данных позволяет осуществлять доступ к постреляционной базе данных Cache через объекты, SQL или напрямую без необходимости применения какого-либо "перевода" или "отображения". При обработке многомерных массивов постреляционной СУБД, называемых глобалями и являющихся единицами хранения данных, используется встроенный язык Cache Script для описания прямого доступа к последним. А язык запросов Cache SQL вместе со словарем данных позволяет создавать реляционные таблицы для сохранения данных.

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

Практика показывает, что наиболее распространенная сегодня реляционная технология мало пригодна для работы со сложными объектами. Бартельс, пионер в области объектно-ориентированного программирования в Германии, в нескольких обзорных статьях приводит чрезвычайно удачное сравнение: “едва ли кому-нибудь придет в голову идея разобрать свой автомобиль (как пример сложного объекта), прежде чем поместить его в гараж (база данных), на отдельные детали (записи, поля), разложить их там, а на следующее утро в обратном порядке снова собрать свою машину”.

Объектно-ориентированный подход – это возможность работать со сложноструктурированными данными и попытка преодолеть ограничения, связанные с использованием реляционной технологии СУБД. Реляционные БД вынуждают пользователей представлять иерархические данные в терминах кортежей многих отношений. А для выборки данных, разбросанных таким образом по многим отношениям, реляционная БД должна выполнять дорогостоящие операции соединения. Иерархические данные в объектно-ориентированных языках естественным образом представляются благодаря тому, что значение атрибута объекта, в свою очередь, может быть объектом.

Объектная надстройка Cache по существу является макроуровнем языка Cache Script. Такие свойства объектов, как наследование (в том числе множественное), полиморфизм и инкапсуляция реализуются Cache на собственных средствах, а словарь классов объектов позволяет создавать информационные системы различной степени сложности. Глобали БД хранят информацию о значениях свойств и параметрах, характеризующих их поведение, а сами методы работы с данными реализуются на языках Cache Script, Cache SQL и Cache ScriptObject, причем последний включает команды манипулирования объектами. Кроме того, Cache взаимодействует с широким набором различных инструментов разработки и разнообразными языками. Для объектов это включает доступ при помощи ActiveX (COM), Java, C++, и Web.

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

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

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

Высокопроизводительный драйвер для использования со стандартом ODBC (Open Database Connectivity), дает возможность Cache иметь два принципиальных преимущества:

Особое внимание в системе Cache нужно уделить продукту WebLink, который позволяет присоединить мощную Cache базу к World Wide Web. WebLink реализует взаимосвязь между WWW и БД. Реализованы интерфейсы ISAPI и NSAPI для Web серверов Microsoft и Netscape, а также интерфейс к UNIX серверам Apache. WebLink позволяет, в среде Internet, подключиться к Cache базе тысячам пользователям. Большинство БД под таким информационным давлением подвергаются разрушению. БД построенные в Cache и взаимодействующие с пользователями через WebLink способны работать с любыми потоками информации. Даже, если техническое обеспечение сравнительно слабо, эта система будет работать информационно полноценно, обслуживая параллельно большое количество пользователей.


Site of Information Technologies
Designed by  inftech@webservis.ru.