SAP HANA | |
---|---|
![]() | |
Тип | реляционная СУБД и Резидентная база данных |
Разработчик | SAP SE |
Написана на | Си и C++ |
Операционная система | Linux |
Последняя версия | |
Состояние | активное |
Лицензия | проприетарная лицензия[d] и пользовательское соглашение |
Сайт | hana.sap.com |
HANA (англ. High-Performance Analytic Appliance) — это высокопроизводительная NewSQL платформа для хранения и обработки данных, в основе которой лежит технология вычислений in-memory с использованием принципа поколоночного хранения данных, платформы, разработанной и выведенной на рынок компанией SAP SE.[2][3] Архитектура HANA обеспечивает как высокоскоростную обработку транзакций, так и работу со сложными аналитическими запросами, совмещая решение этих задач в рамках единой платформы.[4]
Кроме самой СУБД, в составе HANA предусмотрены встроенный веб-сервер и репозиторий управления версиями, необходимые для разработки приложений. Приложения HANA могут создаваться с использованием кода JavaScript на стороне сервера и HTML-кода.
SAP HANA обязана своим появлением вновь разработанным или приобретенным технологиям, в числе которых поисковая машина TREX, колонко-ориентированная поисковая машина in-memory, P*TIME и OLTP база данных на основе технологии in-memory, приобретенная SAP в 2005 году, и база данных MaxDB со встроенным процессором liveCache, также на основе технологии in-memory.[5][6] В 2008 году команды специалистов из SAP SE, работавшие с Институтом имени Хассо Платтнера и Стэнфордским университетом, продемонстрировали архитектуру приложения для аналитики реального времени и агрегирования, упомянутую как «новая архитектура Хассо» в блоге технического директора SAP Вишала Сикка (Vishal Sikka). До распространения устойчивого наименования HANA специалисты называли этот программный продукт «новой базой данных».[7]
Эта СУБД была служебным аналитическим продуктом, обеспечивавшим отклик в режиме реального времени.[8] Выпуск SAP HANA начался в конце ноября 2010 года.[6][9] Несмотря на то, что к середине 2011 года решение привлекло к себе внимание рынка, консервативно настроенные бизнес-заказчики продолжали считать, что технология еще «не созрела».[10] В сентябре 2011 года было объявлено о выпуске SAP NetWeaver Business Warehouse на основе технологии SAP HANA. Первые поставки этого решения начались в ноябре того же года.[11]
В 2012 году SAP выпустила решение для облачных вычислений.[12] В октябре 2012 года SAP объявила о выпуске варианта системы HANA One, в которой использовалась память небольшого объема, размещенная на средствах Amazon Web Services на условиях почасовой оплаты.[13]
В январе 2013 года было объявлено о выпуске SAP Enterprise Resource Planning, входившего в пакет Business Suite компании SAP, на базе SAP HANA, а поставки начались в мае.[14][15] Так же в мае 2013 года было объявлено о разработке решения «программное обеспечение как сервис»: решение получило официальное название HANA Enterprise Cloud (HEC).[16] Вместо выпуска очередных версий в SAP HANA используется практика пакетов обновлений.[17][18]
По состоянию на август 2015 свежим пакетом обновлений является SPS10[19][20].
В правой части следующего рисунка показана структура основного процесса, называемого «индексным сервером».[21]
Индексный сервер обеспечивает управление сеансами, авторизацию, управление транзакциями и обработку команд. Следует помнить, что HANA поддерживает как строчное, так и поколоночное хранение данных. Несмотря на то, что пользователи могут создавать таблицы с использованием любого из типов хранения, наибольшими возможностями обладает формат хранения данных по столбцам. Кроме этого, индексный сервер обеспечивает соответствие между файлами в постоянной памяти и оперативной памятью, содержащей кэшированные образы объектов БД и файлов журналов.
Диспетчер авторизации обеспечивает работу служб аутентификации и авторизации. Диспетчер авторизации обеспечивает защиту с использованием протоколов аутентификации SAML, OAuth или Kerberos.
Подсистема Extended Services (XS) представляет собой веб-сервер с привилегированным доступом к базе данных. Для развертывания приложений в XS могут использоваться сервлеты Java Servlets или приложения JavaScript на стороне сервера. Такими приложениями могут быть веб-приложения HTML или конечные точки веб-службы REST. В состав JavaScript стороны сервера входят расширения на основе jQuery для доступа к БД и для доступа к запросным и ответным сообщениям HTTP. Движок JavaScript реализован на основе проекта Mozilla SpiderMonkey.
Клиентские приложения получают доступ к базе данных HANA непосредственно с использованием JDBC, либо через подсистему Extended Services с использованием HTTP.
Для преодоления ограничений, связанных с вводом-выводом SAP HANA была построена на основе сервера для вычислений по технологии in-memory. Это значит, что первый доступ к таблице вызывает необходимость чтения и поддержки всей таблицы в памяти. Поддержку файлов журналов и долговременное хранение данных на диске обеспечивают процессы фонового режима. Процессор запросов служит для обработки данных с поддержкой массового параллелизма. Хранение данных по столбцам сокращает объем требуемых операций считывания и устраняет необходимость индексирования данных.
Приложения могут действовать в обход процессора SQL, получая непосредственный доступ к подсистеме вычислений с помощью запросов на основе XML. Существует три типа non-SQL объектов: Attribute Views, Calculation Views и Analytic Views. Во многих случаях использование этих объектов вместо запросов SQL позволяет улучшить характеристики производительности приложений.
Для разработки приложений используется подключаемый программный модуль HANA Studio для среды разработки Eclipse. Эта среда обеспечивает разработку приложений и управление базами данных. Подключаемый программный модуль Eclipse служит для создания, развертывания и отладки объектов БД (таблиц, представлений, хранимых процедур и др.). HANA Studio обеспечивает создание, развертывание и отладку приложений Extended Services. HANA Studio также выполняет стандартные функции управления базами данных, такие как создание БД, управление аккаунтами пользователей, операции резервного копирования/восстановления, экспорта/импорта данных. В состав сервера HANA входит система управления версиями, называемая репозитарием. Развертывание приложений, разработанных в HANA Studio, производится с использованием репозитария, обеспечивающего поддержку истории версий для каждого искусственного объекта развертывания (таблицы, представления, процедуры, файла JavaScript и др.). Перемещение приложений с одного сервера на другой осуществляется посредством создания Distribution Unit (DU). DU представляют собой сильно сжатые архивы из файлов, входящих в состав приложения. Это может потребоваться для создания автономных разработок, тестов и производственных сред. Создание, экспорт и импорт этих объектов может производиться с использованием HANA Studio. Несмотря на то, что JDBC обеспечивает поддержку традиционных приложений клиент-серверной или многозвенной архитектуры, компания SAP рекомендует[23] переносить бизнес-логику из приложений клиент-серверной или многозвенной архитектуры на сервер HANA в качестве XS-приложений. При этом появляется возможность улучшить характеристики производительности за счет уменьшения объема данных, передаваемых от сервера БД на сервер приложений. Это также позволяет приложению использовать вычислительную мощность ЦП, имеющуюся на больших серверах, на которых работает платформа HANA.
Предметом самого пристального внимания сообщества разработчиков на платформе SAP HANA является Центр разработчиков SAP HANA (DevCenter). DevCenter содержит информацию общего плана, образовательные материалы, форумы сообщества, а также обеспечивает доступ к базе данных SAP HANA с бесплатными лицензиями хостинга на общедоступном облаке (например, на CloudShare, Amazon Web Services, Microsoft Azure). Доступ к некоторым материалам и функциям предоставляется после бесплатной регистрации.
Платформа HANA поставляется вместе с оборудованием (аппаратная платформа с предустановленным программным обеспечением SAP HANA), предлагаемым такими поставщиками как Huawei, HP, IBM, Dell, Hitachi, Fujitsu, Cisco. HANA также доступна в виде облачного решения (под наименованием HANA One), поставляемого несколькими провайдерами облачных услуг, такими как Amazon и Microsoft Azure. Ряд провайдеров облачных услуг предлагают бесплатную редакцию системы для разработчиков. HANA не поставляется как исключительно программное обеспечение. Для развертывания SAP HANA пользователю требуется располагать аккаунтом SAP. Для установки экземпляра HANA пользователю необходимо войти в свой аккаунт SAP и запустить инсталляцию из этого аккаунта. Если инфраструктура установки программ SAP отвечает всем требованиям, SAP создает свои виртуальные машины на средствах выбранного провайдера облачных служб. В этом заключается отличие от более традиционного подхода, при котором создание виртуальных машин обеспечивается непосредственно на веб-сайте провайдера облачных услуг. Платформа HANA требует достаточно мощных аппаратных ресурсов. Например, экземпляр, рекомендованный для Amazon, имеет в 8 раз больший объем и требует наличия 32 ЦП, 60 ГБ памяти и 640 ГБ дискового пространства.[25] HANA может быть развернута на одном сервере или на кластере повышенной доступности. Один сервер обеспечивает работу нескольких экземпляров HANA.
Эту статью следует викифицировать. |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .