SAP HANA Architecture, LandScape, Sizing: полное руководство

Содержание:

Anonim

База данных 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
  • SAP HANA Пейзаж
  • Размер SAP HANA

Архитектура SAP HANA

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

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

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

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

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

  1. Индексный сервер
  2. Сервер препроцессора
  3. Сервер имен
  4. Сервер статистики
  5. Двигатель XS

  1. Сервер индексации SAP HANA

    База данных SAP HANA Основным сервером является индексный сервер. Подробная информация о каждом сервере приведена ниже:

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

Ниже представлена ​​архитектура сервера индексирования.

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

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

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

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

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

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

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

    1. XS Сервер

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

    SAP HANA Пейзаж

    «HANA» означает High Performance Analytic Appliance - это комбинация аппаратной и программной платформы.

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

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

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

    Рядный магазин

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

    Колонка Store

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

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

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

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

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

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

    Дельта-хранилище

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

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

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

    Процесс перемещения данных из дельты в основное хранилище во время дельта-слияния

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

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

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

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

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

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

    Адрес памяти

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

    Адрес памяти

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

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

    Размер SAP HANA

    Определение размера - это термин, который используется для определения требований к оборудованию для системы SAP HANA, например ОЗУ, жесткому диску, ЦП и т. Д.

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

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

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

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

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

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

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

    1. Определение размеров с использованием отчета ABAP.
    2. Калибровка с использованием скрипта БД.
    3. Размер с помощью Quicksizer Tool.

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