Компрессия данных как стратегический путь развития СУБД

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

Научный редактор PC Week/RE Сергей Свинарев расспросил Марка Таунсенда, впервые посетившего Москву, об общих тенденциях развития отрасли СУБД и о ближайших планах корпорации в отношении развития своих продуктов и технологий такого рода.

PC Week: Многие эксперты полагают, что технологии БД достигли зрелости и в данной области не следует ожидать революционных инноваций. Согласны ли вы с этим мнением?

Марк Таунсенд: В мире есть немало экспертов, придерживающихся такой точки зрения, но мы в Oracle ее не разделяем. За последние годы существенные изменения претерпели как приложения, так и инфраструктурное ПО, но я хотел бы отметить, что они — приложения и ПО — имеют дело с данными, и данные эти хранятся по 20—30 лет. Они должны быть защищены, доступны и управляемы. Вот почему мы рассматриваем технологии СУБД не как рутинные, а как определяющие общую эффективность информационных систем. Без них невозможно в полной мере окупить инвестиции в серверное оборудование и системы хранения. Развитие их функциональности дает толчок появлению новых классов ПО. Рост числа пользователей и объемов данных требует от нас выхода на новые уровни масштабируемости, производительности, безопасности, надежности и качества сервиса.

Еще одна острая проблема связана с тем, что при экспоненциальном росте объемов данных число администраторов БД и иных технических специалистов остается практически неизменным. А это делает крайне актуальной задачу автоматизации диагностики, администрирования и обслуживания БД, а по сути — снижения стоимости сопровождения. И мы в Oracle нацелены на решение всех указанных задач, причем успешно делаем это на самых разных платформах — Windows, Unix, Linux.

PC Week: В каких направлениях можно ожидать развития СУБД Oracle в ближайшие годы?

М. Т.: Я не могу сейчас говорить подробно об инновациях, которые будут реализованы в ближайших версиях, в силу закрытости этой информации на этапе бета-тестирования. Хотел бы напомнить, что одним из важнейших усовершенствований, появившихся в версии Oracle Database 11.1, была компрессия данных. Технологии сжатия применяются в нашей СУБД начиная с версии 8i, но в 11.1 они распространились на все категории данных: не только на данные хранилищ данных, но и на данные транзакционных (OLTP) систем, а также на неструктурированные данные. В среднем нам сегодня удается сжимать данные перед размещением их в системе хранения в 2—4 раза. Это означает, что пользователи версии 11g смогут удвоить объемы своих баз данных, не покупая нового оборудования. Могу сообщить вам, что в следующей версии 11.2 мы намерены сделать в этом отношении огромный шаг вперед и довести степень сжатия до 30. Это очень важно для наших заказчиков, поскольку даже с учетом снижения стоимости систем хранения расходы на приобретение и обслуживание систем и устройств хранения постоянно растут.

Еще одна важная тема связана с развитием архитектуры Grid, реализованной впервые в версии 10g. Она оказалась чрезвычайно востребована многими компаниями, поскольку позволила создавать кластеры из недорогих серверов стандартной архитектуры и балансировать в рамках таких кластеров рабочую нагрузку множества приложений и БД. У некоторых наших клиентов в США функционирует несколько тысяч баз данных, и они хотели бы осуществить их консолидацию на основе Grid. Фактически речь идет о создании виртуализированной общей среды (единого виртуального сервера БД) для работы с множеством баз данных. В следующей версии нашей СУБД средства управления Grid-архитектурой в этом направлении будут значительно усовершенствованы.

PC Week: Можно ли оценить производительность недавно представленной машины баз данных Oracle и сервера хранения Exadata? Проводились ли какие-либо стандартные тесты, например TPC-H?

М. Т.: Высокая производительность программно-аппаратного комплекса HP Oracle Database Machine c ячейками хранения Exadata, ориентированного на работу с большими хранилищами данных (data warehouse), обусловлена двумя причинами. Во-первых, здесь реализован мощный канал передачи данных между серверами базы данных и системой хранения, базирующийся на технологии InfiniBand и имеющий суммарную пропускную способность 40 Гб/с. Во-вторых, при обработке запроса к БД часть операций передается на исполнение серверам системы хранения. Эти операции выполняются параллельно на каждой дисковой подсистеме, после чего в СУБД передаются лишь те данные, которые необходимы для дальнейшей обработки данного запроса.

Команда разработчиков Oracle проводила тщательное тестирование нашей машины баз данных в разных режимах. Нами использовались разные методики тестирования, в том числе и те, что зафиксированы в спецификации TPC-H. К сожалению, мы не можем сравнить свои результаты с показателями Teradata и Netezza, поскольку обе эти компании не публикуют сведений о производительности своих систем, измеренной в тестах TPC-H. Мы намерены в скором времени обнародовать свои данные, и я уверен, что наша машина баз данных займет самую верхнюю строчку в табели о рангах TPC.org.

PC Week: Почему вы говорите только о Teradata и Netezza? Ведь в большинстве “весовых категорий” хранилищ данных по показателям TPC-H лидирует сегодня немецкая фирма EXASOL.

М. Т.: Решение фирмы EXASOL, технологии которой основаны на обработке больших массивов данных в оперативной памяти (они применяются и в Exadata), лидирует в тестах на хранилищах данных сравнительно небольшого объема — до 300 Гб (по данным TPC.org, до 3 Тб. — Прим. редакции). Поскольку значительные фрагменты таких хранилищ могут быть загружены в память, решения EXASOL получают здесь определенное преимущество. Мы же нацелены на верхний сегмент многотерабайтных БД. И здесь, если говорить о стандартных тестах TPC-H, основной наш конкурент — это СУБД IBM DB2 и в какой-то степени Microsoft SQL Server.

Но наряду с тестированием по TPC-H мы проводим также сравнительные испытания своей системы на реальных задачах клиентов. Причем эти компании не являются нашими референциальными клиентами. Я могу вам сообщить, что пока что во всех тестах такого рода наша машина баз данных превосходит по производительности решения Teradata и Netezza.

PC Week: Как известно, высокая производительность хранилища данных на базе HP Oracle Database Machine в определенной степени связана с частичным переносом обработки запроса из СУБД в систему хранения. Насколько выигрыш в производительности зависит от структуры хранилища, набора индексов, наличия секционирования таблиц и типа обрабатываемого запроса?

М. Т.: Сразу скажу, что лучше всего наша машина справляется с прямым сканированием таблиц БД. В традиционной СУБД Oracle Database, применяемой в хранилищах данных, мы, напротив, при обработке запросов стараемся всячески избегать операций сканирования, применяя для этого индексирование, материализованные представления и т. д. Все это требует наличия специалистов высокой квалификации. В ячейках Exadata прямое сканирование в системе хранения осуществляется чрезвычайно быстро и поэтому применяется везде, где это возможно. Хранилище данных при этом существенно упрощается и не требует сложных дополнительных настроек. Нет здесь необходимости и в секционировании таблиц БД (partitioning). Оно по-прежнему очень полезно для ускорения загрузки данных из внешних источников, но никак не сказывается на производительности Database Machine. Вы просто загружаете сырые данные, составляете запрос и немедленно получаете результат.

PC Week: В основе HP Oracle Database Machine тем не менее лежит стандартная реляционная СУБД Oracle. Как вы оцениваете перспективы других типов серверов БД для работы с хранилищами данных (например, так называемых column-based)? Есть ли какие-либо планы развития в этом направлении у Oracle?

М. Т.: Прежде всего хочу сказать, что использование для решения разных задач одной и той же реляционной СУБД нашим клиентам нравится, поскольку для поддержки всех своих БД они могут использовать ограниченный штат обученных сотрудников. Раньше, если возникала необходимость построения очень большого хранилища данных, таким клиентам приходилось обращаться к решениям Teradata или Netezza и принимать на работу соответствующих специалистов. Сейчас, с появлением HP Oracle Database Machine, в этом нет необходимости.

Что касается технологии БД с хранением данных не по записям, а по колонкам, то она показывает очень хорошие результаты в применении к хранилищам данных. Мы намерены реализовать эту технологию в очередной версии своей СУБД в самое ближайшее время, но это будет сделано в рамках того же сервера БД совершенно прозрачно для конечных пользователей и для приложений. Они будут по-прежнему иметь дело только с одним продуктом Oracle Database и с одним диалектом языка SQL. Но главное достоинство “поколоночных” СУБД — это высокая степень сжатия данных, и то, что я говорил об ожидаемом доведении компрессии данных в СУБД Oracle до 30 раз, имеет непосредственное отношение к реализации в ней технологии column-based.

PC Week: За последние годы заметно увеличилось число опций СУБД Oracle. Фактически большая часть новых функций реализуется в виде опций, которые заказчикам приходится покупать за дополнительные деньги. Кроме того, в прошлом году впервые за много лет были подняты цены на лицензии как самой СУБД, так и опций в глобальном прайс-листе. Это было сделано во время падения курса доллара (а возможно, именно по этой причине). Сейчас экономика в кризисе, да и курс доллара укрепляется. Не приведет ли все это к падению спроса на СУБД Oracle?

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

Другой аспект ценовой проблемы связан со стратегией закупок лицензий. Ряд компаний использует множество БД под управлением СУБД Oracle и имеет планы по приобретению дополнительных лицензий. Если у них есть программа на несколько лет вперед или предполагается крупная закупка, то, поверьте мне, реальная цена с учетом всевозможных скидок будет значительно ниже, чем указанная в стандартном прайс-листе.

PC Week: Но этот рост относится к прошедшему времени, а сегодня экономика в кризисе. Сохранится ли положительная динамика продаж в новых условиях?

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

Пока без оценки

Отправить комментарий

Яндекс.Метрика