Статьи

Статьи

Общие подходы к оптимизации работы с платформой QlikView

1. Факторы влияющие на производительность работы с платформой Qlikview:

Фактор 1. Обеспечение максимально возможной производительности сервера QlikView на данном оборудовании (это влияет на скорость вычисления агрегатов, преобразование данных и масштабирование приложения при подключении большего количества пользователей и/или увеличении объема анализируемых данных).

Фактор 2. Обеспечение максимально возможной производительности при обмене данными по сети между сервером QlikView и клиентской станцией пользователя.

Фактор 3. Обеспечение максимально возможной производительности работы системы визуализации в браузере (это влияет на интерактивность приложения в части быстроты прорисовки объектов приложения: графиков, кнопок, таблиц, карт, закладок и прочих видимых для пользователя элементов приложения).

Перечисленные факторы равноправны и полный провал в производительности по одному из них невозможно компенсировать сколь угодно высокой производительностью другого фактора.

2. Оптимизация производительности сервера (фактор 1) состоит из трех шагов:

2.1. Подбор максимально производительного оборудования. К составляющим этой производительности относятся:

  • Выбор процессора архитектуры Intel.
  • Выбор конфигурации сервера, обеспечивающей максимально возможную производительность связки «процессор – шина данных – оперативная память». На практике это означает выбор сервера с максимально возможной частотой работы оперативной памяти, шины и процессора. Т.е. это означает что выбор сервера с меньшим количеством ядер, но работающих на более высокой частоте – может оказаться лучшим решением, чем выбор сервера с огромным количеством ядер, работающих на более низкой частоте. Этому нужно уделять пристальное внимание, т.к. производители сейчас предпочитают продавать заказчику процессоры с максимально возможным количеством ядер.

2.2. Настройка параметров оборудования сервера в режимы, обеспечивающие максимально возможное быстродействие под нагрузкой, формируемой сервером QlikView. К этим параметрам относятся:

  • Установка в сервер объема оперативной памяти, обеспечивающей максимально возможную производительность связки «процессор – шина данных – оперативная память». Некоторые модели серверов автоматически снижают частоту работы связки «процессор – шина данных – оперативная память» при превышении некоторого объема оперативной памяти.
  • Правильная установка в сервер модулей оперативной памяти в слоты материнской платы. Для каждой материнской платы существуют списки поддерживаемых типов модулей оперативной памяти и правила их установки в зависимости от объема модулей и общего объема устанавливаемой оперативной памяти. Неудовлетворение этих требований может существенно снижать производительность сервера.
  • Настройка параметров BIOS, при условии, что они поддерживаются конкретной моделью сервера и установленного в нем процессора:
    • Отключение режима разделения сервера на различные вычислительные разделы (NUMA).
      Обычно это параметр «Node Interleaving» = Enabled
    • Включение режима Turbo Boost (применимо для процессоров Intel).
      Обычно это параметры «Intel Turbo Boost Technology» = Enabled и «Turbo Boost Optimization» = Optimized for Performance
    • Отключение Hyper threading.
      Обычно это параметр «Hyper threading» = Disable
    • Отключение режима Hardware pre-fetch.
      Обычно это параметр «Hardware pre-fetch» = Disable
    • Настройка параметров энергосбережения в режим, обеспечивающий максимальную производительность.
      Например, «HP Power Profile» = Maximum Performance

2.3. Настройка параметров операционной системы Windows Server, обеспечивающих максимально возможное быстродействие под нагрузкой, формируемой сервером QlikView. Полный список рекомендаций Microsoft можно найти здесь http://msdn.microsoft.com/en-us/library/windows/hardware/dn529134.aspx. Я рекомендую, как минимум сфокусироваться на следующих параметрах и способах их настройки:

  • Установка фиксированного размера файла виртуальной памяти. QlikView не использует виртуальную память. Поэтому вполне достаточно 20GB файла с фиксированным размером.
  • Установка схемы энергосбережения в режим, обеспечивающий максимальную производительность. Для этого для серверов Windows 2008 необходимо выполнить команду
    Powercfg -setactive scheme_min
  • Максимальное использование функции Turbo Boost (для процессоров Intel). Для этого применительно к серверам Windows 2008 необходимо выполнить команды:
    Powercfg -setacvalueindex scheme_current sub_processor 45bcc044-d885-43e2-8605-ee0ec6e96b59 100 Powercfg -setactive scheme_current и Powercfg -setacvalueindex scheme_current sub_processor 893dee8e-2bef-41e0-89c6-b55d0929964c 100 Powercfg -setactive scheme_current

3. Оптимизация производительности при обмене данными по сети (фактор 2) состоит из единственного шага:

3.1. Снижение объема данных передающихся по сети возможно путем указания ограничений на объем отображаемых данных в используемых объектах приложения QlikView.

Например, если пользователю достаточно получать таблицу из 10-20 строк или график по 10-20 значениям, то нужно установить лимиты на вывод именно этого количества строк таблицы или значений на графике. Такой подход позволит существенно увеличить производительность, т.к. на рабочую станцию пользователя будет передаваться, а затем и прорисовываться только ограниченный объем данных.

4. Оптимизация процесса визуализации объектов на рабочем месте пользователя (фактор 3) состоит из трех шагов:

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

  • Выбор клиентской станции, обеспечивающей требуемое быстродействие (это может быть существенно для планшетов).
  • Выбора браузера, обеспечивающего максимальную производительность обработки скриптов AJAX.
  • Оптимизация количества и параметров объектов визуализации в самом приложении QlikView.
4.2. Оптимизация объектов визуализации в приложении QlikView – это всегда совокупность трех вещей:
  • Введение условного расчета свойств объекта. Т.е. в свойствах каждого объекта могут быть прописаны условия, обеспечивающие минимизацию его перерисовок на экране пользователя. Т.е. перерисовка объекта выполняется только в случае, если объект действительно должен быть изменен после выполнения пользователем какого-то действия. Целесообразность задания правил расчета объекта должна быть оценена для каждого объекта.
  • Введение условий на отображение объектов. Т.е. для объектов, отображение которых не требуется на экране (например, скрывающихся за другими объектами) – их визуализация должна быть отключена. Они должны появляться и прорисовываться на экране только в тот момент, когда они действительно нужны для пользователя и требуется изменение их внешнего вида. Возможность скрытия объекта должна быть оценена для каждого объекта.
  • Уменьшения количества одновременно отображаемых визуальных объектов на экране пользователя. При возможности распределить часть информации пользователя по нескольким закладкам – это нужно сделать.


Вам может быть интересно

Курсы:

Разработчик QlikView (авторский курс BI Consult)





« Предыдущий материал     Следующий материал »






Возврат к списку


Подпишитесь на новости