Архитектура Sybase

Оценить
(0 голоса)
ASE (Adaptive Server Enterprise - сервер масштаба предприятия) фирмы Sybase наиболее широко используется в системах Sun и особенно в средах OLTP. В этой главе мы рассмотрим модель процессов, управление памятью, а также характеристики хранения данных ASE. Мы рассмотрим также системные базы данных и прогрессивные возможности параллельных запросов Sybase ASE 11.5. В завершение мы рассмотрим архитектуру Sybase Adaptive Server IQ with Multiplex. Для эффективного использования ресурсов ЦП и памяти, Sybase ASE использует многопотоковую архитектуру. Обрабатывая планирование и диспетчеризацию пользовательских потоков и внутренних потоков СУБД, многопотоковое ядро Sybase вместо потоков Solaris использует собственную потоковую модель. Смотрите раздел "Многопотоковые архитектуры" в главе 5…
Оценить
(0 голоса)
В Sybase ASE управление памятью осуществляется посредством Buffer Manager (менеджера буферов). ASE применяет память совместного использования, или разделяемую память, для содержания кэша данных, процедурного кэша, а также таких структур данных ядра Sybase, как Очереди выполнения и ожидания и цепочки блокировок. До выхода ASE 12.5 изменения в параметрах, влияющих на размер памяти совместного использования, не проявлялись до перезагрузки Sybase. Но ASE 12.5 уже предоставляет возможность динамического изменения этих параметров.
Оценить
(0 голоса)
Эффективные алгоритмы кэширования данных существенно влияют на производительность в том случае, если данные обнаруживаются в кэше и физическое считывание не осуществляется. Задача менеджера буферов заключается в минимизации количества операций физического ввода/вывода, необходимых для выполнения любой задачи. Эффективная стратегия менеджера буферов в сочетании с адекватной памятью приведет к максимальным попаданиям в кэш при нахождении данных и индексных страниц, необходимых задачам пользователей. Одна из особенностей менеджера буферов ASE состоит в поддержке многочисленных именованных кэшей (named caches), эффективных стратегий очистки страниц, а также многочисленных буферных пулов внутри именованных кэшей.
Оценить
(0 голоса)
Менеджер логической памяти способен поддерживать множество кэшей, называемых именованными. Каждый именованный кэш может быть зарезервирован для специфических баз данных или объектов баз данных, например, таблиц и индексов. Такая организация позволяет содержать в памяти объекты с наиболее частыми к ним обращениями, такие как индексы, направляя в различные кэши страницы для других объектов. Для объектов, требующих большого объема памяти, например, изображений и таблиц с низкими уровнями повторного использования данных, могут быть введены ограничения при использовании разделяемых кэшей, что позволит предотвратить заполнение всего кэша данных. И хотя сами кэши могут быть изменены только при перезагрузке СУБД, назначения кэшей могут изменяться динамически. Принятый по…
Оценить
(0 голоса)
Каждый кэш содержит данные в буферах, которые связываются в цепочку MRU-LRU (most recently used-least recently used - наиболее-наименее часто используемые), как показано на 10.2. Рисунок 10.2. Стратегия очистки страниц в Sybase A SE В цепочке представлен маркер очистки - точка в цепочке, за пределами которой "грязныеЪ! буферы автоматически опорожняются на диск. Каждый буферный пул имеет свою собственную цепочку MRU-LRU. Размер области очистки составляет 20% от буферов в пуле памяти для пулов размером менее 300 Мбайт и 20% от 300 Мбайт для больших пулов. Чем больше установлен размер области очистки, тем с большей интенсивностью будет производиться очистка грязных буферов, что в…
Оценить
(0 голоса)
Обычно цепочка MRU-LRU вызывает в буферах данных стратегию замещения FIFO ("First In First Out" - "первым пришел-первым обслужен"). Тем не менее, в некоторых случаях эта политика оказывается нежелательной. Если известно, что данные, к которым произошло обращение, больше не будут необходимы, то в их кэшировании нет надобности. И в этом случае ASE использует стратегию замещения "выборка-сброс". Страницы данных могут перемещаться по направлению к LRU-концу цепочки для их более кратковременного сохранения в кэше, чем при стратегии FIFO. Большой объем операций ввода-вывода и множество буферных пулов Несмотря на то. что ASE (до выхода версии 12.5) использует фиксированный размер страницы 2 Кбайт, операции ввода/вывода…
Оценить
(0 голоса)
Предусматривает расположенный в памяти репозиторий (хранилище) для хранения процедур и триггеров. В него помещаются как хранимые процедуры, написанные пользователем, так и системные процедуры. После того как хранимая процедура переносится в кэш, ее откомпилированный план запроса становится доступным другим пользователям, сохраняя доступ к диску и компиляцию процедуры. Хранение физических данных Для хранения данных ASE может использовать как низкоуровневые дисковые устройства, так и файлы UNIX, хотя Sybase рекомендует использовать низкоуровневые (с необработанными данными в виде потока битов) устройства для хранения данных в сферах производства. ASE инициализирует каждое дисковое устройство и составляет карту распределения в устройстве номеров виртуальных страниц. Когда СУБД распределяет пространство…
Оценить
(0 голоса)
Основной единицей хранения в ASE является page (страница). Размер страницы до выхода ASE 12.5 был фиксированным и составлял 2 Кбайт для большинства платформ, включая и Solaris. ASE 12.5 лучше строит главное устройство с помощью dataserver, чем с двоичным buildmaster, и расширяет количество поддерживаемых размеров страниц включением размеров 4, 8 и 16 Кбайт. Данные заголовка в начале страницы занимают до 44 байт и включают указатели на предшествующую и следующую страницы в цепочке страниц и идентификатор объекта БД, к которому принадлежит страница; остальные байты в странице доступны для данных. Группы из восьми страниц называются extents (экстентами). Размещение и удаление пространства для таблиц…
Оценить
(0 голоса)
Данные хранятся в таблицах, как и в любой реляционной БД. Каждая страница данных состоит из одной или более строк данных. Ранее в ASE существовало ограничение на максимально поддерживаемый размер строк - 1962 байт; этот предел был преодолен в ASE 12.0. Строка не может разделять страницы данных на интервалы, за исключением текстовых столбцов и столбцов изображения. Индексы используются для быстрого доступа к строкам данных внутри таблицы. ASE обеспечивает два вида индексов: кластерные и некластерные. В кластерных индексах страницы-листья индекса также являются страницами данных, тогда как в некластерных индексах страницы-листья являются указателями на страницы данных. Каждая таблица способна поддерживать максимум 1 кластерный…
Оценить
(1 голос)
Таблицы могут быть разбиты на разделы, что позволяет выполнять обработку запросов в параллельном режиме, а также сократить конкуренцию при блокировках. В процессе разбивки создается несколько цепочек страниц для таблицы, что весьма существенно повышает производительность операций вставки и параллельной обработки запросов, и при этом допускается также параллельная загрузка и dbcc. Ранние версии ASE допускали возможность разбивки только heap-таблиц (с динамически распределяемой памятью), однако начииая с ASE 11.5, вы можете создавать кластерные индексы в разделенных таблицах. Вы можете решиться на разбивку таблицы по следующим причинам: •             чтобы создать многочисленные точки вставки для Ьеар-таблицы •             чтобы распределить табличные операции ввода/вывода по нескольким устройствам…
«ПерваяПредыдущая12СледующаяПоследняя»
Навигация