Теория и практика построения баз данных (1088289), страница 89
Текст из файла (страница 89)
АС(О-транзакция — это транзакция, явлшощаяся атомарной, согласованной, иаолированной и устойчивой. Устойчивость означает, что изменения в базе данных являются постоянными. Согласованность может быль па уровне оператора или на уровне транаакции. Транзакция, характеризующаяся согласованностью на уровне транзакции, может не видеть своих собственных результатов.
В стандарте 5Я1. 1992 г. определены четыре уровня изоляции транзакций: «незавершенное чтение», «завершенное чтение», «воспроизводпмое чтение» и «сериализуемость». Характеристики каждого из этих уровней изоляции приведены на рис. 11.8. Курсор — это указатель на набор записей. Наиболее распространены четыре типа курсоров: последовательный, статический, ключевой и динамический, Разработчики должны выбирать уровни изоляции и типы курсоров, которые подходят для конкретного приложения и СУБД. Задача системы безопасности базы данных состоит в том, чтобы определенные действия могли предприниматься только определенными пользователями и в определенное время.
Чтобы разработать аффективную систему безопасности базы данных, необходимо определить для всех пользователей права и обязанности по обработке. СУБД предоставляют некоторые возможности по обеспечению безопасности. Большинство пз них включают объявление пользователей, групп, защигцаемых объектов и полномочий или привилегий по доступу к этим объектам. Почти во всех СУБД используется та нли иная разновидность идентификации по имени пользователя и паролю.
Возможности СУБД по обеспечению безопасности могут быть дополнены функциями, реализованными в прикладных программах. В случае сбоя системы база данных должна быть как можно скорее восстановлена к работоспособному состоянию. Транзакции, которые выполнялись в момент возникновения сбоя, должны быть повторно сохранены в базе данных пли обработаньь Хотя в некоторых случаях восстановление можно осуществить путем повторной обработки, почти всегда предпочтительнее использовать журналы и откат-накат. Для уменьшения количества работы, необходимой для восстановления после сбоя, можно устанавливать контрольные точки. В дополнение к перечисленным выше задачам, администратор базы данных управляет самой СУБД, измеряя производительность приложений базы данных и определяя необходимость изменений в структуре базы данных или настройки производительности СУБД.
Администратор также обеспечивает ознакомление с новыми возможностями СУБД и внедрение их при необходимости. Наконец, администратор базы данных ответствен за поддержание репозитария данных. Вопросы ! группы 1. Кратко опишите пять проблем, которые возникают перед организациями, создающими и использующими многопользовательские базы данных. 2.
Поясните разницу между администратором базы данных и администратором данных. 3. Перечислите семь важных задач, стоящих перед администратором базы данных. 4. Перечислите обязанности администратора базы данных по управлению о' структурой базы данных.
5. Что такое контроль конфигурации? Почему он необходим? б. Поясните значение слова непредусмотренный во фразе «действия одного пользователя не оказывают непредусмотренного влияния на действия другого пользователя». 7. Объясните, какого рода компромисс возникает при управлении параллельной обработкой. 8. Дайте определение атомарной транзакции и объясните, почему важна атомарность. 9. Поясните, в чем разница между параллельными транзакциями н одновременными транзакциями. Сколько процессоров требуется для одновременной обработки транзакций? 10.
Приведите пример потери обновления, отличный от приведенного в тексте. , 11. Объясните, чем явная блокировка отличается от неявной. 12, Что такое глубина детализации блокировки? 13. Объясните, в чем разница между монопольной и коллективной блокировкой. 14. Что такое двухфазная блокировка? 15. Как связано снятие всех блокировок в конце транзакции с двухфазной блокировкой? " 16. Как в общем случае следует определять рамки транзакции? 418 Вопросы й группы, 419 41. 42.
43. тинный репозиторий? 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. Глава 11. Многопользовательские базы данных Что такое монопольная блокировка? Как ее можно избежать7 Как люжно устранить ее, когда она возникает? Объясните, чем оптимистическая блокировка отличается от пессимисти- ческой.
Объясните, в чем преимущества подхода, при котором обозначаются рам- ки транзакций и объявляются характеристики блокировок, а само наложе- ние блокировок поручается СУБД. Объясните, как используются операторы ВЕ611«, СОММ1Т и кОССВАСК ТЯАМЯАСТ10л. Расшифруйте термин АС1Р-трьшзакция. Объясните, что такое согласованность на уровне оператора. Объясните, что такое согласованность на уровне транзакции, Каким неже- лательным свойством она характеризуется? В чем цель выделения различных уровней изоляции транзакций? Опишите уровень изоляции «незавершенное чтение».
Приведите пример его использования. Опишите уровень изоляции «завершенное чтение». Приведите пример его использования, Опишите уровень изоляции «воспроизводимое чтение». Приведите при- мер его использования. Опишите уровень изоляции «сериализуемость». Приведите пример его использования. Дайте определение термина курсор. Объясните, почему транзакция может иметь много курсоров. Иначе говоря, каким образом транзакция может иметь на данной таблице более одного курсора? В чем преимущество использования различных типов курсоров? Опишите последовательные курсоры. Приведите пример их использования.
Опишите статические курсоры. Приведите пример их использования. Опишите ключевые курсоры. Приведите пример их использования. Опишите динамические курсоры. Приведите пример их использования. Что произойдет, если вы не объявите СУБД уровень изоляции транзакции и тип курсора? Плохо ато или хорошо? Объясните, почему необходимо определять права и обязанности по обработке. Каким образом выполняются эти обязанности? Объясните, как связаны между собой пользователи, группы, полномочия и объекты в системе безопасности типичной базы данных.
Укажите преимущества и недостатки обеспечения безопасности средствами СУБД. Укажите преимущества и недостатки обеспечения безопасности средствами приложения. Объясните, как можно восстановить базу данных путем повторной обра- ботки. Почему этот метод в общем случае не реализуем на практике? Дайте определение терминам откат и накат. Почему важно делать запись в журнале, перед тем как прг>изводить изме- нения в базе данных? 44. Опишите процесс отката. При каких условиях он должен использоваться? 45. Опишите процесс наката.
При каких условиях он должен использоваться7 46. В чем преимущества частой расстановки контрольных точек в базе данных? 47. Перечислите обязанности администратора базы данных по управлению СУБД. 48. Что такое репозиторий данных? Что такое пассивный репозиторий? Ак- 49. Объясните, в чем важность репозитория данных.
Что может произойти, если его не будет? Вопросы И группы 50. Зайдите на сайт аул«.ш1сгозо11.сош и поигците на нем информацию об уровнях изоляции транзакций и типах курсоров. На данном этапе не обращайте внимания на информацию об КС>Я, АТ>О, ОВВС и 01Е С>В, а сконцентрируйтесь на возможностях и функциях ЯО1 Яегчег. Сравните возл>ожности этой СУБД с тем, что описано в тексте данной главы. 51.
Зайдите на сайт»>ма.огас1е.сош и поищите на нем информацию об уровнях изоляции транзакций и типах курсоров. На данном этапе не обращайте внимания на информацию об ОВВС и сконцентрируйтесь на возможно- стях и функциях Огас1е. Сравните возможности этой СУБД с тем, что описано в тексте данной главы. 52. Опишите преимущества и недостатки системы безопасности, опираю>цейся на имя пользователя и пароль. Какого рода небрежность могут проявить пользователи по отношению к своей идентификационной информации? Как эта небрежность может угрожать безопасности базы данных? Какие шаги необходимо предпринять, чтобы снизить риск возникновения подобных проблем? 53.
Поищите в Интернете информацию о САЯЕ-средствах, которые прсдостав- ляют возможность создания репозиториев, и о специализированных инструментах для построения репозиториев. Выберите наилучшее, по вашему мнению, средство и перечислите его основные функции и возможности. Объясните, как эти функции и возможности могут помочь администратору базы данных компании, которая занимается электронной коммерцией и хочет расширить ассортимент своих товаров.