Импорт, экспорт и обновление данных в Rational Focal Point

Обзор методов работы с большим объемом сложных данных

Импорт, экспорт и обновление больших объемов данных в IBM Rational Focal Point ― важные, но ресурсоемкие операции. Эта статья содержит описание различных методов и принципов выполнения таких операций.

Картикеян Дакшинамурти, Старший инженер-программист, IBM

Фото автораКартикеян Дакшинамурти (Karthikeyan Dakshinamurthy) работает архитектором по интеграции в группе разработчиков Rational Focal Point в Бангалоре (Индия). Он возглавлял проекты по проектированию и разработке средств интеграции Rational Focal Point с приложениями Rational Collaborative Lifecycle Management. Его широкий опыт включает работу в ИТ-компаниях в качестве разработчика, руководителя группы и архитектора программного обеспечения на основе различных продуктов семейства IBM Rational.



Сриджит Нишант, инженер-программист и консультант, IBM

Фото автораСриджит Нишант (Sreejith Nishanth) — ведущий разработчик группы разработки Rational Focal Point в Бангалоре. Он работает в этой группе последние пять лет. В этой роли решил многие проблемы заказчиков и вопросы, связанные производительностью программных продуктов. Кроме того, руководит процессом глобализации Rational Focal Point.



19.04.2013

Введение

IBM® Rational® Focal Point™ помогает принимать важные решения по управлению проектами, продуктами и портфолио. В ней предлагается всесторонний обзор практических методов импорта, обновления и экспорта данных, доступных в Rational Focal Point. Она будет особенно полезна тем читателям, которым требуется дополнительная информация для выбора наиболее подходящего метода импорта и экспорта данных, а также способов оптимизации, доступных при операциях импорта и экспорта.


Модель внешних данных

Модель данных Rational Focal Point содержит следующие элементы (см. также рисунок 1):

  • серверы, которые являются экземплярами сервера Rational Focal Point и содержат набор рабочих областей и данных для глобальных пользователей;
  • рабочие области, содержащие коллекцию связанных модулей;
  • модули, используемые для определения элементов в качестве определений атрибутов. Модули состоят из наборов элементов;
  • элементы, содержащие набор значений атрибутов;
  • представления, которые представляют собой подмножество элементов и атрибутов модуля.
Рисунок 1. Общая модель внешних данных Rational Focal Point
Ресурсы и их взаимосвязи

Имеющиеся способы импорта, экспорта и обновления

Существуют следующие возможности в зависимости от используемых форматов:

  • импорт и экспорт в XML-формате;
  • импорт, экспорт и обновление в формате Microsoft Excel;
  • импорт, экспорт и обновление с помощью настраиваемого REST (Rational Focal Point 6.5.2 и более поздние версии);
  • импорт, экспорт и обновление с помощью API REST.

Импорт и экспорт в XML-формате

Экспорт и импорт атрибутов Rational Focal Point всех типов полностью поддерживается в формате XML. Рабочую область или модуль можно экспортировать отдельно или импортировать с использованием XML-формата. При импорте в XML создается новая рабочая область или модуль. Другими словами, XML-импорт нельзя использовать для обновления существующих рабочей области или модуля. Содержание экспорта можно определить тремя способами:

  • полный экспорт: экспортируется вся рабочая область, включая все элементы, журналы и конфигурации атрибутов;
  • ограниченный экспорт: экспортируется сжатый файл, содержащий модули в формате XML и вложения как обычные файлы;
  • экспорт конфигурации атрибутов: экспортируются только папка верхнего уровня и конфигурация атрибутов. Элементы и журнал исключаются.
Рисунок 2. Страница экспорта рабочей области в формате XML
Страница экспорта рабочей области в формате XML

Увеличенный вариант рисунка 2.

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

Уже экспортированный XML-файл рабочей области Rational Focal Point можно импортировать как новую рабочую область, выбрав General > Workspaces (см. рисунок 3) и воспользовавшись кнопкой ImportWorkspace.

Рисунок 3. Страница импорта рабочей области Rational Focal Point в формате XML
Страница импорта рабочей области Rational Focal Point в формате XML

Увеличенный вариант рисунка 3.

Импорт, экспорт и обновление в формате Microsoft Excel

Этот метод обычно применяется для импорта в Rational Focal Point любых электронных таблиц, управляемых вне Rational Focal Point, чтобы обеспечить возможность ограниченного автономного обновления элементов или создания отчетов в формате Microsoft Excel. С помощью этого метода можно экспортировать, импортировать или обновлять коллекции элементов. Пользовательский интерфейс для импорта позволяет выбирать и настраивать соответствие между входными данными и целевыми элементами Rational Focal Point на уровне столбцов.

Рисунок 4. Страница настройки импорта модуля Excel
Сопоставленные данных Excel по столбцам

Увеличенный вариант рисунка 4.

Примечание.
Операции импорта с использованием формата Microsoft Excel не поддерживают атрибуты типа ссылок.

Импорт, экспорт и обновление с помощью настраиваемого API REST

Rational Focal Point 6.5.2 можно настроить в качестве клиента REST, чтобы извлекать данные из внешних Web-приложений, поддерживающих API REST. Используя эту функцию, можно извлечь один файл или коллекцию внешних ресурсов и преобразовать данные для создания новых или обновления существующих элементов Rational Focal Point. С помощью пользовательского интерфейса можно определить преобразование значений входных данных в атрибуты элементов. Эта функция также поддерживает создание XML с помощью выбранных значений атрибутов элементов и использование их содержания для обновления внешних систем.

Импорт, экспорт и обновление с помощью API REST

Rational Focal Point 6.4.0 и более поздние версии поддерживают REST XML API, который можно использовать для получения или обновления элементов Rational Focal Point как XML-данных. Rational Focal Point 6.5.2 и более поздние версии поддерживают API REST Resource Description Framework (RDF), который можно использовать для получения или обновления элементов Rational Focal Point как файлов RDF. Подробности см. по ссылке на "Справочник по API Rational Focal Point" в разделе "Ресурсы".


Проблемы импорта и обновления больших объемов XML-данных

Импорт большого объема данных в формате XML представляет собой ресурсоемкую операцию. Сложность и время импорта зависит от объема данных, а также от количества ссылок и выражений в импортируемых данных. Вполне вероятно, что во время импорта другие пользователи будут ощущать некоторое замедление работы. В некоторых ситуациях замедление остается даже после успешного завершения операции импорта. Это может произойти, если данные сложны и вызывают вычисление множества выражений. Эти выражения вычисляются в фоновом режиме, и до окончания этих фоновых операций используются дополнительные системные ресурсы.

В зависимости от сложности и количества импортируемых данных вся операция импорта может занять от нескольких минут до нескольких часов. Например, в локальной тестовой среде импорт модуля с 200 элементами и 20 атрибутами занял 40 с, но для 1000 элементов время импорта увеличилось до 140 с.


Практические рекомендации по подготовке к работе с большими объемами XML-данных

В этом разделе приводятся некоторые практические советы по подготовке к импорту и обновлению большого объема данных.

  • Обеспечьте оптимальный объем входных данных.
  • Выделите достаточно памяти для операционной системы.
  • Перед исполнением в рабочей среде выполните проверку в тестовой.
  • Создайте резервную копию данных.
  • Выберите подходящее время.
  • Запускайте операции импорта по одной.

Обеспечение оптимального объема входных данных

Убедитесь, что данные для импорта и обновления оптимальны. Rational Focal Point поддерживает три способа экспорта рабочей области или модуля в качестве XML-данных: полный экспорт, ограниченный экспорт и экспорт конфигурации атрибутов. Во избежание появления ненужных данных в экспортируемом ZIP-файле используйте подходящий способ экспорта.

Выделение памяти операционной системы

Убедитесь, что серверу Rational Focal Point выделен достаточный объем памяти. Больший объем памяти позволяет Rational Focal Point использовать больше ресурсов для интенсивных фоновых операций, таких как вычисление выражений, индексация и уведомления, без негативных последствий для общей производительности. Точного расчета необходимого объема памяти не существует, но для его оценки можно использовать следующие принципы:

  • средний объем памяти, необходимой для импорта атрибута, составляет 4 КБ;
  • чтобы импортировать 10 000 элементов с 10 атрибутами каждый, нужно примерно 400 МБ памяти (4 x 10 x 10000 КБ).

Чтобы изменить максимальный объем памяти, найдите файл fpenv.sh (в Linux-системе) или fpenv.bat (в систем Microsoft Windows) в каталоге $TOMCAT_HOME\bin\ и измените свойство SERVER_MAXHEAP, как показано в примере на рисунке 5.

Рисунок 5. Пример файла конфигурации памяти fpenv.sh
#!/bin/sh
#########################################################
# Этот сценарий вызывается из setenv.sh                            
#                                                                                      
# Создайте резервную копию, если нужно внести изменения
#                                                                                        
#########################################################
echo "Customizing server for Focal point "
DEBUG="TRUE"
...
#|------------- ИСПОЛЬЗОВАНИЕ ПАМЯТИ СЕРВЕРА/JVM/JAVA --------------
#|  Используется для выделения приложению дополнительной системной памяти т.е.RAM
#|   
#   SERVER_MAXHEAP , SERVER_MAXHEAP  
#       Задает максимальный объем памяти для JAVA/Server (т.н. объектная куча)
#      SERVER_MAXHEAP Максимальный размер кучи JVM, исполняющей Focal Point Application
#      SERVER_MINHEAP Начальная память кучи, выделяемая JVM при запуске  
#      Например, чтобы выделить 1 ГБ: SET SERVER_MAXHEAP=1024M
#       SET SERVER_MINHEAP=756M
#
#       В производственной системе установка параметра SERVER-MAXHEAP равным  
#       SERVER_MINHEAP может уменьшить накладные расходы GC
#       
SERVER_MAXHEAP="1500M"
SERVER_MINHEAP="750M"

Проверка в тестовой среде перед выполнением в производственной

Перед запуском сценариев импорта или обновления в рабочей среде проверьте их в идентичной тестовой среде. Информация, собранная в тестовой среде (правильность импортированных данных, требуемое время и т.п.), будет полезна при операциях импорта в производственной среде.

Создание резервной копии данных

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

Выбор подходящего времени

Поскольку импорт или обновление в формате XML - это ресурсоемкие операции, выбирайте для них подходящее время, чтобы неудобства для пользователей были минимальными. Эти операции можно выполнять вне обычного рабочего времени, когда количество запросов к серверу Rational Focal Point невелико.

Запуск операций импорта по одной

Учитывая ресурсоемкий характер операций импорта, выполняйте только одну операцию за раз.


Практические рекомендации по операциям импорта больших XML-файлов

Для повышения эффективности операций импорта соблюдайте следующие рекомендации:

  • собирайте статистику по ресурсам Rational Focal Point:
    • по использованию памяти;
    • кэш-памяти атрибутов;
    • очереди выражений;
  • собирайте статистику по таблицам базы данных Rational Focal Point.

Сбор статистики по ресурсам Rational Focal Point

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

Память Rational Focal Point

Память Rational Focal Point можно контролировать, выбрав General > About Rational Focal Point. При нехватке доступной памяти появится предупредительное сообщение красного цвета. Чтобы изменить объем выделенной памяти, выполните действия, указанные в разделе "Выделение памяти операционной системы", и перезагрузите сервер.

Совет:
крупные операции всегда полезно сначала проверить в тестовой среде.

Рисунок 6. Статистика ресурсов операционной системы для работающего экземпляра
Список ресурсов ОС для рабочего экземпляра

Увеличенный вариант рисунка 6.

Статистика кэш-памяти атрибутов

Для повышения производительности Rational Focal Point использует кэш-память. Статистику кэш-памяти атрибутов можно контролировать, выбрав Advanced>Caches и проверив настройки кэш-памяти атрибутов. Для ускоренной работы частота обращений к кэш-памяти атрибутов должна превышать 95%. Если кэш полон, и частота обращений снижается ниже 95%, увеличьте размер кэш-памяти атрибутов. Кроме того, если размер кэш-памяти атрибутов значительно увеличен, увеличьте и объем памяти, выделенной Rational Focal Point. Как увеличить выделенную память в зависимости от размера кэша, указано в разделе Выделение памяти операционной системы.

Рисунок 7. Статистика использования кэша
Подробная информация о кэш-памяти, выделенной для ресурсов каждого типа.

Увеличенный вариант рисунка 7.

Контроль статистики очереди выражений

Очередь выражений можно контролировать, выбрав Advanced > Expression Queue и просмотрев график истории очереди выражений. Резкий подъем на начальном этапе в примере на рисунке 8 указывает на то, что в ходе операции импорта очередь выражений растет. Кривая, направленная вниз, показывает, что скорость исполнения выражения выше интенсивности потока входящих выражений. В некоторых случаях можно наблюдать плато в середине графика. Это состояние сохраняется длительное время, или же график медленно идет на спад. Если размер очереди выражений не уменьшается быстро, то вероятно, что нагрузка на Rational Focal Point и серверы баз данных велика и может замедлить процесс импорта. В следующем разделе рассматривается способ повышения скорости вычисления выражений.

Рисунок 8. График истории статистики очереди выражений
График вычисления выражений с течением времени

Увеличенный вариант рисунка 8.

Сбор статистики по таблицам базы данных Rational Focal Point

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

  • Attxxx,
  • formulxxx,
  • matirxxxx,
  • formulaqueue,
  • formuladependson.

Сбор статистики для этих таблиц гарантирует, что индексы будут актуальными и оптимизатор запросов выбирает лучший план оценки. Также можно спланировать задание для регулярного сбора статистических данных, но для этого могут потребоваться права администратора базы данных. Если операция импорта длится более часа, собирайте статистику каждый час.

Информация о настройке очередей для оптимальной оценки выражений содержится по ссылке "Настройка очереди выражений" в разделе "Ресурсы".

Ресурсы

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Rational
ArticleID=872828
ArticleTitle=Импорт, экспорт и обновление данных в Rational Focal Point
publish-date=04192013