|
|
Обзор подготовлен
Постоянно растущий объем корпоративных данных повышает требования по скорости их обработки. Традиционные BI-системы уже зачастую не справляются с новыми вызовами. Снизить затраты на ИТ-решения, предназначенные для анализа больших массивов информации, а также ускорить ответы на запросы призвана технология in-memory, сфера применения которой расширяется год от года.
Необходимым условием успешного рыночного продвижения компании является быстрый доступ бизнес-пользователей к результатам аналитики. Чтобы максимально снизить скорость отклика на аналитические запросы, предприятия вынуждены вкладывать существенные средства в расширение ИТ-инфраструктуры для хранения больших объемов данных. Альтернатива бесконечной гонке за серверными мощностями – использование инструментов in-memory.
Направление in-memory активно развивается уже несколько лет и успешно используется для решения таких задач, как аппаратное ускорение пользовательских запросов в хранилищах данных, сегментация клиентской базы больших объемов, оптимизация логистических цепочек, быстрый поиск данных, и т.д. Аналитика in-memory database получила мощный импульс в связи с современными достижениями производителей аппаратного обеспечения. Совершенствуются технологии производства процессоров и серверов, постоянно улучшаются из характеристики, стремительно дешевеет оперативная память. Все это является благодатной почвой для развития in-memory.
Основная идея in-memory заключается в принципе постоянного хранения данных в оперативной памяти. Это позволяет пользователям получать ответы моментально – за доли секунды. Даже в случаях, когда они работают с огромными объемами данных. Новая технология призвана изменить привычные стереотипы и шаблонные схемы при работе с корпоративными данными. «Сейчас принято работать с данными на агрегированном уровне, использовать искусственные ограничения для того, чтобы запрос пользователя обрабатывался приемлемое время, - объясняет генеральный директор SAP СНГ Владислав Мартынов. - Новая технология ориентирована на то, чтобы пользователь не задумывался о том, стоит ли выполнять определенный запрос: он просто его выполняет и получает ответ моментально. В процессе такого интерактивного взаимодействия с системой аналитик легко может «нащупать» проблему или тенденцию, дойти до отдельных транзакций, вовремя реагировать на события, получая данные в режиме реального времени».
Рынок использования in-memory баз данных существует довольно давно, но до последнего времени его объем был невелик. Активный рост интереса к системам этого класса привел к тому, что несколько лет назад ряд ведущих игроков на рынке СУБД (Oracle, IBM и др.) приобрели разработчиков in-memory решений для интеграции их разработок со своими флагманскими продуктами.
В последнее время область применения in-memory активно расширяется. «Можно сказать, что in-memory технологии анализа находятся сейчас в «подростковом возрасте», - говорит заместитель руководителя практики BPM-решений NaviCon Group Алексей Куницын. - Это период, когда сил, энергии и самоуверенности девать уже некуда, но в любых более-менее серьезных вопросах без «взрослых» не обойтись. Эти системы уже многое могут, но путей для совершенствования перед ними множество».
Пионерами в использовании in-memory технологий стали компании, работающие в отраслях, где производительность и время отклика являются критичным для бизнеса. Эти компании используют системы с большим количеством параллельных транзакций. К ним относятся трейдинговые системы; онлайновые информационные агентства; предприятия электронной торговли. Нельзя также не отметить телекоммуникационные системы, которые должны соответствовать высочайшим стандартам скорости отклика; военные системы слежения, в реальном времени обрабатывающие телеметрию. Все эти структуры должны перерабатывать большие объемы данных и в то же время быстро реагировать на действия конечных пользователей.
У любой технологии есть свои преимущества и недостатки. По оценке NaviCon Group, определенные плюсы и минусы (Pro и Contra) есть как у традиционной аналитики, так и у in-memory.
«Поскольку системы in-memory достаточно новые - зачастую они выигрывают за счет средств визуализации данных, учитывающих все модные тренды, - отмечает г-н Куницын. - Так сказать, отчеты от Gucci с индикаторами KPI от Swarovski».
Сравнение традиционной и in-memory аналитики
Типы OLAP | Pro | Contra |
«Традиционный» OLAP |
|
|
In-memory OLAP |
|
|
Источник: NaviConGroup
Г-н Мартынов отмечает, что в традиционных системах, базирующихся на дисковых базах данных, присутствует эффект «бутылочного горла» в виде времени чтения с дисковых накопителей. В свою очередь, скорость работы дисковых массивов накладывает ограничения на объемы информации, которые могут быть обработаны за приемлемое время. «Все это приводит к тому, что корпоративные пользователи вынуждены себя ограничивать в объеме анализируемых данных и в глубине детализации, - рассказывает он. - Это те ограничения, которые диктуют современные ИТ-системы. Традиционные аналитические системы уже не справляются с обработкой огромных объемов данных, накопленных в большинстве компаний. Технологии in-memory в самом ближайшем будущем должны сломать эти искусственные ограничения».
Технология in-memory дает возможность высокопроизводительной работы с непрерывно растущими объемами данных. Это очень важно для современных компаний. Например, телекоммуникационные и банковские структуры, крупные ритейлеры уже обладают большими хранилищами данных. Одновременно с этим они решают задачу быстрого доступа к хранимой информации. В таких случаях, по мнению г-на Мартынова, как раз и следует рассматривать возможность симбиоза традиционных систем и нового подхода in-memory computing.
Кстати, по его словам, одно из основных отличий систем, работающих на технологии in-memory - быстрое внедрение. К примеру, инсталляция системы для анализа затрат и рентабельности предприятия в компании Colgate была произведена в рекордно короткие сроки – потребовалось меньше месяца. В результате заказчик снизил время обработки запроса с 15 минут до 2,9 секунд. При этом число анализируемых записей в системе превышало 600 млн. Другой приведенный г-ном Мартыновым пример - это компания Lenovo, где работает аналитическая CRM в реальном времени, которая также была внедрена всего за 3 месяца.
Менеджер по продуктам российского офиса Sybase Анна Нартова призывает не противопоставлять традиционную аналитику и in-memory, поскольку этих технологии решают принципиально различные задачи – не конкурирующие, а взаимодополняющие. «Традиционная аналитика имеет дело с большими объемами исторических данных, превышающими возможности имеющейся оперативной памяти. А существующие OLAP-решения призваны строить сложные отчеты по всему объему имеющихся данных, - объясняет она. - Оперативность здесь, безусловно, имеет значение, но большую роль играет подготовка данных, а также точность и глубина анализа. Количество пользователей у таких систем, как правило, не очень велико и исчисляется десятками».
В противовес этому, in-memory базы данных, по словам г-жи Нартовой, призваны совершать максимально быструю обработку относительно несложных запросов большого количества пользователей. Здесь во главу угла ставится скорость реакции системы - она должна быть выше, чем у традиционной СУБД. Зачастую в такие базы загружается имеющаяся справочная информация, - чтобы максимально быстро провести текущие расчеты (тарификация услуг, анализ рисков, краткосрочный отчет деловой активности и т.п.) или предоставить клиенту информацию (каталог товаров, информация о скидках и т.п.). «В отличие от традиционной аналитики, где мы имеем дело только с чтением, базы in-memory могут использоваться, в том числе, для ускорения операций вставки, изменения и удаления данных, потеря которых не несет существенного неудобства или бизнес-рисков, - отмечает г-жа Нартова. - Примером может служить корзина посетителя интернет-магазина или проведение сложных вычислений, использующих копии имеющихся данных».
Итак, достоинства решений in-memory очевидны, но они не лишены и недостатков. Во-первых, применить in-memory к действительно большим объемам данных (десятки и сотни терабайт) затруднительно – подходящего аппаратного обеспечения за разумные деньги пока не существует. «Разделение кубов на несколько серверов при таких объемах тоже малоэффективно, - объясняет г-н Куницын. - А «классические» OLAP-системы с такими объемами вполне справляются». Однако, по его словам, есть и обратная сторона медали: поскольку агрегации не хранятся на диске, а рассчитываются «на лету», in-memory-кубы изначально получаются гораздо компактнее, чем в «традиционных» OLAP-системах.
Второй недостаток – следствие «обратной стороны» первого. Чем сложнее куб, чем больше в нем вычислений - тем сильнее падает его производительность, ведь процессору (процессорам) нужно время, чтобы все посчитать.
«И еще одна проблема: поскольку разработчик OLAP-решения должен постоянно балансировать между ограничениями размера куба и его производительности, на первый план выходят возможности оптимизации, - замечает Алексей Куницын. - А в существующих системах они либо реализованы не слишком дружественным образом, либо спрятаны в «черный ящик» - мол, система умная и сама во всем разберется».
По мнению г-на Мартынова, основной недостаток современных in-memory заключается в отсутствии единой технологической платформы, которая бы выступала основой для построения приложений нового поколения, работающих полностью в оперативной памяти. «Над созданием такой платформы (она будет называться SAP Hana) сейчас работают в инновационных лабораториях SAP. Мы ожидаем ее появление уже в этом году», - отмечает г-н Мартынов.
Поскольку рынок только формируется, существует множество подходов к решению задачи обработки данных в оперативной памяти. Для кэширования информации часто используются системы собственной разработки, требующие значительных усилий по развитию и поддержке. Существует ряд промышленных систем, кэширующих данные на уровень серверов приложений. Их производительность довольно высока и они легко масштабируются, но при этом не слишком надежны и требуют существенного пересмотра имеющейся архитектуры приложений.
Что касается in-memory баз данных, то представленные в настоящее время решения, как правило, были приобретены ведущими поставщиками у третьих фирм и впоследствии интегрированы с существующими собственными продуктами. «Соответственно, их внедрение требует пересмотра существующих приложений и двойного администрирования, а с точки зрения функциональности, совершенства инструментов администрирования и мониторинга им далеко до традиционных БД, развивающихся десятилетиями», - убеждена Анна Нартова.
Эксперты, опрошенные CNews, практически не сомневаются в светлом будущем аналитики in-memory в России и постсоветском пространстве. Здесь решения, хранящие данные в оперативной памяти, используются, но пока они имеют нишевое значение и, как правило, являются системами собственной разработки.
Рынок СНГ уже вполне готов к тому, чтобы принять эти технологии: тенденция многократного роста данных особенно заметна в таких индустриях, как ритейл, телеком и FSI. Аналитики вынуждены долго ожидать выполнения своих аналитических запросов. Если ничего не делать, то ситуация будет усугубляться и дальше - скорость будет падать одновременно с ростом накапливаемых объемов. Из-за этого многие начинают прибегать к оптимизации баз данных. «Это один из возможных вариантов решения проблемы. Но подобные способы дают увеличение в разы, а не в сотни раз, - уверяет г-н Мартынов. - Проблема в том, что этот ресурс многие компании уже исчерпали. Поэтому следующий этап развития заключается в переходе на технологии in-memory».
По мнению г-жи Нартовой, через какое-то время будет заметен массовый сдвиг в сторону использования технологий in-memory, а растущие потоки данных и ужесточающиеся требования к их обработке только приблизят этот момент. Однако для этого необходимо, чтобы произошел сдвиг в сознании заказчиков. Дело в том, что сейчас фраза «база данных» ассоциируется у людей с образом дисковых стоек, хранящих большие массивы информации со всеми возможными степенями защиты. Между тем, существует целый класс задач, где скорость обработки данных имеет существенный приоритет над надежностью их хранения. Кроме того, любые современные in-memory решения поддерживают масштабирование и демонстрируют высокую степень доступности.
Андрей Арсентьев