Рисунок 3 иллюстрирует взаимодействие пользователя, СУБД и ОС при об¬работке запроса на получение данных. Цифрами помечена последователь¬ность взаимодействий:
1) пользователь посылает СУБД запрос на получение данных из БД.
2) анализ прав пользователя и внешней модели данных, соответст¬вую¬щей дан¬ному пользователю, подтверждает или запрещает дос¬туп данного пользо¬вате¬ля к запрошенным данным.
3) в случае запрета на доступ к данным СУБД сообщает пользова¬телю об этом (стрелка 12) и прекращает дальнейший процесс обра¬ботки данных, в против¬ном случае СУБД определяет часть концептуальной модели, которая затра¬гивается запросом пользователя.
4) СУБД получает информацию о запрошенной части концептуаль¬ной мо¬дели.
5) СУБД запрашивает информацию о местоположении данных на фи¬зиче¬ском уровне (файлы или физические адреса).
6) в СУБД возвращается информация о местоположении данных в терми¬нах операционной системы.
7) СУБД вежливо просит операционную систему предоставить необ¬ходи¬мые дан¬ные, используя средства операционной системы.
8) операционная система осуществляет перекачку информации из уст¬ройств хра¬нения и пересылает ее в системный буфер.
9) операционная система оповещает СУБД об окончании пере¬сылки.
10) СУБД выбирает из доставленной информации, находящейся в сис¬тем¬ном бу¬фере, только то, что нужно пользователю, и пересылает эти дан¬ные в рабо¬чую область пользователя.
БМД - это База Метаданных, именно здесь и хранится вся информа¬ция об ис¬пользуемых структурах данных, логической организации данных, правах доступа пользователей и, наконец, физическом расположении дан¬ных. Для управления БМД существует специальное программное обеспече¬ние администрирования баз данных, которое предназначено для корректного использования единого ин¬формационного пространства многими пользовате-лями.
Запрос не всегда проходит полный цикл. СУБД обладает доста¬точно раз¬витым интеллектом, который позволяет ей не повторять бессмыслен¬ных действий. И поэтому, например, если этот же пользователь повторно обра¬тится к СУБД с новым запросом, то для него уже не будут проверяться внеш¬няя модель и права доступа, а если дальнейший анализ запроса покажет, что данные могут находиться в системном буфере, то СУБД осуществит только 11 и 12 шаги в обработке запроса.
Разумеется, механизм прохождения запроса в реальных СУБД гораздо сложнее, но и эта упрощенная схема показывает, насколько серьезными и слож¬ными долж¬ны быть механизмы обработки запросов, поддерживаемые реальными СУБД.
Процесс прохождения пользовательского запроса
Статьи по предмету «Web-программирование»