Рекомендуемая конфигурация сервера базы данных

Материал из GedeminWiki
(Различия между версиями)
Перейти к: навигация, поиск
 
(не показана 21 промежуточная версия 1 участника)
Строка 1: Строка 1:
Универсальным ответом при выборе конфигурации сервера базы данных могло бы быть: "Чем больше, тем лучше!". Больше памяти, больше процессоров, больше дисков в массиве. Однако, не каждая организация может позволить себе неограниченный бюджет на покупку нового сервера. Здесь мы приводим минимальные конфигурации для обеспечения комфортной работы пользователей с базой данных платформы Гедымин.
+
Универсальным ответом при выборе конфигурации сервера базы данных могло бы быть: Чем больше, тем лучше! Больше памяти, больше процессоров, больше дисков в RAID массиве. Однако, не каждая организация может позволить себе неограниченный бюджет на покупку нового сервера. Здесь мы приводим минимальные конфигурации для обеспечения комфортной работы с базой данных платформы Гедымин.
  
Следует понимать, что приведенные здесь типовые конфигурации и рекомендации — это не точные инструкции, способные гарантировать результат в каждом конкретном случае. Нагрузка на сервер базы данных зависит от многих факторов, среди которых:
+
Следует понимать, что приведенные конфигурации и рекомендации — это не точные инструкции, способные гарантировать результат в каждом конкретном случае. Нагрузка на сервер базы данных зависит от многих факторов, среди которых:
  
 
* Размер файла базы данных
 
* Размер файла базы данных
Строка 7: Строка 7:
 
* Интенсивность работы пользователя
 
* Интенсивность работы пользователя
 
* Особенность работы пользователя (преимущественно ввод и редактирование, преимущественно просмотр, построение "тяжелых" запросов и т.п.)
 
* Особенность работы пользователя (преимущественно ввод и редактирование, преимущественно просмотр, построение "тяжелых" запросов и т.п.)
 +
* Наличие резидентного ПО (антивирусы, шифрование данных и т.п.)
 +
* Другие задачи, выполняемые сервером (если это не выделенный сервер БД)
 
* И многое другое
 
* И многое другое
  
Параметры ниже указаны для выделенного сервера базы данных, который не выполняет иных функций (например, контроллера домена, прокси сервера, почтового серверв, файл сервера организации). Подразумевается, что сервер обслуживает '''одну''' базу данных. Существенно повлиять на производительность способны фоновые программы, особенно антивирусы.
+
Параметры ниже указаны для выделенного сервера базы данных, который не выполняет иных функций (т.е. не является контроллером домена, прокси сервером, почтовым сервером, файл сервером и т.п.). Подразумевается, что сервер обслуживает '''одну''' базу данных. Существенно повлиять на производительность способны фоновые программы, особенно антивирусы.
  
 
{| border="1" cellpadding="2" cellspacing="0" style="border-collapse:collapse;"
 
{| border="1" cellpadding="2" cellspacing="0" style="border-collapse:collapse;"
 
!style="background:#ffdead;" width="320px"| Параметр  
 
!style="background:#ffdead;" width="320px"| Параметр  
 +
!style="background:#ffdead;" width="160px"| Персональная БД
 
!style="background:#ffdead;" width="160px"| Малая БД
 
!style="background:#ffdead;" width="160px"| Малая БД
 
!style="background:#ffdead;" width="160px"| Средняя БД
 
!style="background:#ffdead;" width="160px"| Средняя БД
 
!style="background:#ffdead;" width="160px"| Большая БД  
 
!style="background:#ffdead;" width="160px"| Большая БД  
 
|-
 
|-
| Размер файла базы данных, Гб || менее 5 || 5-25 || более 25
+
| Размер файла базы данных, Гб || менее 1 || менее 10 || 10-100 || более 100
 
|-
 
|-
| Количество одновременных подключений || менее 10 || 10-40 || более 40
+
| Количество одновременных подключений || 1 (встроенный сервер) || до 20 || 20-100 || более 100
 
|-
 
|-
| Рекомендуемый минимальный размер ОЗУ || 4 Гб || 8 Гб || 16 Гб  
+
| Рекомендуемый минимальный размер ОЗУ || 16 Гб || 64 Гб || >= 256 Гб || >= 512 Гб  
 
|-
 
|-
| Операционная система Windows Server 2003 R2 или Windows Server 2008 R2 || 32 bit || 64 bit || 64 bit  
+
| Операционная система Windows Server 2019 или более новая (для персональной БД Windows 10) || 64 bit || 64 bit || 64 bit || 64 bit  
 
|-
 
|-
| Файловая система || NTFS || NTFS || NTFS  
+
| Файловая система || NTFS || NTFS || NTFS || NTFS  
 
|-
 
|-
| Количество ядер процессоров || 1 || 4 || 8
+
| Количество ядер процессоров || >= 4 || >= 8 || >= 20 || >= 40
 
|-
 
|-
| Количество жестких дисков
+
| Количество жестких дисков для размещения базы данных
| 2 HDD
+
| 2 SSD
| 4 НDD на 15К rpm
+
| NVME или 4 SSD
| 8 НDD на 15К rpm
+
| NVME или 8 SSD
 +
| NVME или 10-16 SSD
 
|-
 
|-
 
| Уровень RAID<ref>[http://en.wikipedia.org/wiki/RAID RAID]</ref>  
 
| Уровень RAID<ref>[http://en.wikipedia.org/wiki/RAID RAID]</ref>  
 
| RAID 1. Встроенный RAID контроллер или RAID массив, организованный средствами ОС
 
| RAID 1. Встроенный RAID контроллер или RAID массив, организованный средствами ОС
| RAID 10 на внешнем контроллере  
+
| RAID 1. Встроенный RAID контроллер или RAID массив, организованный средствами ОС
| RAID 10 на внешнем контроллере  
+
| RAID 10 на внешнем контроллере с энергонезависимой кэш памятью не менее 2 Гб
 +
| RAID 10 на внешнем контроллере с энергонезависимой кэш памятью не менее 4 Гб
 
|}
 
|}
  
Строка 46: Строка 51:
 
=== Оптимальный размер страницы базы данных ===
 
=== Оптимальный размер страницы базы данных ===
  
Вся информация в файле базы данных разбита на страницы. Страница &mdash; это минимальная единица обмена данными сервером с дисковой подсистемой. Допустимые размеры страниц: 2048, 4096, 8192, 16384 байт. Теоретически, меньший размер страницы должен давать выигрыш в сценариях с преобладанием операций добавления/изменения данных. Больший &mdash при преобладании операций индексированного чтения (поиска по индексу).
+
Вся информация в файле базы данных разбита на страницы. Страница &mdash; это минимальная единица обмена данными сервером с дисковой подсистемой. Допустимые размеры страниц: 2048, 4096, 8192, 16384 байт. Теоретически, меньший размер страницы должен давать выигрыш в сценариях с преобладанием операций добавления/изменения данных. Больший &mdash; при преобладании операций индексированного чтения (поиска по индексу).
  
 
Оптимальный размер страницы базы данных можно подобрать только путем выполнения серии тестов на конкретном сервере. По умолчанию, при восстановлении базы данных из архива, Гедымин предлагает размер страницы 8192 байт. Для достижения максимальной скорости, размер кластера жесткого диска (стрипа, в случае RAID массива) должен совпадать с размером страницы.<ref>[http://www.ibase.ru/devinfo/pagesize.htm Какой размер страницы выбрать для базы данных?]</ref>
 
Оптимальный размер страницы базы данных можно подобрать только путем выполнения серии тестов на конкретном сервере. По умолчанию, при восстановлении базы данных из архива, Гедымин предлагает размер страницы 8192 байт. Для достижения максимальной скорости, размер кластера жесткого диска (стрипа, в случае RAID массива) должен совпадать с размером страницы.<ref>[http://www.ibase.ru/devinfo/pagesize.htm Какой размер страницы выбрать для базы данных?]</ref>
Строка 56: Строка 61:
 
=== Регулярное архивирование базы данных ===
 
=== Регулярное архивирование базы данных ===
  
Даже дорогой и "навороченный" RAID контроллер может выйти из строя. Регулярное архивное копирование базы на другой компьютер, отдельный жесткий диск или внешний носитель -- единственный способ обеспечить сохранность информации. Автоматической архивирование по расписанию может быть осуществлено с помощью утилиты gbak<ref>[[Автоматическое архивирование]]</ref>.
+
Даже дорогой и "навороченный" RAID контроллер может выйти из строя. Регулярное архивное копирование базы на другой компьютер, отдельный жесткий диск или внешний носитель -- единственный способ обеспечить сохранность информации. Автоматическое архивирование по расписанию может быть осуществлено с помощью утилиты gbak<ref>[[Автоматическое архивирование]]</ref>.
 +
 
 +
=== См. также ===
 +
 
 +
* [[Устойчивая работа сервера Firebird]]
 +
* [[Почему нельзя использовать RAID 5 для сервера базы данных]]
 +
* [[Переход на Firebird 3.0. Многопользовательский режим]]
 +
* [[Рекомендуемая конфигурация рабочего места]]
  
=== Примечания ===
+
=== Ссылки ===
 
<references/>
 
<references/>
  

Текущая версия на 13:49, 6 июля 2021

Универсальным ответом при выборе конфигурации сервера базы данных могло бы быть: Чем больше, тем лучше! Больше памяти, больше процессоров, больше дисков в RAID массиве. Однако, не каждая организация может позволить себе неограниченный бюджет на покупку нового сервера. Здесь мы приводим минимальные конфигурации для обеспечения комфортной работы с базой данных платформы Гедымин.

Следует понимать, что приведенные конфигурации и рекомендации — это не точные инструкции, способные гарантировать результат в каждом конкретном случае. Нагрузка на сервер базы данных зависит от многих факторов, среди которых:

  • Размер файла базы данных
  • Количество одновременно подключенных к серверу пользователей
  • Интенсивность работы пользователя
  • Особенность работы пользователя (преимущественно ввод и редактирование, преимущественно просмотр, построение "тяжелых" запросов и т.п.)
  • Наличие резидентного ПО (антивирусы, шифрование данных и т.п.)
  • Другие задачи, выполняемые сервером (если это не выделенный сервер БД)
  • И многое другое

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

Параметр Персональная БД Малая БД Средняя БД Большая БД
Размер файла базы данных, Гб менее 1 менее 10 10-100 более 100
Количество одновременных подключений 1 (встроенный сервер) до 20 20-100 более 100
Рекомендуемый минимальный размер ОЗУ 16 Гб 64 Гб >= 256 Гб >= 512 Гб
Операционная система Windows Server 2019 или более новая (для персональной БД Windows 10) 64 bit 64 bit 64 bit 64 bit
Файловая система NTFS NTFS NTFS NTFS
Количество ядер процессоров >= 4 >= 8 >= 20 >= 40
Количество жестких дисков для размещения базы данных 2 SSD NVME или 4 SSD NVME или 8 SSD NVME или 10-16 SSD
Уровень RAID[1] RAID 1. Встроенный RAID контроллер или RAID массив, организованный средствами ОС RAID 1. Встроенный RAID контроллер или RAID массив, организованный средствами ОС RAID 10 на внешнем контроллере с энергонезависимой кэш памятью не менее 2 Гб RAID 10 на внешнем контроллере с энергонезависимой кэш памятью не менее 4 Гб

[править] Суперсервер или классик?

Сервер классической архитектуры имеет смысл использовать для средних и больших баз по причине его повышенной устойчивости (падение или принудительное завершение одного процесса не сказывается на остальных подключениях), а так же на многоядерных системах для распараллеливания выполнения запросов[2]. Производительность классика сильно зависит от файлового кэша операционной системы и скорости обмена данных с диском. При использовании сервера классической архитектуры размер буфера не должен превышать 1000 страниц.

[править] Оптимальный размер страницы базы данных

Вся информация в файле базы данных разбита на страницы. Страница — это минимальная единица обмена данными сервером с дисковой подсистемой. Допустимые размеры страниц: 2048, 4096, 8192, 16384 байт. Теоретически, меньший размер страницы должен давать выигрыш в сценариях с преобладанием операций добавления/изменения данных. Больший — при преобладании операций индексированного чтения (поиска по индексу).

Оптимальный размер страницы базы данных можно подобрать только путем выполнения серии тестов на конкретном сервере. По умолчанию, при восстановлении базы данных из архива, Гедымин предлагает размер страницы 8192 байт. Для достижения максимальной скорости, размер кластера жесткого диска (стрипа, в случае RAID массива) должен совпадать с размером страницы.[3]

[править] Батарейка для RAID контроллера

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

[править] Регулярное архивирование базы данных

Даже дорогой и "навороченный" RAID контроллер может выйти из строя. Регулярное архивное копирование базы на другой компьютер, отдельный жесткий диск или внешний носитель -- единственный способ обеспечить сохранность информации. Автоматическое архивирование по расписанию может быть осуществлено с помощью утилиты gbak[4].

[править] См. также

[править] Ссылки

  1. RAID
  2. Firebird – SuperServer, ClassicServer or SuperClassic?
  3. Какой размер страницы выбрать для базы данных?
  4. Автоматическое архивирование
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты