За последние полтора года корпорация Oracle приобрела более 20 крупных и мелких компаний, разрабатывающих ПО. Результат такой экспансии очевиден — значительно расширился спектр предлагаемых технологий и в каждой отрасли они стали более полными и совершенными.
Среди последних приобретений Oracle — две компании, создавшие встраиваемые решения для работы с базами данных: TimesTen с одноименной СУБД и SleepyCat, автор известного продукта Berkeley DB.
Аналитики IDC предполагают, что к 2009 г. рынок встраиваемых СУБД вырастет более чем в 1,5 раза. Значит, Oracle, предлагающая широкую линейку таких решений, вполне может рассчитывать на значительную его часть.
Теперь в арсенале Oracle имеются: СУБД TimesTen и Berkeley DB, встраиваемые в приложения и работающие с данными в оперативной памяти, и собственная разработка Oracle Lite, встраиваемая в мобильные устройства и приложения.
В России эти продукты были впервые представлены на прошедшем в октябре ежегодном мероприятии Oracle TechForum. Прилетевший тогда же в Москву Севед Риббинг (Seved Ribbing), старший директор подразделения встроенных СУБД Oracle в Oracle EMEA, рассказал журналу «Мир ПК» об этих технологиях.
Полную версию статьи о встраиваемых технологиях Oracle читайте на «Мир ПК-диске».
Севед Риббинг, старший директор подразделения встроенных СУБД Oracle в Oracle EMEA |
— Что такое встраиваемые БД и чем они отличаются от обычных, реляционных?
— Встраиваемые СУБД используются на уровне приложений или устройств и полностью интегрируются в ПО. Пользователь, работая с приложением, может даже не подозревать о том, что оно применяет какую-либо СУБД. Мы называем этот принцип скрытой установкой (silent install) — система управления базой данных устанавливается вместе с приложением, не требуя от пользователя никаких дополнительных действий. В таком случае не нужно даже администрирование СУБД.
— В чем разница между технологиями TimesTen, Berkeley DB и Oracle Lite, которые вы предлагаете?
— Основное различие — технологическое. TimesTen является in-memory СУБД, т.е. системой, работающей с данными только в оперативной памяти. Принцип организации информации остается реляционным, но ее обработка производится без обращений к жесткому диску, что значительно повышает скорость работы приложения. Кроме того, TimesTen используется как кэш при взаимодействии с базами данных Oracle.
Berkeley DB также работает с данными в оперативной памяти, однако организует их с помощью механизма «ключ по значению». Berkeley DB интегрируется в приложения, выполняющие стандартные операции, например в почтовые программы, где все запросы однотипны (открыть письмо, добавить адресата и т.д.). Самый яркий пример использования этой СУБД — почтовая система Google mail.
Oracle Lite в основном предназначена для работы с данными в автономном режиме на локальном компьютере или мобильном устройстве. При подключении устройства к большой СУБД Oracle происходит синхронизация данных.
— Почему СУБД называется TimesTen? Не потому ли, что работает в десятки раз быстрее¹?
— TimesTen действительно не обращается к жесткому диску, обрабатывая данные лишь в оперативной памяти. Следовательно, доступ к ним осуществляется как минимум в 10 раз быстрее. Вполне возможно, что разработчики именно это и имели в виду, поскольку название существовало еще до того, как корпорация Oracle приобрела компанию. И мы не стали его менять.
— Может ли TimesTen использоваться как механизм кэширования данных с другими СУБД?
— Да, может, но потребуется разрабатывать дополнительные средства (так называемые коннекторы) с помощью API тех СУБД, для которых эти средства создаются.
Мы можем ручаться только за работу TimesTen с базами данных Oracle. Еще до слияния с Oracle разработчики TimesTen создали технологии для работы с нашими СУБД. Приобретя компанию, мы их доработали и улучшили, чтобы предоставить пользователям полнофункциональное решение.
— Есть ли на рынке конкурирующие технологии?
— Для TimesTen и Berkeley DB главный конкурент — собственные решения отдельных компаний.
— Есть ли крупные проекты с вашими встраиваемыми решениями?
— Пожалуй, чаще всего TimesTen применяется в биллинговых системах для тарифов с авансовой оплатой, где очень важными моментами являются скорость обработки данных и аккуратность подсчета времени разговора. К сожалению, я не могу пока назвать примеров использования наших встраиваемых решений в России, но надеюсь, что скоро они появятся.
¹Игра слов «times ten» и «ten times» — 10 раз (ten times faster — в 10 раз быстрее).