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

Так как английский я знаю мало, а с HANA работал совсем немного — полагаю, будет весьма познавательно в обоих отношениях. Что ж, давайте начнем. Обещаю, будет интересно.

Оригинал статьи:

SAP HANA from Space Level

HANA — «Горячий пирог» на рынке (Прим. пер. — дата публикации статьи 14 сентября, 2015). Я услышал о HANA в начала этого десятилетия или может даже раньше. Сначала я думал, что это просто новая база данных и не мог понять почему такая суета вокруг всего этого? Мой извращенный разум говорил: «Может быть, SAP не хочет делиться рыночными доходами с любым другим поставщиком баз данных (конкурентами); поэтому они придумали свою собственную базу данных».

Позже, я думал, что HANA предназначена только для ребят из BI/BW и меня как абапера это не должно волновать. Все говорили о анализе и моделировании. Поэтому я думал пусть моделлеры из BI/BW и беспокоятся о HANA.

Затем на рынке пошел слух о том, что ABAP и абаперы как таковые вымрут в ближайшем будущем. Я рассудил так: если абапер исчезнет, то кто тогда во всей этой вселенной будет поддерживать те тонны и тонны ABAP кода, написанные в истории реализации SAP? Что произойдет со всеми этими затратами времени, усилий и денег, потраченными в этих больших и малых масштабах реализации SAP? Чепуха!!

Я потратил бОльше времени на поиски того, что такое HANA, чем на то, чтобы узнать что такое HANA на самом деле. Интернет полон информации, но найти правильные ответы для удовлетворения вашего любопытства это сложная задача.

У меня накопились некоторые глупые вопросы, но мне было немного неловко спрашивать экспертов. Поэтому я потратил много времени на то, чтобы выяснить, что такое HANA, и кому это вообще нужно?

Ниже представлены некоторые из вопросов, которые были у меня, и, я уверен, что у всех новичков в HANA они будут примерно такими же:

В. Необходимо ли знать SQL для начала изучения HANA?

В. Могу я изучить HANA без знания SAP BI/BW/BO?

В. Нужен ли опыт в ABAP чтобы начать изучать HANA?

В. HANA нужна функциональным консультантам или, может быть, техническим консультантам или специалистам по моделированию?

 

Читайте также: SAP HANA. Взгляд изнутри

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

В. Необходимо ли знать SQL для начала изучения HANA? (Будучи абапером, это был один из самых страшных для меня вопросов)

Ответ: Нет.

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

В. Могу я изучить HANA без знания SAP BI/BW/BO? (Я уверен, что этот вопрос беспокоит всех абаперов)

Ответ: Да.

BI — это реализация хранилища данных и пакета инструментов для их обработки, поставляемая SAP. Концепции хранилищ данных в BI помогут понять аспекты реализации хранилища в HANA. Но вам вовсе не обязательно это изучать.

Аналогично, BW (Business Information Warehouse) и BO (Business Objects) — это бизнес-склад и бизнес-объект соответственно. Если у вас есть опыт работы с BW, понимание концепции моделирования и передачи данных SAP Business Suite System в HANA станет для вас детской игрой. Но вы можете легко изучить концепцию моделирования HANA, даже если у нас нет знаний в BW.

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

Но, если у вас уже есть знания BI/BW/BO, тогда BW на HANA будет тем, на что вы должны ориентироваться (если вы планируете перейти на HANA).

В. Нужен ли опыт в ABAP чтобы начать изучать HANA?

Ответ: Нет.

Все о чем мы говорили выше относительно BI/BW/BO, также применимо и к ABAP.

Если вы программист SAP ABAP, то знание реализации бизнес-логики и модели будет полезна для вас. Вы должно быть уже слышали о SAP ABAP на HANA. Давайте немного остановимся на слухах об исчезновении абаперов. Так вот, с HANA, абапер будет более умным и востребованным.

В. HANA нужна функциональным консультантам или, может быть, техническим консультантам или специалистам по моделированию?

Ответ: Всем.

Как и любая другая технология, HANA также имеет разделение обязанностей, поэтому ответ на этот вопрос — «Всем». Вот некоторые из рабочих мест в HANA:

i) Администрирование и безопасность HANA

Наши нынешние ребята из SAP Basis/Security/GRC будут ближайшими родственниками сотрудников Администрирование и безопасность HANA.

ii) Репликатор данных HANA

Как и в обычном проекте внедрения SAP, у нас есть команда и есть эксперты по конверсиям и интерфейсам. Роль репликации данных HANA будет аналогична этой. Ребята из SAP BI/BO наиболее близки к этому. Они будут использовать такие сокращения, как SLT, BODS, DXC и т. д.

SLT = SAP Landscape Transformation
BODS = Business Objects Data Services
DXC = Direct eXtractor Connection

iii) Моделлер HANA

Гуру из SAP BW уже умеют моделировать, поэтому они ближе всего к SAP HANA Modelers.

iv) Разработчик приложений HANA

HANA XS или ABAP для HANA разработчиков.

Кроме того, у меня были некоторые другие любопытные вопросы, немного более технические:

В. HANA означает встроенную память. In-memory — RAW (ОЗУ). Мы все знаем, что оперативная память — это временная память. Означает ли это, что все данные будут потеряны при отключении питания или перезагрузка и т. д.

Ответ: Нет.

SAP, должно быть, подумал об этом еще до того, как они начали разработку. (Я не могу быть умнее SAP) Данные хранятся в ОЗУ, это правильно. Но при сбое питания по какой-либо причине данные не теряются. Здесь на помощь приходит концепция Persistent Storage.

Рис1- HANA

Рис2-HANA In-Memory

Транзакционные данные обновляются в лог-журнале при каждом коммите. Данные сохраняются в объеме данных каждые 300 секунд или в соответствии с настройками. Они создают точки сохранения.

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

В. SAP HANA утверждает, все работает очень быстро. На каком языке программирования она написана?

Ответ: Всемирно известный C++.🙂

В. Что такое операционная система SAP HANA?

Ответ: Suse Linux Server SPX & Red Hat linux Server 6.5

В. Еще один вопрос, который меня всегда беспокоил: если HANA это нечто связанное с ОЗУ, можем ли мы увеличить объем оперативной памяти традиционной базы данных и получить такую ​​же производительность, как HANA?

Ответ: Нет.

Мы бы определенно получили лучшую производительность, если бы увеличили объем оперативной памяти традиционной базы данных, но это было бы несовместимо с тем, что мы получаем в HANA. Но почему?

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

Рис3

In-memory хранилище (ОЗУ): обработка данных в ОЗУ в миллион раз быстрее, чем доступ к данным на жесткого диска. В практических сценариях это может быть примерно от 10x до 3600x раз быстрее. Кроме того, в сегодняшнем мире оперативная память — относительно не дорогая и доступная.

Общая информация: Время чтения в ОЗУ: 2 МБ/мс/ядро ​​(2 мегабайта в миллисекунду на ядро).

Таким образом, чтобы сканировать 1 ГБ данных, это примерно займет 0,5 с/ядро. Для 100 ГБ потребуется 50 с/ ядро. Если у вас 50 ядер в аппаратном обеспечении, сканирование данных объемом 100 ГБ займет всего 1 секунду. Ха!! Числа всегда проясняют ситуацию лучше, чем параграфы предложений. Не так ли?

Многоядерная архитектура, разбиение на разделы и огромная параллельная обработка: доступны серверы с одним узлом до 64 ядер (и даже больше). Таким образом, разделение данных на разные узлы и выполнение параллельного запроса — это инновация, которую HANA эффективно использует. Это прекрасный пример как аппаратного, так и программного обеспечения.

Столбцовое хранилище: непрерывное распределение памяти

Более быстрое чтение с последовательным доступом к памяти. Помните, что хранилище столбцов не только ускоряет чтение. HANA построил хранилище столбцов таким образом, что он эффективен как для операции READ, так и для WRITE.

Быстрая агрегация (как правило, агрегация является дорогостоящей операцией), а также поддержка параллельной обработки.

Поиск в хранилище столбцов должен быть быстрее хранилища строк (при условии, что вы выбираете только несколько наборов столбцов, а не все).

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

Идея следующая: удалить повторяющиеся данные, построить вектор для данных и указать его целым числом (и целое число дешевле, чем чтение строки).

В. Хорошо слышал достаточно о Column Storage в HANA. Но как же Column Storage ускоряет работу?

Ответ: хранилище столбцов разделено на три части:

i)   Основная

ii)  L2-Delta

iii) L1-Delta/cache

Сохраненные данные хранятся в основной памяти, все изменения буфера и транзакций хранятся в L2-Delta, а Вставки/Удаления/Обновления и т. д. в L1-Delta

Рис4

L1-Delta

— принимает все входящие запросы данных

— сохраняет записи в формате строк (оптимизируется с учетом записи)

• быстрая вставка и удаление

• быстрое обновление поля

• быстрая проекция записи

— отсутствие сжатия данных

— содержит от 10 000 до 100 000 строк на один узел

Рис5

L2-Delta

— второй этап жизненного цикла записи

— сохраняет записи в формате столбцов

— кодирование словаря для лучшего использования памяти

— неотсортированный словарь

• требует оптимальной структуры вторичных индексов шаблоны доступа к точкам поддержки

— хорошо подходит для хранения до 10 миллионов строк

Рис6

Основная часть

— окончательный формат данных

— сохраняет записи в формате столбцов

— максимальная степень сжатия

• отсортированный словарь

• позиции в словаре хранятся в бит-упакованном виде

• словарь также сжат

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

Вот некоторые из очевидных вопросов, которые есть почти у всех новичков в SAP HANA. Мне приходилось копаться в разных источниках, чтобы собирать эти понятия. Надеюсь, что вся эта информация в одном месте поможет вам лучше понять ее.

Обновления от читателей

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

От Lars Odegaard (Business Suite от менеджера проектов HANA при Cardinal Health)

«Пара пунктов для добавления — HANA — это Sybase RDBS, переработанная с in-memory колоночной архитектурой памяти, плюс добавленные модули памяти и хранилище (если говорить просто). HANA работает только на оборудовании, сертифицированном SAP, которое называется “appliance“ (прим. пер. англ. appliance — прибор, устройство). Все это создает мощный автономный сервер данных.

Во-вторых, для создания сверхбыстрой архитектуры доступа к данным поставщики оборудования, такие как IBM, HP (и другие), усиливают свою технику с помощью новейшей технологии, которая будет ускорять процессы обработки данных, такие как процессоры Haswell, наращивание памяти, и т.п.

Все это вместе создает революционное влияние на скорость ведения бизнеса, и компании пришли к выводу, что реорганизация бизнес-процессов является естественным продолжением после развертывания HANA. Вот почему мир в восторге от этого!»

Пожалуйста, следите за обновлениями о HANA. В следующем посте я покажу вам, как вы можете получить бесплатный доступ к облачной платформе SAP HANA. И  да, это бесплатно! Я уже вошел в нее и, так сказать, испачкал руки. Я играю с ней, используя Eclipse Studio. Не беспокойтесь, я подробно расскажу, как вам ее легко настроить.

Спасибо вам большое за ваше время!!