Комментарии по теме

«Ко­рре­кти­ро­вка таблиц базы данных с помощью ABAP»
Олег Точенюк:
Андрей а вам никто никогда не говорил, что обновлять таблицы базы данных SAP категорически запрещено, независимо от того чем обусловлены такие желания. Свои Z-таблицы, да сколько угодно, но......

База знаний

Вы можете подписаться на эту колонки этого автора, если авторизируетесь или зарегистрируетесь

Реализация потенциала SAP NetWeaver. Оптимизация ABAP для SAP HANA: три шага компании SAP

09 сентября 2013, 21:02

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

В этом отношении вопрос оптимизации ABAP для работы с SAP HANA подробно освещен в статье Яны Рихтер (Jana Richter) и Торстена Шнайдера (Thorsten Schneider), перевод которой мы бы хотели вам предложить в рамках этого блога.

В системах, основанных на ABAP, в т. ч. в SAP Business Suite, SAP NetWeaver BW и предложениях SAP, предоставляемых по запросу, содержится значительный объем критически важных для бизнеса данных. Вдобавок к этому, эти среды существенно выигрывают от ускоренной обработки и анализа (данных), поддерживаемых предлагаемой SAP технологией обработки данных в оперативной памяти – SAP HANA. Из этой статьи вы узнаете о состоящем из трех шагов подходе SAP к оптимизации сервера приложений SAP NetWeaver (SAP NetWeaver AS) ABAP для работы с базой данных SAP HANA.

ABAP – это составная часть сред клиентов и партнеров SAP. В системах, основанных на ABAP, в т. ч. в SAP Business Suite, SAP NetWeaver Business Warehouse (SAP NetWeaver BW) и предложениях SAP, предоставляемых по запросу, содержится значительный объем критически важных для бизнеса данных. Вдобавок к этому, эти среды существенно выигрывают от ускоренной обработки и анализа (данных), поддерживаемых предлагаемой SAP технологией обработки данных в оперативной памяти – SAP HANA. Но как SAP поддерживает функциональность SAP HANA для сред ABAP? И как она влияет на новые, а также на уже существующие клиентские разработки?
Для того чтобы ответить на эти вопросы, мы обратимся к состоящему из трех шагов подходу SAP к оптимизации сервера приложений SAP NetWeaver (SAP NetWeaver AS) ABAP для работы с базой данных SAP HANA. Этот подход основывается на обратной связи, полученной от клиентов и партнеров SAP, на концепции SAP "инновации без нарушения хода процессов" (“innovation without disruption”).


ABAP и SAP HANA: созданы друг для друга


Платформа SAP HANA объединяет ПО для вычислений в оперативной памяти и аппаратные средства от ведущих партнеров SAP. Добавление технологии SAP HANA к сертифицированным аппаратным средствам, обеспечивающим работу баз данных, позволяет не только существенно ускорить работу существующих приложений, но и разработать совершенно новые приложения, появление которых до того было невозможно.
Для того чтобы воспользоваться сильными сторонами SAP HANA, приложения следуют парадигме "от кода к данным", в которой логика вычисления императивно передается от сервера приложений к серверу базы данных. Затем база данных SAP HANA выполняет вычисления и отправляет результаты обратно, для использования в приложении. Этот процесс проиллюстрирован на Рис. 1.

Рисунок 1. Приложения, использующие SAP HANA, следуют парадигме "от кода к данным".

Операции над большими массивами данных могут выиграть от использования баз данных с технологией вычислений в оперативной памяти. При наличии в ландшафтах клиентов SAP основанных на ABAP обработки и анализа данных, добавление возможностей SAP HANA к SAP NetWeaver AS ABAP – это совершенно естественный ход (см. Рис. 2). Для того чтобы воспользоваться технологией вычислений в оперативной памяти с помощью SAP NetWeaver AS ABAP, операции, которым требуется высокопроизводительный доступ к большим массивам данных, можно передать в SAP HANA, в то время как операции, используемые для управления бизнес-процессами и их интеграции, остаются в SAP NetWeaver AS ABAP.

Рисунок 2. Операции над большими массивами данных – это идеальные кандидаты для использования с SAP HANA

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


Шаг №1: Обеспечение доступа к SAP HANA с помощью приложений, основанных на ABAP

Клиенты, использующие SAP NetWeaver AS ABAP, уже могут использовать SAP HANA. В версиях SAP NetWeaver AS ABAP 7.x приложения SAP NetWeaver AS ABAP, работающие на традиционных базах данных (например, IBM DB2, SAP MaxDB или Oracle) имеют доступ к базе данных SAP HANA с помощью соединения со вторичной базой данных (см. Рис. 3).

Рисунок 3. SAP HANA доступна как вторичная база данных.

Эта возможность поддерживает параллельные (side-by-side) сценарии, в которых выбранные данные копируются из первичной базы данных во вторичную базу данных SAP HANA. Затем SAP NetWeaver AS ABAP и соответствующее приложение (например, SAP ERP) может считывать данные из базы данных SAP HANA и делегировать ей проведение вычислений, используя соединение со вторичной базой данных.
С помощью соединения со вторичной базой данных клиенты могут извлекать преимущества из SAP HANA, не внося каких бы то ни было изменений в первичную базу данных. В частности, такой подход позволяет реализовывать сценарии использования акселераторов SAP HANA, которые пользуются SAP HANA для улучшения производительности конкретных процессов, которыми управляют в приложениях SAP Business Suite при больших объемах вовлеченных в работу данных.


Шаг №2: Эксплуатация ABAP на основе SAP HANA


В версии SAP NetWeaver AS ABAP 7.3 базу данных SAP HANA можно использовать для обеспечения неизменности (persistence) первичных данных и для поддержки аналитических сценариев использования, в которых данные можно анализировать в соответствии с требованиями отчетности данного бизнес-сектора. SAP внедрила такую поддержку, введя связку SAP NetWeaver BW и SAP HANA, которая предполагает, что SAP NetWeaver BW использует SAP HANA в качестве базы данных с вычислениями в оперативной памяти (см. Рис. 4).

Рисунок 4. SAP HANA можно использовать для обеспечения неизменности первичных данных в SAP NetWeaver BW

Использование SAP NetWeaver BW в сочетании с SAP HANA дает вам ряд преимуществ. С помощью SAP HANA компании могут добиться оптимизированной производительности при обработке запросов без SAP NetWeaver BW Accelerator, помогая клиентам и партнерам снизить совокупную стоимость владения своего решения по организации хранилищ данных. SAP HANA может помочь ускорить процессы извлечения, трансформации и загрузки (ETL) и упростить моделирование данных, поскольку для SAP HANA требуется меньшее число материализованных слоев.


Шаг №3: Оптимизация ABAP под SAP HANA


В будущем SAP планирует доработать и другие решения, в частности, приложения SAP Business Suite, чтобы в них SAP HANA использовалась для обеспечения неизменности первичных данных. SAP также планирует внести в SAP NetWeaver AS ABAP усовершенствования, которые будут поддерживать SAP HANA как базу данных, лежащую в основе сценариев использования транзакций. Кроме того, SAP намеревается содействовать более глубокой интеграции разработки ABAP и SAP HANA, чтобы дать разработчикам SAP, а равно и клиентам, разрабатывающим пользовательские приложения, возможность с большей простотой использовать сильные стороны SAP HANA в рамках логики приложений.
Перенеся решения, основанные на SAP NetWeaver AS ABAP, в базу данных SAP HANA и используя эту базу данных для обеспечения неизменности первичных данных, клиенты могут снизить совокупную стоимость владения своих ландшафтов в целом. Например, больше не потребуется репликация (данных) во вторичные базы данных, и акселераторы SAP HANA можно будет эксплуатировать локально. С помощью оперативных данных, находящихся в SAP HANA, клиенты могут выполнять отчетность ad hoc поверх своих приложений, чтобы повысить производительность при подготовке оперативных отчетов.
По мере того как возрастает поддержка функционирования SAP NetWeaver AS ABAP с SAP HANA, появляются и совершенно новые приложения – например, в областях управления стимулированием сферы торговли и управления противодействием мошенничеству, – которые сочетают в себе как функции по выполнению транзакций, так и аналитические функции. С учетом этой тенденции, граница между OLTP и OLAP со временем будет размываться. Клиенты и партнеры смогут разрабатывать эти виды гибридных решений поверх SAP NetWeaver AS ABAP, оптимизированного для использования с SAP HANA.

Рисунок 5. SAP NetWeaver AS ABAP будет оптимизирован для работы с SAP HANA

Пакет расширения для SAP NetWeaver AS ABAP 7.3

Исходной точкой для разработки пакета расширения 7.4 для SAP NetWeaver AS ABAP является версия SAP NetWeaver AS ABAP 7.3. Все исправления и непрерывные усовершенствования для версии 7.3 доступны в пакете расширения 7.4. Этот пакет расширений полностью совместим с SAP NetWeaver AS ABAP 7.3, и новые приложения, эксплуатируемые поверх SAP NetWeaver AS ABAP, при переходе на 7.4 будут по-прежнему эксплуатироваться без нарушений.


Оптимизации для базы данных SAP HANA


Благодаря новому пакету расширений для SAP NetWeaver AS ABAP, клиенты и партнеры смогут использовать рабочие продукты (artifacts) и возможности SAP HANA прямо в ABAP на основе опыта интеграции разработки и управления жизненным циклом. В рамках первого шага выполнение действий, относящихся к базе данных, будет перенесено в SAP HANA. Например, запросы о совпадениях между таблицами будут выполняться в базе данных SAP HANA, а не с помощью внутренних таблиц в SAP NetWeaver AS ABAP. Планируется введение следующих инноваций:

  • Доступ к ракурсам (views) SAP HANA через ABAP Data Dictionary;
  • Интеграция SQL Script и процедур работы с базами данных в ABAP;
  • Разделы исходного кода, относящегося к SAP HANA;
  • Расширенный набор инструментов для анализа эффективности и проверки кода с особым вниманием к SAP HANA;
  • Перенос рабочих продуктов SAP HANA с помощью запросов на транспортировку ABAP;

Планируемая поддержка разработчиков


В дополнение к подходу, описанному в данной статье, доступны расширения для разработчиков, которые позволяют повысить производительность и улучшить качество разработок ABAP. К их числу относятся:

  • Улучшенная среда разработок. С помощью инструментов разработок ABAP для SAP NetWeaver компания SAP предлогает ультрасовременную, основанную на Eclipse среду разработок для ABAP [1]. Эта среда тесно интегрирована с SAP HANA studio и позволяет разработчикам внедрять сквозные приложения с использованием оперативной памяти в рамках единой среды.
  • Каналы поддержки разработчиков. Цель SAP – предоставить клиентам и партнерам разнообразные средства поддержки как для внедрения описанных инноваций, так и для общей интеграции SAP HANA и разработки ABAP. К числу этих каналов поддержки разработчиков относятся публикации, документация, передовой опыт, ссылочные приложения, учебно-экспериментальные системы ("песочницы") / пробные версии и активное онлайн-сообщество.

Хотя эти усовершенствования являются дополнениями к оптимизации работы SAP NetWeaver AS ABAP с помощью SAP HANA, SAP открывает к ним доступ независимо от расширений SAP HANA.


Глядя в будущее


ABAP с нами надолго. В то же время, такие технологические направления, как вычисления в оперативной памяти, по-прежнему дают клиентам и партнерам возможность получить преимущество перед конкурентами за счет более мощной технологии и реагировать на новые потребности бизнеса. Для того чтобы обогатить экосистему SAP преимуществами инновации, не нарушая при этом течение критически важных бизнес-процессов, компания SAP непрерывно обновляет SAP NetWeaver AS ABAP и организоввывает совместное рабочее пространство с группами пользователей, чтобы гарантировать, что клиенты и партнеры смогут безболезненно адаптироваться к предстоящим изменениям кода. При наличии поддержки таких технологий, как SAP HANA в SAP NetWeaver AS ABAP, вы можете извлечь пользу из последних тенденций, не жертвуя своими инвестициями в разработки на ABAP. Вам не нужно выбирать: вы можете получить все сразу. Для того чтобы получить дополнительную информацию, обратитесь к интернет-ресурсу: http://scn.sap.com/community/abap-for-hana.

______

[1]  Для того чтобы получить дополнительную информацию об основанной на Eclipse среде для ABAP, обратитесь к статье Карла Кесслера (Karl Kessler).

Яна Рихтер (Jana Richter)

(jana.richter@sap.com)

работает в SAP NetWeaver Product Management в Валльдорфе (Walldorf), Германия. Она пришла в SAP десять лет назад, и с 2011 года занимается проблемами SAP NetWeaver AS ABAP. Ранее она отвечала за ускоренную поставку приложений и за возможности портал SAP NetWeaver.

Торстейн Шнайдер (Thorsten Schneider)

(thorsten.schneider@sap.com)

работает в SAP NetWeaver Product Management в Валльдорфе (Walldorf), Германия. Он пришел в компанию SAP в 1997 году, и до того, как занял свою нынешнюю должность, выполнял различные роли в области разработки и консультирования.