Як платформа SAP HANA працює з великими даними

Привіт, Хабр! У минулій статті ми розповіли про рішення для малого бізнесу SAP Business One і коротко згадали про можливості SAP HANA в галузі обчислень і аналітики. Сьогодні ми детальніше зупинимося на тому, як платформа SAP HANA може працювати з великими даними і на сценаріях застосування цих технологій у бізнесі.

SAP HANA: як це працює
Основним ядром у SAP HANA є компонент СУБД, що дозволяє обробляти великі обсяги даних за допомогою технології In-Memory на базі мовного інструменту SQL. В основі СУБД SAP HANA використовується реляційна модель даних, але також існує можливість звернення до даних за допомогою «графового» мови запитів WIPE. Гнучкість у виборі мови запитів обумовлена архітектурними можливостями SAP HANA і полягає у використанні єдиного уявлення даних в In-Memory сховище. Таким чином, у користувача є можливість звертання до даних за допомогою різних семантичних конструкцій, використовуючи при цьому єдину копію даних в пам'яті СУБД. Класичний підхід, прийнятий в ряді інших OpenSource СУБД, відрізняється від вищевказаного, тому що передбачає використання як мінімум двох сховищ даних і поділ способу зберігання графових структур і реляційних таблиць.


Малюнок 1. Концепція управління даними

На малюнку вище відображена загальна схема управління даними в SAP HANA і суть концепції управління за допомогою різних мов – зокрема, SQL і WIPE. Використовуючи движок Data Processing, можна сформувати на рівні Data Manipulation новий семантичний рівень для роботи з даними, але при цьому буде застосована єдина копія вихідних даних, що істотно підвищує можливості платформи SAP HANA для вирішення задач, де вимагається подання інформації у вигляді графових структур.

Технологія In-Memory в СУБД SAP HANA дозволяє зберігати й обробляти дані в пам'яті, використовуючи унікальні алгоритми[1], розроблені в компанії SAP і на базі платформи Intel x86. Нещодавно SAP також анонсувала підтримку платформи IBM Power для SAP Hana. Унікальність і висока швидкість обробки запитів до даних полягає в можливості їх зберігати і виконувати. Вони знаходяться в стислому вигляді в пам'яті RAM. Завдяки розробленим алгоритмом обробки даних в SAP HANA вдалося реалізувати підхід Unified Tables, який забезпечує високу швидкість читання і запису даних у таблицю поколоночного зберігання. Тому одним з головних переваг SAP HANA є можливість виконувати аналітичні запити відразу на транзакційних даних, які додаються в реальному часі. При цьому система автоматично бере на себе забезпечення прозорого доступу до даних. Таким чином, нові дані в таблиці відразу доступні для аналізу без попередньої обробки.


Малюнок 2. Архітектура концепції Unified Table

Архітектурно SAP HANA підтримує конфігурацію, в рамках якої у складі єдиної інстанції СУБД використовуються один обчислювальних вузлів (Scale-out див. Рис.3 і www.hanatutorials.com/p/scale-up-or-scale-out-hana-configuration.html). Така конфігурація особливо актуальна для задач по обробці великих масивів даних в режимі реального часу. Обробка запиту SQL в SAP HANA відбувається одночасно на всьому обсязі даних незалежно від місця розташування.


Малюнок 3. Конфігурація Scale-out HANA

На відміну від Hadoop Spark і Hadoop Hive, платформа SAP HANA дозволяє реалізувати більш швидкий і простий механізм завантаження даних і виконання запитів для великого обсягу структурованих даних за допомогою мови SQL.

При обробці великих масивів неструктурованих даних (наприклад, відео-та фотоматеріали) рекомендується використовувати можливість інтеграції SAP HANA і Hadoop Spark з допомогою інструменту HANA Vora, який представляє собою компактний варіант In-Memory СУБД, інтегрованої в Hadoop Spark.

Платформа SAP HANA пропонує також використовувати різні опції при виборі мови програмування для створення додатків в рамках нової концепції Bring your own language. Вбудований сервер додатків SAP HANA XS advanced дозволяє створювати незалежні контейнери додатків на базі мов JavaScript (движок Google V8 і Node.JS), Java (Tomcat Java), Python, Ruby, C++.

Розглянемо один із прикладів з області машинного навчання для задач розпізнавання і класифікації образів на основі бази зображень з допомогою Hadoop, а також потокових даних за допомогою компоненту SAP HANA Smart Data Streaming (див. Рис.4).


Малюнок 4. Архітектура системи контролю рухомих об'єктів на базі SAP HANA

При реалізації відео алгоритмів в SAP HANA можливо також використовувати популярні пакети Caffe, Theano, Torch, Tensorflow і переносити вже розроблені програми без змін у контейнери на базі HANA XS Advanced або середу Hadoop Spark.

У наступних статтях ми покажемо реальні приклади реалізації коду для завдань машинного навчання на платформі SAP HANA.

Приклади сценаріїв використання SAP HANA для роботи з великими даними в системах контролю рухомих об'єктів:

«Цифровий склад» на базі SAP HANA

Важливе завдання для великих дистриб'юторських компаній – це управління навантаженням і розвантаженням товарів, а також їх маршрутизацією для формування замовлень і підготовку до відправлення. Своєчасне відстеження товарів і навантажувачів, моніторинг і управління процесом навантаження і розвантаження дозволяє оперативно планувати і коригувати плани по підготовці товарів до відправлення, а також уникнути проблем з простоєм товару на складі.

Модель «цифрового складу», побудована на базі SAP HANA і компоненти для Smart Data Streaming, допомагає збирати інформацію про доступність засобів навантаження і розвантаження товару, інформацію про місцезнаходження, управляти персоналом з допомогою своєчасної коригування плану. Використання спеціалізованих датчиків дозволяє збирати інформацію про стан транспортувальної стрічки, робочих місць персоналу і відстежувати статус місць для вантаження і розвантаження товару.

На звичайних складах у процесі комплектації замовлення можливі помилки через людського фактора. Щоб мінімізувати це, в «цифровому складі» використовуються вбудовані можливості SAP HANA по розпізнаванню спеціалізованих міток у вигляді QR кодів. Мітки дозволяють автоматично визначати комплектацію замовлень і позиції товарів на основі коду замовлення та інформації про нього з SAP ERP.

Використовуючи SAP HANA та її можливості щодо аналізу інформації в режимі реального часу, компанії можуть побудувати систему для управління складом в режимі реального часу, яка буде враховувати зміни планів при обробці товарів та формуванні замовлень, дозволить знизити час простою товару і забезпечити адекватну завантаження персоналу.

Додатково в рамках SAP HANA з допомогою засобів прогнозної аналітики можна будувати аналіз даних на основі статистики про виконаних роботах з метою оптимізації процесу роботи складу.

«Цифрова парковка для автомобілів

Одна з важливих задач при управлінні міським рухом – це відстеження доступних паркувальних місць для контролю завантаження міських парковок. Спеціалізовані датчики, які встановлюються на парковках, можуть відслідковувати кількість вільних і зайнятих місць. Система контролю на базі SAP HANA Smart Data Streaming дозволяє в реальному часі відстежувати стан датчиків і управляти картою паркувальних місць.

Додатково, при використанні відеореєстраторів, для дотримання умов платного паркування можливо збирати інформацію про номери автомобілів і відстежувати статус паркування.

Цифрова система контролю якості доставки товарів

Управління і відстеження процесом доставки товару є важливим завданням для великих міських мереж доставки. У великих містах, в умовах обмеженого часу доставки великої кількості замовлень необхідно своєчасно реагувати на зміни в замовленнях і планувати доставку товарів з урахуванням мінливих вимог з боку клієнтів.
Інтеграція системи SAP HANA Smart Data Streaming допомагає обробити кілька мільйонів заявок на доставку товарів в хвилину і надалі з допомогою спеціалізованих інструментів своєчасно коригувати плани по доставці товарів у режимі реального часу.

Джерела

[1] Vishal Sikka, Franz Färber, Wolfgang Lehner, Sang Kyun, Thomas Peh, Christof Bornhövd «Efficient Transaction Processing in SAP HANA Database – The End of a Column Store Myth». SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data. Pages 731-742
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.