SAP R/3 Системное администрирование
Шрифт:
► Атомарность (Atomic)
LUWs составляют элементарную единицу работы. LUW может выполняться только целиком.
► Непротиворечивость (Consistent)
LUW переводит непротиворечивую БД в новое непротиворечивое состояние, т. е. после выполнение LUW достигается корректное состояние.
► Изолированность (Isolated)
LUW выполняются независимо друг от друга. Они могут работать параллельно. Если несколько LUW пытаются работать с одними и теми же ресурсами, то они могут сделать это только при последовательном выполнении.
► Долговечность (Durable)
Результаты успешно выполненных LUW сохраняются и хранятся постоянно. Например, на результат не влияют возможные системные ошибки.
Для удовлетворения этих требований необходим сервер блокировок. Запросы блокировок, генерируемые
Служба шлюза
Каждой инстанции SAP R/3 для выполнения задач вне локальной инстанции необходима также служба шлюза (Gateway Service). Она включает в себя:
► Коммуникации между разными системами SAP R/3
► Удаленный вызов функции (RFC — Remote Function Call)
► Интерфейс программирования коммуникаций (CPI-C — Common Programming Interface for Communications)
► Соединения с внешними системами, такими как серверы MAPI, системы электронного обмена данными EDI, внешние факсимильные устройства и службы телекса
Один процесс шлюза существует в каждой инстанции. Он активизируется автоматически при запуске инстанции. Помощь администратора в данном случае не нужна.
Таблица 1.2. Правила для типов и числа процессов SAP R/3 на уровне приложений
Служба | В масштабе системы R/3 | Для каждой инстанции R/3 |
Диалог (Dialog) | >=2 | >=2 |
Обновление (Update) | >=1 | >=0 |
Блокировка (Enqueue) | 1 | 0 или 1 |
Фоновое выполнение (Batch) | >=1 | >=0 |
Сообщения (Message) | 1 | 0 или 1 |
Шлюз (Gateway) | >=1 | 1 |
Спул (Spool) | >=1 | >=0 |
Сервер сообщений постоянно получает сведения о том, какие именно инстанции и службы доступны в данный момент. Это своего рода управляющий модуль системы. При отказе сервера сообщений система SAP R/3 функционировать не сможет. В каждой инстанции роль управляющего звена играет планировщик. При его отказе инстанция прекращает работу. В то же время, если отказывает рабочий процесс, планировщик может запустить новый. Каждый рабочий процесс способен выполнять любую задачу (они не являются специализированными). На основе заданных администратором SAP R/3 настроек планировщик определяет задачу для рабочего процесса. Для выполнения задач администратор должен знать, какие требования ему нужно задать в системе SAP R/3. Их необходимо определить на этапе технической реализации системы SAP R/3. На последующих стадиях решаются вопросы, относящиеся к расширению системы или совершенствованию уже созданной конфигурации.
Одна из основных обязанностей администратора системы R/3 — настройка производительности работы системы на уровне приложений. Он должен решить, какое число инстанций и процессов выполняется в системе, определить их тип, размер области памяти для каждой инстанции, а также другие устанавливаемые параметры и характеристики. Возможные параметры настройки системы SAP R/3, особенно на уровне приложений, могут быть очень сложными. В централизованных системах (т. е. когда уровень приложений состоит только из одной инстанции) нужно задать конфигурацию областей памяти и определить число процессов. Оперативная память используется
Уровень базы данных в системе SAP R/3 реализуется на центральном компьютере с использованием центральной РСУБД. В данном разделе уровень БД в системе SAP R/3 рассматривается подробнее. Здесь поясняется, как используется РСУБД для целей R/3 и с какими работами по администрированию это связано.
Рис. 1.9. Интерфейс базы данных
Native SQL и Open SQL
На рис. 1.9 показаны интерфейсы между РСУБД и рабочими процессами. Уровни приложений и БД взаимодействуют друг с другом исключительно через SQL. Несмотря на стандарты SQL, каждая поддерживаемая SAP R/3 РСУБД предлагает свой собственный диалект SQL. Для обеспечения максимальной независимости от специфических для каждой версии и производителя расширений и модификаций рабочие процессы SAP R/3 обычно поддерживают только интерфейс Open SQL. АВАР Open SQL соответствует стандарту SQL2 (Entry Level). При необходимости в интегрированном с рабочими процессами интерфейсе язык Open SQL преобразуется в Native SQL — собственный SQL РСУБД. Специальные средства языка SQL, реализованные в РСУБД, можно также использовать в программах АВАР. Средства языка зависят от конкретного производителя, а модули инкапсулируются в приложения SAP R/3. Их использование сводится к уровню «абсолютной необходимости». Между тем, существуют подходящие области для применения подобных средств. Это специальные приложения, такие как мониторы баз данных. Для инкапсуляции операторов Native SQL в программы АВАР используется следующая конструкция:
Типы таблиц
Данные хранятся в таблицах РСУБД. Все данные приложения однозначно (1:1) отображаются в прозрачных таблицах. Теоретически к ним можно обращаться с помощью других инструментов SQL или инструментальных средств конкретного производителя. С технической точки зрения административные данные системы SAP R/3 также хранятся в таблицах. Хотя это таблицы других типов, для РСУБД они все равно остаются таблицами. Иногда несколько небольших таблиц группируются в SAP R/3 в одну таблицу РСУБД. Для SAP R/3 такая таблица-контейнер называется пулом таблиц. Таблицы в пуле видимы только для системы SAP R/3. Основное преимущество данных пулов состоит в уменьшении общего числа таблиц для РСУБД. Индивидуальные таблицы в табличном пуле идентифицируются по уникальным именам и специальным ключам записей. Поскольку в этих таблицах используются индивидуальные структуры и методы хранения, это осложняет доступ к ним без применения средств SAP R/3. Таблица АТАВ может служить примером типичного пула таблиц. Она содержит несколько управляющих таблиц SAP R/3, которые невелики по размеру, а их содержимое относительно постоянно. Это означает, что возможна буферизация всего пула таблиц.
Кластеры
Аналогичный случай представляют кластеры таблиц и логические таблицы кластера. Таблицы кластера не существуют в РСУБД как независимые таблицы. Несколько таблиц кластера группируются в кластер таблиц, который обычно называют просто кластером. Обычно несколько строк таблицы кластера группируются в запись кластера с общим ключом. В отличие от пула таблиц, где запись присваивается записи в пуле, здесь запись состоит из нескольких записей в таблице кластера. При этом осуществляется конкатенация записей, к которым добавляется ключ кластера. В основном, этот метод применяется для документирования.