Сервер баз данных (БД, СУБД, SQL) обслуживает базу данных и отвечает за целостность и сохранность данных, а также обеспечивает операции ввода-вывода при доступе клиента к информации.
Архитектура клиент-сервер состоит из клиентов и серверов. Основная идея состоит в том, чтобы размещать серверы на мощных машинах, а приложениям, использующим языковые компоненты СУБД, обеспечить доступ к ним с менее мощных машин-клиентов посредством внешних интерфейсов.
В данном разделе мы наиболее подробно остановимся на самом сервере и его аппаратной реализации.
Для работы с современными базами данных как правило используется язык SQL. В настоящее время наиболее распространены несколько программных продуктов, реализующих систему управления базами данных (СУБД):
- Microsoft SQL Server
- Oracle Database Server
- MySQL, PostgreeSQL и т.д.
Специфика сервера базы данных заключается в том, что данные как правило обрабатываются транзакционно, т.е. система запрашивает небольшой объем данных, проводит над ними операцию и затем сохраняет. Это накладывает определенные требования к аппаратной части сервера БД, а именно:
- большой объем оперативной памяти для кэширования наиболее интенсивно используемых участков базы данных
- высокопроизводительная дисковая подсистема, характеризующаяся в первую очередь способностью обрабатывать большое количество мелких запросов в единицу времени (IOPS - inputs/outputs per second)
- высокая вычислительная мощность для обработки информации
Реализация описанных выше требований осуществляется следующим образом:
Оперативная память сервера баз данных
Большой объем оперативной памяти, в идеале такой, чтобы кэшировать всю базу данных целиком. Работа с оперативной памятью на порядки быстрее, чем работа с жесткими дисками, поэтому чем большим количеством оперативной памяти будет располагать сервер, тем лучше, при условии, что операционная система и само приложение сервера СУБД способны адресовать и работать с таким количеством памяти. Современные операционные системы и приложения фактически не имеют данных ограничений, т.к. способны адресовать терабайты памяти и более. Двухпроцессорные серверы способны оснащаться 8ТБ оперативной памяти, а четырех- и восьмипроцессорные - до 24ТБ.
Дисковая подсистема сервера баз данных
Для получения максимальной производительности дисковой подсистемы на транзакционных задачах ее строят следующим образом: несколько жестких дисков объединяются в RAID-массив, т. к. в RAID-массиве операции чтения-записи происходят одновременно на нескольких дисках, то рост производительности (количества операций ввода-вывода в секунду, IOPS) растет пропорционально количеству жестких дисков в массиве. В качестве жестких дисков рекомендуется использовать диски SAS (Serial Attached SCSI)на 10000 об/мин или 15000 об/мин. Данные диски оптимизированы для работы на транзакционных нагрузках и по этому показателю имеют вдвое-втрое более высокую производительность, чем диски SATA. Кроме того, диски SAS изначально проектировались под работу в RAID-массивах и показывают практически линейный рост производительности массива при увеличении количества дисков в нем.
Вычислительная мощность сервера баз данных
Современные процессоры стали значительно производительнее, чем 2-3 года назад благодаря внедрению технологий многоядерности. Сейчас сервер с 80-ю ядрами (фактически процессорами) доступен практически каждой организации. Благодаря этому, появилась возможность обрабатывать существенные объемы информации на относительно недорогом оборудовании. Для "тяжелых" систем постепенно отпадает необходимость в приобретении дорогостоящих многопроцессорных RISC-систем, стоящих при равной производительности на порядки дороже. В настоящий момент существуют четырех- и восьмипроцессорные серверы стандартной архитектуры x86 с поддержкой многоядерных процессоров, что позволяет иметь в одной системе до 224-х ядер.
Компания STSS рада предложить своим заказчикам широкий спектр серверов для СУБД самого различного уровня. Начиная от небольших баз данных на 10-20 пользователей, и заканчивая системами корпоративного уровня с числом пользователей, превышающем 1000 человек.
Нами разработано уникальное решение - четырехпроцессорный сервер с большим количеством отсеков для жестких дисков. Уникальное сочетание высокой вычислительной мощности и высокопроизводительной дисковой подсистемы в одном конструктиве позволяет сэкономить до 50% по сравнению с традиционным решением - сервер + внешний RAID-массив
На нашем сайте серверы баз данных представлены в следующих разделах: