4 идеи для работы с базой данных

18.03.2016

pablo2-1024x512

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

Сегодня мы рассмотрим СУБД, как фактор производительности корпоративных информационных систем. На российском рынке 46% систем управления базами данных занимает Microsoft SQL, поэтому перечисленные ниже идеи и рекомендации относятся в первую очередь к нему.

1. УМЕНЬШИТЕ БЛОКИРОВКИ БАЗЫ ДАННЫХ

Как выглядит работа среднестатистического сотрудника? Он заходит в корпоративную систему (в 83% случаев в России – это 1С), и создает в ней документ, пробивает чек и т.п.

Это действие изменяет таблицу данных Microsoft SQL. При записи этого изменения таблица блокируется и транзакции других пользователей ставятся в очередь. При большом количестве транзакций (например, во время наплыва посетителей в магазин), пользователь ждет разблокировки таблиц SQL по несколько секунд.

Партнер АйТек — компания SoftPoint — разработала продукт «Гибкие блокировки», который при совершении транзакции блокирует не всю таблицу, а только отдельные строки в ней. Этот продукт решает проблемы несбалансированных прямых запросов, запросов при работе экранных форм, «тяжёлых» запросов при проведении документов, оптимизирует структуру индексов и настройку серверных параметров.

В результате внедрения, время ожидания сокращается в десятки раз. Посмотрите конкретные цифры вотчете по анализу блокировок до и после внедрения технологии «Гибкие блокировки» (pdf).

2. СПРОГНОЗИРУЙТЕ ЭФФЕКТ МИГРАЦИИ

Миграция на новую версию MS SQL или перенос СУБД на новый сервер, требуют серьезных инвестиций. При этом объективно спрогнозировать эффект от такого проекта не представлялось возможным. До появления продукта Traffic simulator.

Он состоит из набора утилит и тестирует новую конфигурацию, имитируя работу вашей базы данных. Этапы тестирования:

  1. Запись трафика SQL-запросов к серверу БД рабочей информационной системы. Запись ведется 8 часов.
  2. Воспроизведение записанного трафика в новых условиях (другая версия SQL Server, другой сервер, другая дисковая подсистема).
  3. Сравнение параметров производительности SQL-запросов в рабочей и новой конфигурации. Расчет коэффициента ускорения, получение списка ускорившихся и ухудшившихся запросов и непредвиденных ошибок.
  4. Наблюдение и анализ производительности оборудования при проведении тестирования для четкого воспроизведения ситуации.

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

3. ВЫПОЛНИТЕ ТРЕБОВАНИЕ 152 ФЗ ПРИ РАБОТЕ С ОБЛАЧНЫМИ СЕРВИСАМИ

Компания RightScale, в своем «Ежегодном отчете об использовании облачных сервисов» за 2016 год, указывает, что 89% компаний пользуются публичными облачными сервисами.

При этом, в России, действует федеральный закон №152 от 27.07.2006 г., по которому организации обязаны безопасно хранить персональные данные на территории РФ.

Продукт «Personal information storage» (pdf) делит бизнес данные (зарплата, отгрузки и т.п.) и персональные данные (ФИО, паспорт и т.п.) и организует их хранение отдельно друг от друга. При этом бизнес-данные хранятся в заграничном облачном сервисе, а персональные данные – на территории РФ.

На схеме видно, что Personal information storage устанавливается между корпоративным приложением и БД, поэтому изменять код самого приложения не требуется.

softpoint

4. КОНТРОЛИРУЙТЕ ПРОИЗВОДИТЕЛЬНОСТЬ СУБД

Для работы базы данных в режиме 24×7, нужно контролировать ее производительность и вовремя выявлять новые ошибки.

Система PERFEXPERT собирает показатели загрузки с серверов баз данных, терминальных серверов и серверов приложений, сохраняет их в «Центре сбора данных мониторинга» и формируетаналитический отчет, который выявляет конкретные проблемные места и причины их возникновения.

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

PERFEXPERT обрабатывает следующие параметры работоспособности информационной системы:

  • Динамика нагрузки на сервер СУБД с детализацией по пользовательским сессиям
  • Ошибки и внештатные ситуации у пользователей
  • Неоптимальные запросы приложения к данным
  • Показатель длительности операций
  • Информация по регламентному обслуживанию баз данных и серверов

Посмотрите демонстрацию работы PERFEXPERT 3.0 (25 мин):

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

Ваше имя (обязательно)

Ваш телефон (обязательно)

Contact form 7 Mailchimp extension by Renzo Johnson - Web Developer

Последние записи