SAP HANA ArchiАрхитектура: Обзор базы данных

⚡ Умное резюме

SAP HANA ArchiАрхитектура, ландшафт и размеры составляют основу платформы для работы с данными в оперативной памяти, построенной на базе SUSE Linux. C++В этой статье рассматриваются индексный сервер, механизмы хранения данных, хранилища строк и столбцов, дельта-слияние и методы расчета аппаратных параметров.

  • ???? Основная платформа: SAP HANA — это база данных, работающая в оперативной памяти, которая обрабатывает рабочие нагрузки OLAP и OLTP на одном движке.
  • ???? ️ Компоненты сервера: Серверы индексации, препроцессора, именования, статистики и XS координируют запросы, метаданные и HTTP-сервисы.
  • 📊 Модель хранения: Построчное хранилище данных аналогично традиционным реляционным СУБД; столбцовое хранилище обеспечивает сжатие, быстрое чтение и аналитику.
  • 🔄 Delta Объединение: Запись происходит в дельта-хранилище (L1, L2), и данные из него объединяются с данными из основного хранилища по расписанию или по запросу.
  • 📏 Факторы, определяющие размер: Основным фактором, определяющим объем памяти, является ее объем, за ней следует процессор; дисковое пространство поддерживает сохранение данных и ведение журналов.
  • 🇧🇷 Методы определения размера: Используйте отчеты ABAP, скрипты баз данных или SAP Инструмент Quick Sizer для оценки требований к оборудованию.

SAP HANA Archiархитектура, ландшафтный дизайн, размеры

Что такое SAP База данных HANA?

SAP HANA — это платформа управления данными, ориентированная на работу в оперативной памяти. База данных работает на SUSE Linux Enterprise Server (SLES) и Red Hat Enterprise Linux (RHEL) и написан на C++Она может масштабироваться на несколько машин для обработки очень больших объемов данных.

Основные преимущества SAP ХАНА:

  • Чрезвычайно высокая скорость выполнения запросов, поскольку все данные загружаются в память, что исключает медленный дисковый ввод-вывод из критического пути обработки.
  • Использование комбинированных OLAP (оперативная аналитическая обработка) и OLTP (оперативная обработка транзакций) в одной базе данных упрощает структуру данных.

SAP База данных HANA построена на основе набора механизмов обработки данных в оперативной памяти. Основной механизм — это механизм вычислений, который взаимодействует с другими механизмами, такими как реляционный механизм (хранилище строк и столбцов), механизм OLAP, текстовый механизм и механизм графов. Реляционная таблица хранится либо в хранилище строк, либо в хранилище столбцов, а дополнительные механизмы обрабатывают текстовые и графовые данные, пока доступна память.

SAP HANA Archiтекстура

Данные в столбцовом хранилище сжимаются с использованием таких методов, как словарное кодирование, кодирование длин серий, разреженное кодирование, кластерное кодирование и косвенное кодирование. При достижении лимита основной памяти неиспользуемые объекты базы данных (таблицы, представления и т. д.) автоматически выгружаются на диск и загружаются повторно по запросу.

Администраторы также могут вручную загружать или выгружать отдельные таблицы, щелкнув по таблице правой кнопкой мыши. SAP HANA Studio и выбор разгружать or нагрузка.

SAP Сервер HANA состоит из:

  1. Индексный сервер
  2. Препроцессорный сервер
  3. Name Server
  4. Сервер статистики
  5. XS-движок

SAP Схема архитектуры HANA, показывающая основные компоненты сервера.

1. SAP Индексный сервер HANA

Сервер индексации является основным SAP Компонент базы данных HANA:

  • Это сердце SAP База данных HANA.
  • В нём содержатся сами хранилища данных и механизмы, обрабатывающие эти данные.
  • Он выполняет входящие SQL- и MDX-запросы.

Архитектура сервера индексации показана ниже.

SAP Внутренняя архитектура HANA Index Server

SAP Обзор индексного сервера HANA

  • Менеджер сессий и транзакций: Компонент «Сессии» управляет соединениями и сессиями для базы данных. Менеджер транзакций координирует и контролирует все транзакции.
  • SQL и процессор MDX: SQL-процессор отправляет запросы соответствующему механизму (SQL / SQL Script / R / Calc Engine). MDX-процессор обрабатывает многомерные запросы (например, к аналитическому представлению).
  • SQL/SQL Script/R/Calc Engine: Выполняет SQL-запросы, SQL-скрипты, запросы на языке R и модели вычислений к данным.
  • Repository: Поддерживает версионирование для SAP Метаданные объектов HANA, такие как представления атрибутов, аналитические представления и хранимые процедуры.
  • Уровень постоянного хранения данных: Обеспечивает встроенную функцию аварийного восстановления путем записи точек сохранения и журналов на том данных на диске.

2. Сервер препроцессора

Сервер препроцессора используется для анализа текста. Он выполняет следующие функции:tracПри вызове функции поиска программа подготавливает данные из текстового содержимого.

3. Сервер имен

Сервер имен хранит информацию обо всей системной среде. В распределенной системе он tracks определяет каждый запущенный компонент и местоположение данных на узлах, чтобы запросы могли быть направлены на нужный сервер.

4. Сервер статистики

Сервер статистики собирает данные о состоянии, распределении ресурсов, потреблении и производительности. SAP Система HANA. Примечание: в HANA SPS 7 и более поздних версиях встроенная служба статистики работает внутри индексного сервера, а не как отдельный процесс.

5. Сервер XS

На сервере XS размещается движок XS Engine, который позволяет внешним приложениям и разработчикам использовать его. SAP База данных HANA по протоколу HTTP. Сам XS Engine выступает в качестве легковесного HTTP-сервера, позволяя браузерным и REST-клиентам напрямую взаимодействовать с HANA.

SAP Хана Пейзаж

«HANA» означает Высокопроизводительный аналитический прибор и поставляется в виде комбинированной аппаратной и программной платформы.

  • Современное оборудование предлагает гораздо больше ядер ЦП, оперативной памяти и пропускной способности хранилища, чем было предусмотрено конструкцией устаревших серверов баз данных.
  • SAP HANA использует это, сохраняяping Все рабочие данные хранятся в оперативной памяти, что устраняет узкое место, связанное с дисковым вводом-выводом, которое ограничивает возможности традиционных баз данных.

Приведенная ниже диаграмма суммирует следующее: SAP Инновации в аппаратном и программном обеспечении HANA.

SAP Обзор инноваций в аппаратном и программном обеспечении HANA

SAP HANA поддерживает два реляционных хранилища данных: Магазин Ряд и Колонка Магазин.

Магазин Ряд

Хранилище строк ведет себя как традиционная база данных (Oracle(SQL Server). Ключевое отличие заключается в том, что все строки находятся в оперативной памяти. SAP В отличие от традиционных баз данных, где данные хранятся преимущественно на диске, в HANA они хранятся преимущественно на диске.

Колонка Магазин

Column Store хранит данные в столбцовом формате в памяти. Здесь хранятся столбцовые таблицы, и механизм обеспечивает баланс между высокой производительностью записи и оптимизированной производительностью чтения. На диаграмме ниже показаны две структуры, которые позволяют достичь этого баланса.

Основные и дельта-хранилища в SAP хранилище колонок HANA

Основное хранилище

Основная память содержит большую часть данных. Для экономии памяти и ускорения поиска применяются методы сжатия, такие как словарное кодирование, кластерное кодирование, разреженное кодирование и кодирование длин серий.

  • Изменение сжатых данных непосредственно в основной памяти — дорогостоящий процесс, поэтому операции записи не затрагивают основную память.
  • Вместо этого каждое изменение записывается в отдельную область, называемую Delta ПамятьОперации чтения могут выполняться как в основном, так и в дельта-хранилище.

Загрузка и выгрузка данных может осуществляться вручную с помощью... Загрузка в память и Выгрузка из памяти Варианты показаны ниже.

Параметры «Загрузка в память» и «Выгрузка из памяти» в настройках SAP Хана Студия

Delta Память

Delta Хранилище оптимизировано для записи и использует более легкое сжатие. Все незафиксированные изменения в таблице столбцов хранятся здесь. Когда изменения необходимо объединить с основным хранилищем, выполните команду Delta идти операция от SAP Хана Студия.

Delta Опция слияния в SAP Хана Студия

  • В результате слияния дельта-обновлений изменения, собранные в хранилище дельта-обновлений, перемещаются в основное хранилище.
  • После слияния новое содержимое основного хранилища сохраняется на диске, и выполняется перерасчет степени сжатия.

Как данные перемещаются из Delta в основное хранилище

Delta Объединение потока данных из уровня L1 в уровень L2 и далее в основное хранилище.

Построчно организованный буфер, называемый Л1-Delta Он располагается перед каждой столбцовой таблицей, поэтому столбцовая таблица может обрабатывать высокоскоростные операции записи.

  1. Пользователь выполняет операцию UPDATE или INSERT в таблице.
  2. Данные сначала попадают в L1-Delta (незафиксированные данные).
  3. После подтверждения данные перемещаются в столбцово-ориентированную L2-систему.Delta буфера.
  4. Когда L2-Delta Если хранилище заполнено или выполняется слияние, данные записываются в основное хранилище.

Таким образом, столбцовое хранилище оптимизировано как для записи (за счет дельта-функций L1 и L2), так и для чтения (за счет основного хранилища). После обработки данные сохраняются на диск слоем постоянного хранения.

Пример таблицы, построенной по строкам:

Пример построчной таблицы в SAP HANA

Одна и та же логическая таблица хранится на диске по-разному в зависимости от типа хранилища. В построчном хранилище строки записываются последовательно:

Расположение памяти в строковом хранилище SAP HANA

В столбцовом хранилище значения из одного и того же столбца хранятся вместе:

Расположение памяти в столбцовом хранилище SAP HANA

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

Преимущество сжатия данных в столбцовом хранилище в SAP HANA

SAP Определение размеров HANA

Определение необходимых аппаратных ресурсов — оперативной памяти, дискового пространства и процессора — это процесс выбора оптимального объема памяти, дискового пространства и вычислительных ресурсов для конкретной системы. SAP Система HANA. Память — наиболее важный фактор, процессор — второй по значимости, а дисковая инфраструктура определяется первыми двумя.

В SAP При внедрении HANA выбор оптимального размера серверов для бизнес-нагрузки является одной из важнейших задач. По сравнению с традиционными СУБД, выбор размера серверов для HANA отличается в трех аспектах:

  • Основная память: Обусловлено метаданными, а также объемом транзакционных и аналитических данных, хранящихся в памяти.
  • CPU : Расчетные, а не измеренные значения, основанные на запросах прогноза и моделях нагрузки.
  • диск: Предназначен для постоянного хранения данных и больших объемов журналов, а не для онлайн-запросов.

Объем процессора и памяти сервера приложений остался неизменным по сравнению с предыдущей базой данных, поскольку HANA заменяет только уровень базы данных.

SAP Предлагается несколько методов для расчета правильного размера:

  1. Расчет размеров с помощью отчета ABAP (код транзакции) ST03 данные и отчет /SDF/HDB_SIZING).
  2. Определение размеров с помощью скрипта базы данных для систем, не использующих ABAP.
  3. Определение размера с помощью SAP Быстрый размер инструмент на SAP Рынок услуг.

При использовании инструмента Quick Sizer требуемые параметры отображаются в формате, представленном ниже.

SAP Пример выходных данных HANA Quick Sizer

Часто задаваемые вопросы (FAQ)

SAP HANA хранит все рабочие данные в оперативной памяти и поддерживает как OLAP, так и OLTP на одном и том же движке. Традиционные базы данных хранят данные на диске и, как правило, разделяют аналитические и транзакционные системы по соображениям производительности.

Для небольших транзакционных таблиц, часто объединяемых в группы, используйте построчное хранилище. Для больших аналитических таблиц, агрегированных таблиц и таблиц фактов используйте столбцовое хранилище, где сжатие и параллельное сканирование обеспечивают гораздо более высокую производительность чтения.

SAP HANA Cloud — это управляемая база данных как услуга (Database-as-a-Service). SAP HANA отвечает за установку обновлений, масштабирование и инфраструктуру, в то время как клиенты сосредотачиваются на данных и приложениях. Локальная HANA обеспечивает полный контроль над оборудованием, масштабированием и настройкой, но требует больших усилий по администрированию.

SAP HANA поставляется с библиотекой прогнозного анализа (PAL), автоматизированной библиотекой прогнозирования (APL) и поддержкой векторного механизма для встраивания данных. Модели обучаются и оцениваются непосредственно в базе данных, что исключает перемещение данных и позволяет применять ИИ в реальном времени к оперативным данным.

Да. SAP Агенты Joule и сторонние агенты LLM могут подключаться через интерфейсы HANA SQL, REST и Vector для извлечения, обобщения и анализа бизнес-данных, соблюдая при этом встроенные механизмы авторизации, маскирования и аудита.

Подведем итог этой публикации следующим образом: