SAP HANA Archiтектура, Ландшафт, Калибровка: Полное руководство

База данных SAP HANA — это платформа управления данными, ориентированная на основную память. База данных SAP HANA работает на SUSE Linux Enterprises Server и основан на языке C++.

База данных SAP HANA может быть распределена на несколько компьютеров.

Преимущества SAP HANA указаны ниже:

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

База данных SAP HANA состоит из набора механизмов обработки в памяти. Механизм вычислений является основным механизмом обработки в памяти. SAP HANA. Он работает с другим механизмом обработки, таким как механизм реляционной базы данных (движок строк и столбцов), механизм OLAP и т. д.

Таблица реляционной базы данных находится в хранилище столбцов или строк.

Для таблицы SAP HANA существует два типа хранения.

  1. Хранение типа строки (для таблицы строк).
  2. Хранение типа столбца (для таблицы столбцов).

Текстовые данные и данные графика находятся в Text Engine и Graph Engine соответственно. В базе данных SAP HANA есть еще несколько механизмов. Данные разрешено хранить в этих механизмах до тех пор, пока доступно достаточно места.

SAP HANA Archiтекстура

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

Когда в SAP HANA достигается предел основной памяти, все неиспользуемые объекты базы данных (таблица, представление и т. д.) будут выгружены из основной памяти и сохранены на диск.

Имена этих объектов определяются семантикой приложения и перезагружаются в основную память с диска, когда они снова потребуются. В обычных обстоятельствах база данных SAP HANA автоматически управляет выгрузкой и загрузкой данных.

Однако пользователь может загружать и выгружать данные из отдельной таблицы вручную, выбрав таблицу в Студия SAP HANA в соответствующей схеме — щелкнув правой кнопкой мыши и выбрав опцию «Выгрузить/Загрузить».

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

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

    SAP HANA Archiтекстура

  1. Индексный сервер SAP HANA Главный сервер базы данных SAP HANA является индексным сервером. Детали каждого сервера приведены ниже:
  • Это основной компонент базы данных SAP HANA.
  • Он содержит фактические хранилища данных и механизм обработки данных.
  • Индексный сервер обрабатывает входящие SQL или оператор MDX.

Ниже приведена archiСтруктура индексного сервера.

SAP HANA Archiтекстура

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

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

    Этот сервер используется в анализе текста и извлекает данные из текста при использовании функции поиска.

    1. Name Server

    Этот сервер содержит всю информацию о системном ландшафте. В распределенном сервере сервер имен содержит информацию о каждом работающем компоненте и местоположении данных на сервере. Этот сервер содержит информацию о сервере, на котором существуют данные.

    1. Статистический сервер

    Статистический сервер отвечает за сбор данных, связанных с состоянием, распределением/потреблением ресурсов и производительностью системы SAP HANA.

    1. XS-сервер

    XS-сервер содержит XS Engine. Это позволяет внешним приложениям и разработчикам использовать базу данных SAP HANA через клиент XS Engine. Внешнее клиентское приложение может использовать HTTP для передачи данных через механизм XS на HTTP-сервер.

    SAP HANA Ландшафт

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

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

    Ниже представлены SAP HANA In.novaв области аппаратного/программного обеспечения.

    SAP HANA Ландшафт

    В SAP HANA существует два типа реляционных хранилищ данных: хранилище строк и хранилище столбцов.

    Магазин Ряд

    • Это то же самое, что и традиционная база данных, например (Oracle, SQL-сервер). Единственное отличие состоит в том, что все данные хранятся в области хранения строк в памяти SAP HANA, в отличие от традиционной базы данных, где данные хранятся на жестком диске.

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

    • Хранилище столбцов является частью базы данных SAP HANA и управляет данными в виде столбцов в памяти SAP HANA. Таблицы столбцов хранятся в области хранилища столбцов. Хранилище столбцов обеспечивает хорошую производительность операций записи и в то же время оптимизирует операцию чтения.

    Производительность операций чтения и записи оптимизирована с использованием двух структур данных.

    SAP HANA Ландшафт

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

    Основное хранилище содержит основную часть данных. В основном хранилище для сжатия данных с целью экономии памяти и ускорения поиска применяется подходящий метод сжатия данных (кодирование по словарю, кластерное кодирование, разреженное кодирование, кодирование длины серии и т. д.).

    • В основной памяти операции записи сжатых данных будут дорогостоящими, поэтому операции записи не изменяют непосредственно сжатые данные в основной памяти. Вместо этого все изменения записываются в отдельную область хранилища столбцов, известную как «Delta Место хранения."
    • Delta хранилище оптимизировано для операции записи и использует обычное сжатие. Операции записи не разрешены в основной памяти, но разрешены в delta хранилище. Операции чтения разрешены в обоих хранилищах.

    Мы можем вручную загрузить данные в основную память с помощью опции «Загрузить в память» и выгрузить данные из основной памяти с помощью опции «Выгрузить из памяти», как показано ниже.

    SAP HANA Ландшафт

    Delta Хранилище

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

    Когда мы хотим переместить эти изменения в основное хранилище, используйте «delta операция слияния» из студии SAP HANA, как показано ниже:

    SAP HANA Ландшафт

    • Цель delta Операция слияния заключается в перемещении изменений, которые собираются в delta хранилище в основное хранилище.
    • После выполнения Delta Операция слияния в таблице столбцов SAP, содержимое основного хранилища сохраняется на диске, а сжатие пересчитывается.

    Процесс перемещения данных из Delta в основное хранилище во время delta слияние

    SAP HANA Ландшафт

    Eсть buffer магазин (L1-Delta), который является хранилищем строк. Таким образом, в SAP HANA таблица столбцов действует как хранилище строк из-за L1-delta.

    1. Пользователь запускает запрос на обновление/вставку таблицы (физический оператор — операторы SQL).
    2. Данные сначала поступают в L1. Когда L1 перемещает данные дальше (L1 — незафиксированные данные)
    3. Затем данные поступают в L2-delta buffer, который ориентирован по столбцам. (L2- зафиксированные данные)
    4. Когда L2-delta процесс завершен, данные передаются в основное хранилище.

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

    Например, ниже приведена таблица на основе строк:

    SAP HANA Ландшафт

    Данные таблицы хранятся на диске в линейном формате, поэтому ниже приведен формат хранения данных на диске для таблицы строк и столбцов:

    В памяти SAP HANA эта таблица хранится в хранилище строк на диске в формате:

    SAP HANA Ландшафт
    Адрес памяти

    А в столбце данные хранятся на диске как –

    SAP HANA Ландшафт

    Адрес памяти

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

    Таким образом, хранилище столбцов имеет преимущество экономии памяти.

    SAP HANA Ландшафт

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

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

    Основным важным компонентом определения размера является память, а вторым важным компонентом определения размера является процессор. Третий основной компонент — диск, но его размер полностью зависит от памяти и процессора.

    При внедрении SAP HANA одной из важнейших задач является определение правильного размера сервера в соответствии с бизнес-требованиями.

    База данных SAP HANA отличается по размеру от обычной СУБД с точки зрения -

    • Требования к основной памяти для SAP HANA (размер памяти определяется метаданными и данными транзакций в SAP HANA)
    • Требования к ЦП для SAP HANA (прогноз ЦП неточен).
    • Требуемое дисковое пространство для SAP HANA (рассчитывается для сохранения данных и регистрации данных)

    ЦП сервера приложений и память сервера приложений остаются неизменными.

    Для расчета размеров SAP предоставила различные рекомендации и методы расчета правильного размера.

    Мы можем использовать метод ниже:

    1. Определение размеров с использованием отчета ABAP.
    2. Определение размера с использованием сценария БД.
    3. Изменение размера с помощью инструмента Quicksizer Tool.

    При использовании инструмента Quicksizer требование будет отображаться в следующем формате:

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