SAP HANA ( HochleistungsANalyseAnwendung или Высокопроизводительное аналитическое приложение) — это система управления реляционными базами данных , работающая в оперативной памяти , ориентированная на столбцы , разработанная и продаваемая SAP SE . [2] [3] Ее основная функция как программного обеспечения, работающего на сервере базы данных , заключается в хранении и извлечении данных по запросу приложений. Кроме того, она выполняет расширенную аналитику ( прогностическую аналитику , пространственную обработку данных , текстовую аналитику, текстовый поиск, потоковую аналитику , обработку графических данных ) и включает в себя возможности извлечения, преобразования, загрузки (ETL), а также сервер приложений .
На ранних этапах разработки SAP HANA SAP SE разработала или приобрела ряд технологий . Среди них поисковая система TREX ( поисковая система, ориентированная на столбцы в памяти ), P*TIME (платформа обработки транзакций в памяти (OLTP), приобретенная SAP в 2005 году) и MaxDB с ее движком liveCache в памяти. [4] [5]
Первая крупная демонстрация платформы состоялась в 2011 году: команды из SAP SE , Института Хассо Платтнера и Стэнфордского университета продемонстрировали архитектуру приложения для аналитики и агрегации в реальном времени, используя название HYRISE. [6] Бывший руководитель SAP SE Вишал Сикка назвал эту архитектуру «Новой архитектурой Хассо». [7] До того, как название «HANA» стабилизировалось, люди называли этот продукт «Новой базой данных». [8] Ранее программное обеспечение называлось «SAP High-Performance Analytic Appliance». [9]
Первая исследовательская работа по HYRISE была опубликована в ноябре 2010 года. [10] Позднее, в 2013 году, исследовательский движок был выпущен с открытым исходным кодом, [11] а в 2016 году был модернизирован и в 2017 году стал HYRISE2. [12]
Первый продукт был отправлен в конце ноября 2010 года. [5] [13] К середине 2011 года технология привлекла интерес, но более опытные бизнес-клиенты посчитали, что она находится «на ранней стадии». [14] Поддержка HANA для SAP NetWeaver Business Warehouse (BW) была объявлена в сентябре 2011 года и станет доступна к ноябрю. [15]
В 2012 году SAP продвигала аспекты облачных вычислений . [16] В октябре 2012 года SAP анонсировала платформу как услугу, названную SAP HANA Cloud Platform [17] [18] , и вариант под названием SAP HANA One, который использовал меньший объем памяти. [19] [20]
В мае 2013 года было анонсировано предложение управляемого частного облака под названием HANA Enterprise Cloud service. [21] [22]
В мае 2013 года стал доступен Business Suite на HANA, позволяющий клиентам запускать функции SAP Enterprise Resource Planning на платформе HANA. [23] [24]
S/4HANA , выпущенная в 2015 году и написанная специально для платформы HANA, объединяет функциональность ERP , CRM , SRM и других в одной системе HANA. [25] S/4HANA предназначена для того, чтобы стать упрощенным бизнес-пакетом, заменяющим системы ERP более раннего поколения . [26] Хотя вполне вероятно, что SAP сосредоточит свои инновации на S/4HANA, некоторые клиенты, использующие системы, отличные от HANA, выразили обеспокоенность по поводу того, что они будут привязаны к продуктам SAP. Поскольку для работы S/4HANA требуется система SAP HANA, клиентам, использующим приложения SAP Business Suite на оборудовании, не сертифицированном SAP, необходимо будет перейти на сертифицированную SAP базу данных HANA, если они выберут функции, предлагаемые S/4HANA. [27]
Вместо управления версиями программное обеспечение использует пакеты обновления , называемые Support Package Stacks (SPS), для обновлений. Support Package Stacks выпускаются каждые 6 месяцев. [28]
В ноябре 2016 года SAP анонсировала SAP HANA 2, которая предлагает усовершенствования в нескольких областях, таких как управление базами данных и управление приложениями, и включает в себя два новых облачных сервиса: анализ текста и анализ наблюдения за Землей. [ требуется ссылка ] Клиенты HANA могут обновиться до HANA 2 с SPS10 и выше. Клиенты, использующие SPS9 и ниже, должны сначала обновиться до SPS12 перед обновлением до HANA 2 SPS01. [29]
Ключевые различия между HANA и системами SAP предыдущего поколения заключаются в том, что это столбцовая , in-memory-ориентированная база данных , которая объединяет операции OLAP и OLTP в единую систему; таким образом, в целом SAP HANA является системой «онлайн-транзакций и аналитической обработки» (OLTAP), [30] также известной как гибридная транзакционная/аналитическая обработка (HTAP). Хранение данных в основной памяти, а не на диске, обеспечивает более быстрый доступ к данным и, как следствие, более быстрые запросы и обработку. [31] Хотя хранение данных в памяти дает преимущества в производительности, это более дорогостоящая форма хранения данных. Соблюдая закономерности доступа к данным, до 85% данных в корпоративной системе могут быть нечасто доступны [31], поэтому может быть экономически эффективно хранить часто используемые или «горячие» данные в памяти, в то время как менее часто используемые «теплые» данные хранятся на диске, подход, который SAP начала поддерживать в 2016 году и который называется «динамическое многоуровневое хранение». [32]
Системы, ориентированные на столбцы, хранят все данные для одного столбца в одном месте, а не хранят все данные для одной строки в одном месте (системы, ориентированные на строки). Это может обеспечить повышение производительности для запросов OLAP на больших наборах данных и позволяет большее вертикальное сжатие схожих типов данных в одном столбце. Если время чтения для данных, хранящихся в столбцах, достаточно быстрое, консолидированные представления данных могут быть выполнены на лету , устраняя необходимость в поддержании агрегированных представлений и связанной с ними избыточности данных . [33]
Хотя для OLTP традиционно отдавалось предпочтение строчно-ориентированным системам , хранение в памяти открывает возможности для разработки гибридных систем, подходящих как для OLAP , так и для OLTP- возможностей, [34] устраняя необходимость в поддержке отдельных систем для операций OLTP и OLAP.
Сервер индекса выполняет управление сеансами, авторизацию, управление транзакциями и обработку команд. База данных имеет как строковое, так и столбчатое хранилище. Пользователи могут создавать таблицы, используя любое хранилище, но столбчатое хранилище имеет больше возможностей и используется чаще всего. [ необходима цитата ] Сервер индекса также управляет сохранением между кэшированными образами памяти объектов базы данных, файлами журналов и файлами постоянного хранения. Механизм XS позволяет создавать веб-приложения. [35]
SAP HANA Information Modeling (также известное как SAP HANA Data Modeling) является частью разработки приложений HANA. Моделирование — это методология предоставления операционных данных конечному пользователю. В процессе моделирования используются повторно используемые виртуальные объекты (называемые расчетными представлениями).
SAP HANA управляет параллелизмом с помощью управления параллелизмом многоверсионности (MVCC), которое дает каждой транзакции снимок базы данных в определенный момент времени. Когда базе данных MVCC необходимо обновить элемент данных, она не перезаписывает старые данные новыми, а вместо этого отмечает старые данные как устаревшие и добавляет более новую версию. [36] [37]
В масштабируемой среде HANA может хранить объемы данных до петабайта в памяти, возвращая результаты запроса менее чем за секунду. Однако оперативная память по-прежнему намного дороже дискового пространства, поэтому масштабируемый подход возможен только для определенных критических по времени случаев использования. [38]
SAP HANA включает в себя ряд аналитических движков для различных видов обработки данных. Библиотека бизнес-функций включает в себя ряд алгоритмов, доступных для решения общих алгоритмов обработки бизнес-данных, таких как амортизация активов , скользящий прогноз и скользящее среднее . [39] Библиотека предиктивной аналитики включает в себя собственные алгоритмы для расчета общих статистических мер в таких областях, как кластеризация , классификация и анализ временных рядов . [40]
HANA включает в себя открытый исходный код статистического языка программирования R в качестве поддерживаемого языка в хранимых процедурах . [41]
База данных с колоночным хранилищем предлагает возможности графовой базы данных . Графовый движок обрабатывает язык запросов Cypher , а также имеет визуальную манипуляцию графами с помощью инструмента под названием Graph Viewer. Структуры графовых данных хранятся непосредственно в реляционных таблицах в колоночном хранилище HANA. [42] Предварительно созданные алгоритмы в графовом движке включают сопоставление шаблонов, поиск соседей, один кратчайший путь и сильно связанные компоненты. Типичные ситуации использования для Graph Engine включают такие примеры, как отслеживание цепочки поставок, обнаружение мошенничества, а также логистика и планирование маршрутов. [43]
HANA также включает в себя пространственный движок базы данных, который реализует пространственные типы данных и расширения SQL для операций CRUD с пространственными данными. HANA сертифицирована Open Geospatial Consortium , [44] и интегрируется с географической информационной системой ArcGIS ESRI . [45]
В дополнение к числовым и статистическим алгоритмам, HANA может выполнять текстовую аналитику и корпоративный текстовый поиск. Возможности поиска HANA основаны на «нечетком» отказоустойчивом поиске, во многом подобном современным веб-поисковым системам. Результаты включают статистическую меру релевантности результатов поиска, а критерии поиска могут включать порог точности результатов. [46] Доступные анализы включают идентификацию сущностей, таких как люди, даты, места, организации, запросы, проблемы и многое другое. Такое извлечение сущностей может быть направлено на конкретные варианты использования, такие как «Голос клиента» (предпочтения и ожидания клиента), «Предприятие» (т. е. слияния и поглощения, продукты, организации) и «Государственный сектор» (публичные лица, события, организации). [47] Также могут быть реализованы пользовательское извлечение и словари.
Помимо возможностей базы данных и аналитики данных, SAP HANA представляет собой веб-сервер приложений , размещающий пользовательские приложения, тесно интегрированные с базами данных и аналитическими движками HANA. «XS Advanced Engine» (XSA) изначально работает с языками и средами выполнения Node.js и JavaEE . XSA основан на архитектуре Cloud Foundry и, таким образом, поддерживает концепцию «Bring Your Own Language», позволяя разработчикам разрабатывать и развертывать приложения, написанные на языках и в средах выполнения, отличных от тех, которые XSA реализует изначально, а также развертывать приложения как микросервисы . XSA также допускает серверный JavaScript с SAP HANA XS Javascript (XSJS). [48]
Поддержка сервера приложений осуществляется набором инструментов управления жизненным циклом приложений, позволяющих осуществлять разработку, развертывание и мониторинг пользовательских приложений.
HANA может быть развернута локально или в облаке от ряда поставщиков облачных услуг . [49]
HANA может быть развернута локально как новое устройство от сертифицированного поставщика оборудования. [50] В качестве альтернативы существующие аппаратные компоненты, такие как хранилище и сеть, могут быть использованы как часть внедрения, подход, который SAP называет «Индивидуальная интеграция центра обработки данных (TDI)». [51] [52] HANA сертифицирована для работы на нескольких операционных системах , [53] включая SUSE Linux Enterprise Server [54] и Red Hat Enterprise Linux . [55] Поддерживаемые аппаратные платформы для локального развертывания включают Intel 64 [56] и POWER Systems . [57] Система разработана для поддержки как горизонтального, так и вертикального масштабирования .
Несколько поставщиков облачных услуг предлагают SAP HANA на основе инфраструктуры как услуги , в том числе:
SAP также предлагает собственные облачные сервисы в виде:
Лицензирование SAP HANA в основном делится на две категории. [65]
Лицензия на выполнение:
Используется для запуска приложений SAP, таких как SAP Business Warehouse на базе SAP HANA и SAP S/4HANA .
Лицензия на полное использование:
Используется для запуска приложений SAP и не-SAP. Это лицензирование может использоваться для создания пользовательских приложений. [66]
В рамках лицензии на полное использование функции сгруппированы в редакции, ориентированные на различные варианты использования.
Кроме того, такие возможности, как потоковая передача и ETL, лицензируются как дополнительные опции. [67]
С 9 марта 2017 года SAP HANA доступна в Express edition ; оптимизированная версия, которая может работать на ноутбуках и других средах с ограниченными ресурсами. Лицензия на SAP HANA, Express edition бесплатна, даже для продуктивного использования до 32 ГБ ОЗУ. [68] Дополнительное увеличение емкости может быть приобретено до 128 ГБ ОЗУ. [69]