База даних 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.
- Зберігання рядкового типу (для таблиці рядків).
- Зберігання типу стовпця (для таблиці стовпців).
Текстові дані та дані графіків знаходяться у Text Engine та Graph Engine відповідно. У базі даних SAP HANA є ще кілька механізмів. Дані дозволяється зберігати в цих двигунах, поки є достатньо місця.
У цьому підручнику ви дізнаєтесь-
- Архітектура SAP HANA
- SAP HANA Пейзаж
- Розмір SAP HANA
Архітектура SAP HANA
Дані стискаються різними методами стиснення (наприклад, кодування словника, кодування довжини циклу, розріджене кодування, кодування кластера, непряме кодування) у сховищі стовпців SAP HANA.
Коли в SAP HANA буде досягнуто обмеження основної пам'яті, цілі об'єкти бази даних (таблиця, подання тощо), які не використовуються, будуть вивантажені з основної пам'яті та збережені на диск.
Ці імена об'єктів визначаються семантично і перезавантажуються в основну пам'ять з диска, коли це потрібно знову. За звичайних обставин база даних SAP HANA автоматично управляє вивантаженням та завантаженням даних.
Однак користувач може завантажувати та вивантажувати дані з окремої таблиці вручну, вибираючи таблицю у студії SAP HANA у відповідній схемі, клацаючи правою кнопкою миші та вибираючи опцію "Вивантажити / Завантажити".
Сервер SAP HANA складається з
- Індексний сервер
- Сервер попереднього процесора
- Сервер імен
- Сервер статистики
- Двигун XS
- Індексний сервер SAP HANA
Основним сервером бази даних SAP HANA є індексний сервер. Деталі кожного сервера наведені нижче -
- Це основний компонент бази даних SAP HANA
- Він містить фактичні сховища даних та механізм обробки даних.
- Сервер Index обробляє вхідні оператори SQL або MDX.
Нижче наведена архітектура Index Server.
Огляд сервера індексів SAP HANA
- Сервер попереднього процесора
Цей сервер використовується для аналізу тексту та витягує дані з тексту, коли використовується функція пошуку.
- Сервер імен
Цей сервер містить всю інформацію про системний ландшафт. У розподіленому сервері сервер імен містить інформацію про кожен запущений компонент та розташування даних на сервері. Цей сервер містить інформацію про сервер, на якому існують дані.
- Сервер статистики
Сервер статистики відповідає за збір даних, що стосуються стану, розподілу / споживання ресурсів та продуктивності системи SAP HANA.
- Сервер XS
Сервер XS містить механізм XS. Це дозволяє зовнішнім програмам та розробникам використовувати базу даних SAP HANA через клієнт XS Engine. Зовнішній клієнтський додаток може використовувати HTTP для передачі даних через механізм XS для сервера HTTP.
SAP HANA Пейзаж
"HANA" означає високоефективний аналітичний пристрій - це поєднання апаратної та програмної платформи.
- Через зміну архітектури комп'ютера, більш потужний комп'ютер доступний з точки зору процесора, оперативної пам'яті та жорсткого диска.
- SAP HANA - це рішення для вузького місця в роботі, при якому всі дані зберігаються в основній пам'яті і не потрібно часто передавати дані з дискового вводу-виводу в основну пам'ять.
Нижче наведено інновації SAP HANA у галузі обладнання / програмного забезпечення.
У SAP HANA існує два типи реляційних сховищ даних: Магазин рядків і Магазин стовпців.
Рядовий магазин
- Це те саме, що традиційна база даних, наприклад (Oracle, SQL Server). Єдина відмінність полягає в тому, що всі дані зберігаються в області зберігання рядків у пам’яті SAP HANA, на відміну від традиційної бази даних, де дані зберігаються на жорсткому диску.
Магазин стовпців
- Зберігання стовпців є частиною бази даних SAP HANA і управляє даними стовпчасто в пам'яті SAP HANA. Таблиці стовпців зберігаються в зоні зберігання стовпців. Зберігання стовпців забезпечує хорошу продуктивність операцій запису і одночасно оптимізує операцію читання.
Ефективність операцій читання та запису оптимізована з нижчою двома структурами даних.
Основне сховище
Основне сховище містить основну частину даних. У основному сховищі застосовується відповідний метод стиснення даних (кодування словника, кластерне кодування, розріджене кодування, кодування довжини циклу тощо) для стиснення даних з метою економії пам'яті та прискорення пошуку.
- В основному сховищі операції запису над стисненими даними будуть дорогими, тому операція запису безпосередньо не змінює стиснуті дані в основному сховищі. Натомість усі зміни записуються в окрему область у сховищі стовпців, відому як "Delta Storage".
- Зберігання Delta оптимізовано для операції запису та використовує звичайне стиснення. Операції запису заборонені на основному сховищі, але дозволено на дельта-сховищі. Операції зчитування дозволені в обох сховищах.
Ми можемо вручну завантажувати дані в основну пам'ять за допомогою опції "Завантажити в пам'ять", а Вивантажувати дані з основної пам'яті за допомогою опції "Вивантажити з пам'яті", як показано нижче.
Delta Storage
Дельта-сховище використовується для операції запису і використовує базове стиснення. Усі неотримані зміни в таблиці даних стовпців, що зберігаються в дельта-сховищі.
Коли ми хочемо перенести ці зміни в основне сховище, використовуйте "операцію дельта-злиття" із студії SAP HANA, як показано нижче -
- Метою операції злиття дельта є переміщення змін, які збираються у дельта-сховищі до основного сховища.
- Після виконання операції Delta Merge над таблицею стовпців sap вміст основного сховища зберігається на диску та перераховується стиснення.
Процес переміщення даних з дельти в основний сховище під час злиття дельти
Існує буфер (L1-Delta), який є рядковим сховищем. Тож у SAP HANA таблиця стовпців діє як сховище рядків завдяки L1-дельта.
- Користувач запускає запит оновлення / вставки в таблиці (Фізичний оператор - це оператори SQL.).
- Дані спочатку надходять до L1. Коли L1 переміщує дані далі (L1- Незафіксовані дані)
- Потім дані надходять у буфер L2-дельта, який орієнтований на стовпці. (L2 - Указані дані)
- Коли процес L2-дельта завершено, дані надходять до основного сховища.
Отже, зберігання стовпців оптимізовано як для запису, так і для читання завдяки L1-Delta та основному сховищу відповідно. L1-Delta містить усі незафіксовані дані. Передані дані переміщуються до Головного магазину через L2-Delta. Дані з основного сховища надходять на рівень персистенції (стрілка, що вказує тут, є фізичним оператором, який надсилає виписку SQL у сховище стовпців). Після обробки виписки SQL у сховищі стовпців дані надходять на рівень стійкості.
Наприклад, нижче таблиця на основі рядків
Дані таблиці зберігаються на диску в лінійному форматі, тому нижче наведено формат, як дані зберігаються на диску для таблиці рядків і стовпців -
У пам'яті SAP HANA ця таблиця зберігається у Row Store на диску у форматі -
Адреса пам'яті
А в стовпці дані зберігаються на диску як -
Адреса пам'яті
Дані зберігаються в стовпці у лінійному форматі на диску. Дані можна стискати за допомогою техніки стиснення.
Отже, Column store має перевагу в економії пам’яті.
Розмір SAP HANA
Розмір - це термін, який використовується для визначення вимог до обладнання для системи SAP HANA, таких як оперативна пам’ять, жорсткий диск, процесор тощо.
Основним важливим компонентом розміру є пам'ять, а другим важливим компонентом розміру є процесор. Третім основним компонентом є диск, але розмір повністю залежить від пам'яті та центрального процесора.
У реалізації SAP HANA одним з найважливіших завдань є визначення правильного розміру сервера відповідно до бізнес-вимог.
БД SAP HANA відрізняються за розмірами від звичайних СУБД з точки зору -
- Основні вимоги до пам'яті для SAP HANA (Розмір пам'яті визначається метаданими та даними транзакцій у SAP HANA)
- Вимоги до процесора для SAP HANA (прогнозований процесор оцінюється неточно).
- Вимога до дискового простору для SAP HANA (розраховується для збереження даних та для реєстрації даних)
ЦП сервера додатків і пам'ять сервера додатків залишаються незмінними.
Для розрахунку розміру SAP надав різні рекомендації та методи для розрахунку правильного розміру.
Ми можемо використати нижче метод-
- Розмір за допомогою звіту ABAP.
- Розмір за допомогою сценарію DB.
- Розміри за допомогою інструмента Quicksizer.
За допомогою інструменту Quicksizer Вимога відображатиметься у форматі нижче -