Андрей Арсентьев, CNews
Постоянно растущий объем корпоративных данных повышает требования по скорости их обработки. Традиционные 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 технологий стали компании, работающие в отраслях, где производительность и время отклика являются критичным для бизнеса. Эти компании используют системы с большим количеством параллельных транзакций. К ним относятся трейдинговые системы; онлайновые информационные агентства; предприятия электронной торговли. Нельзя также не отметить телекоммуникационные системы, которые должны соответствовать высочайшим стандартам скорости отклика; военные системы слежения, в реальном времени обрабатывающие телеметрию. Все эти структуры должны перерабатывать большие объемы данных и в то же время быстро реагировать на действия конечных пользователей.
In-memory vs традиционная аналитика
У любой технологии есть свои преимущества и недостатки. По оценке NaviCon Group, определенные плюсы и минусы (Pro и Contra) есть как у традиционной аналитики, так и у in-memory.
«Поскольку системы in-memory достаточно новые - зачастую они выигрывают за счет средств визуализации данных, учитывающих все модные тренды, - отмечает г-н Куницын. - Так сказать, отчеты от Gucci с индикаторами KPI от Swarovski».
Г-н Мартынов отмечает, что в традиционных системах, базирующихся на дисковых базах данных, присутствует эффект «бутылочного горла» в виде времени чтения с дисковых накопителей. В свою очередь, скорость работы дисковых массивов накладывает ограничения на объемы информации, которые могут быть обработаны за приемлемое время. «Все это приводит к тому, что корпоративные пользователи вынуждены себя ограничивать в объеме анализируемых данных и в глубине детализации, - рассказывает он. - Это те ограничения, которые диктуют современные ИТ-системы. Традиционные аналитические системы уже не справляются с обработкой огромных объемов данных, накопленных в большинстве компаний. Технологии 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 баз данных, то представленные в настоящее время решения, как правило, были приобретены ведущими поставщиками у третьих фирм и впоследствии интегрированы с существующими собственными продуктами. «Соответственно, их внедрение требует пересмотра существующих приложений и двойного администрирования, а с точки зрения функциональности, совершенства инструментов администрирования и мониторинга им далеко до традиционных БД, развивающихся десятилетиями», - убеждена Анна Нартова.
В сторону in-memory
Эксперты, опрошенные CNews, практически не сомневаются в светлом будущем аналитики in-memory в России и постсоветском пространстве. Здесь решения, хранящие данные в оперативной памяти, используются, но пока они имеют нишевое значение и, как правило, являются системами собственной разработки.
Рынок СНГ уже вполне готов к тому, чтобы принять эти технологии: тенденция многократного роста данных особенно заметна в таких индустриях, как ритейл, телеком и FSI. Аналитики вынуждены долго ожидать выполнения своих аналитических запросов. Если ничего не делать, то ситуация будет усугубляться и дальше - скорость будет падать одновременно с ростом накапливаемых объемов. Из-за этого многие начинают прибегать к оптимизации баз данных. «Это один из возможных вариантов решения проблемы. Но подобные способы дают увеличение в разы, а не в сотни раз, - уверяет г-н Мартынов. - Проблема в том, что этот ресурс многие компании уже исчерпали. Поэтому следующий этап развития заключается в переходе на технологии in-memory».
© Copyright 2016, ООО "Сайбейс"