- •1. Файловая организация данных в автоматизированных информационных системах, ее недостатки.
- •2. Традиционные файловые системы. Подход, используемый в файловых системах. Достоинства и недостатки.
- •3. Понятие базы данных. Преимущества базы данных.
- •4. Понятие базы знаний. Структура и функции системы управления базой знаний. Язык запросов к базе знаний
- •5. Приложения базы данных. Компоненты базы данных.
- •6. Трехуровневая модель организации баз данных.
- •7. Понятие модели данных. Иерархическая модель, ее достоинства и недостатки.
- •8. Сетевая модель, ее достоинства и недостатки.
- •9. Реляционная модель. Ее базовые понятия (отношение, домен, кортеж, степень отношения), достоинства и недостатки.
- •10. Связь между таблицами в реляционной модели данных. Первичный и внешний ключи, их отличия.
- •11. Реляционная целостность: целостность отношений, ссылочная целостность.
- •12. Постреляционная модель, ее достоинства и недостатки.
- •13. Объектно-ориентированная модель данных. Ее базовые понятия (объекты, классы, методы, наследование, инкапсулирование, расширяемость, полиморфизм), достоинства и недостатки.
- •14. Объектно-реляционная модель данных, ее достоинства и недостатки.
- •15. Реляционная алгебра. Традиционные операции над множествами.
- •16. Реляционная алгебра. Специальные реляционные операции.
- •17. Реляционная алгебра. Соединения. Зависимость реляционных операторов.
- •18. Реализация реляционной алгебры средствами операторов Structured Query Language (sql)
- •19. Понятие проектирования базы данных. Требования, предъявляемые к базе данных.
- •20. Этапы жизненного цикла базы данных.
- •21. Жизненный цикл информационной системы. Проектирование баз данных. Цели и задачи проектирования. Проектирование реляционной бд. Формулирование и анализ требований.
- •22. Модель "сущность-связь", ее понятия: сущность, атрибут, экземпляр сущности, связь, мощность связи. Представление сущности и связи на er-диаграмме.
- •23. Типы связи, их представление на er-диаграмме.
- •24. Класс принадлежности сущности, его представление на er-диаграмме.
- •25. Правила преобразования er-диаграмм в реляционные таблицы в случае связи 1:1.
- •26. Правила преобразования er-диаграмм в реляционные таблицы в случае связи 1:м, м:n.
- •27. Проблемы er-моделирования (ловушка разветвления, ловушка разрыва, ловушка соединения)
- •28. Нормализация таблиц, ее цель. Первая нормальная форма. Вторая нормальная форма. Третья нормальная форма.
- •29. Нормализация таблиц, ее цель. Третья нормальная форма. Четвертая нормальная форма. Нормальная форма Бойса-Кодда.
- •30. Планирование и проектирование баз данных. Концептуальное проектирование. Логическое проектирование. Физическое проектирование. Критерии оценки качества модели.
- •31. Концептуальное проектирование, его цель и процедуры.
- •32. Логическое проектирование, его цель и процедуры.
- •33. Физическое проектирование, его цель и процедуры.
- •34. Основы проектирования баз данных. Словарь данных. Устранение дефектов модели.
- •35. Понятие субд. Архитектура субд.
- •36. Функциональные возможности и производительность субд.
- •37. Классификация субд. Режимы работы пользователя с субд.
- •38. Направления развития субд: расширение множества типов обрабатываемых данных, интеграция технологий баз данных и Web-технологий, превращение субд в системы управления базами знаний.
- •39. Назначение, стандарты, достоинства языка sql.
- •40. Понятие языка запросов к базе данных. Операторы Structured Query Language (sql). Порядок выполнения оператора select
- •41. Структура команды sql.
- •42. Типы данных и выражения в sql.
- •43. Возможности языка sql по: определению данных, внесению изменений в базу данных, извлечению данных из базы.
- •44. Условия целостности в субд. Понятие транзакции. Обработка транзакций в sql.
- •45. Понятие ограничения целостности базы данных. Классификация ограничений целостности. Реализация ограничений целостности средствами sql
- •46. Управление доступом к данным: привилегии, их назначение и отмена.
- •47. Встраивание sql в прикладные программы.
- •48. Диалекты языка sql в субд.
- •49. Эволюция концепций обработки данных.
- •50. Индексирование в базах данных. Управление индексами. Сортировка данных.
- •51. Системы совместного использования файлов. Обработка запросов в них. Недостатки систем.
- •52. Настольные субд, их достоинства и недостатки.
- •53. Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных.
- •54. Функции клиентского приложения и сервера баз данных при обработке запросов. Преимущества клиент/серверной обработки.
- •55. Общие сведения о хранимых процедурах и триггерах.
- •56. Характеристики серверов баз данных.
- •57. Механизмы доступа к данным базы на сервере.
- •58. Понятие и архитектура распределенных баз данных (РаБд). Гомогенные и гетерогенные РаБд. Стратегии распределения данных в РаБд.
- •59. Распределенные субд (РаСубд). Двенадцать правил к. Дейта.
- •2.Отсутствие опоры на центральный узел.
- •3.Непрерывное функционирование.
- •4.Независимость от расположения.
- •5.Независимость от фрагментации.
- •6.Независимость от репликации.
- •7.Обработка распределенных запросов.
- •8. Обработка распределенных транзакций
- •60. Обработка распределенных запросов. Преимущества и недостатки РаСубд.
- •61. Хранилища данных. Olap-технология.
- •62. Многомерная модель данных. Olap.
- •63. Пользователи базы данных. Администратор базы данных, его функции.
- •64. Актуальность защиты базы данных. Причины, вызывающие ее разрушение.
- •65. Методы защиты баз данных: защита паролем, шифрование, разграничение прав доступа.
- •66. Восстановление базы данных с помощью резервного копирования базы данных, с помощью журнала транзакций.
- •67. Понятие транзакции. Проблемы параллельной работы транзакций
- •68. Конфликты между транзакциями. Способы разрешения конфликтов
- •69. Механизм блокировок. Типология блокировок. Примеры использования различных типов блокировок
- •70. Назначение блокировок. Проблемы, связанные с установкой блокировок. Преднамеренные блокировки
- •71. Альтернативные методы обеспечения сериализуемости транзакций: метод временных меток, метод выделения версий данных
- •72. Архитектура сетевого приложения, взаимодействующего с базой данных. Техника создания приложений и апплетов на языке Java, взаимодействующих с базами данных.
58. Понятие и архитектура распределенных баз данных (РаБд). Гомогенные и гетерогенные РаБд. Стратегии распределения данных в РаБд.
Система распределенных баз данных состоит из набора узлов (site), связанных коммуникационной сетью, в которой:
а) каждый узел — это полноценная СУБД сама по себе, но
б) узлы взаимодействуют между собой таким образом, что пользователь любого из
них может получить доступ к любым данным в сети так, как будто они находятся на его собственном узле.
Распределенная база данных в действительности представляет собой виртуальную базу данных, компоненты которой физически хранятся в нескольких различных реальных базах данных на нескольких различных узлах (в сущности, являясь логическим объединением этих реальных баз данных).
каждый узел сам по себе является системой баз данных. Иначе говоря, на каждом узле есть собственные локальные реальные базы данных, собственные локальные пользователи, собственные локальные СУБД и программное обеспечение управления транзакциями (включая собственное программное обеспечение блокировки, ведения журналов, восстановления и т.д.) и собственный локальный диспетчер передачи данных. В частности, любой пользователь может выполнять операции над данными на своем локальном узле точно так же, как если бы этот узел вовсе не входил в распределенную систему (по крайней мере, так должно быть). Всю распределенную систему баз данных можно рассматривать как некоторое партнерство между отдельными локальными СУБД на отдельных локальных узлах. Новый программный компонент на каждом узле — логическое расширение локальной СУБД — предоставляет необходимые функциональные возможности для организации подобного партнерства. Именно этот компонент вместе с существующими СУБД составляет то, что обычно называется распределенной системой управления базами данных (РСУБД).
Чаще всего предполагается, что узлы разделены физически (а возможно, и территориально), хотя в действительности достаточно того, чтобы они были разделены логически. Два узла могут даже сосуществовать на одном и том же физическом компьютере (в особенности на начальном этапе тестирования). Главная цель создания распределенных систем со временем изменялась. В ранних исследованиях в основном предполагалась территориальная распределенность, но в большинстве первых коммерческих реализаций предполагалось локальное распределение, когда несколько узлов размещалось в одном здании и соединялось с помощью локальной сети (ЛВС). Однако позже стремительное распространение глобальных сетей (ГВС) снова пробудило интерес к использованию территориального распределения.
Преимущества
Зачем нужны распределенные базы данных? Основная причина заключается в том,
что сами предприятия обычно уже распределены, по крайней мере, логически, т.е. разбиты на подразделения, отделы, рабочие группы и т.д. Очень часто они распределены и физически, т.е. разделены на отдельно расположенные заводы, фабрики, лаборатории и т.д. Из этого следует, что данные также обычно распределены, поскольку каждая организационная единица на предприятии создает и обрабатывает собственные данные, относящиеся к ее деятельности. Таким образом, информация предприятия разбивается на отдельные автономные части, которые иногда называют островами информации. А распределенная система обеспечивает мосты для их соединения в единое целое. Иначе говоря, распределенная система позволяет структуре базы данных отображать структуру предприятия — локальные данные могут храниться локально, в соответствии с логической принадлежностью, тогда как к удаленным данным доступ может осуществляться по мере необходимости.
Преимущества подобной распределенной системы очевидны: эффективность обработки (данные хранятся в том месте, где доступ к ним требуется наиболее часто) и расширенные возможности доступа.
Однако следует отметить, что подобным системам свойствен и ряд недостатков, наиболее существенным из которых является повышенная сложность распределенных систем, по крайней мере, с технической точки зрения. В идеальном случае, конечно, эта сложность должна быть проблемой реализации, а не проблемой пользователя, но вполне возможно, что на практике некоторые ее аспекты все-таки будут видны конечным пользователям.
Выделяют гомогенные и гетерогенные (однородные и неоднородные) РаБД. В гомогенных РаБД на всех узлах работают копии одной и той же СУБД – т.н. строгая однородность. При нестрогой однородности на узлах могут работать разные СУБД, но все они должны предоставлять некоторый общий интерфейс. В неоднородных РаБД на узлах работают разные СУБД, в общем случае друг с другом несовместимые.
Гомогенные РаБД значительно проще проектировать и сопровождать. Кроме того, подобный подход позволяет поэтапно наращивать размеры РаБД, последовательно добавляя новые узлы к уже существующей РаБД. Гетерогенные РаБД обычно возникают в тех случаях, когда независимые узлы, управляемые своей собственной СУБД, интегрируются во вновь создаваемую РаБД.
Существует четыре альтернативные стратегии распределения данных:
1.Централизация (единственная копия базы данных, расположенная в одном узле).
2.Расчленение (единственная копия базы данных, непересекающиеся подмножества распределены по различным узлам).
3.Дублирование (несколько копий базы данных, в каждом узле располагается полная копия всех данных).
4.Смешанная (несколько копий подмножеств базы данных, в каждом узле может содержаться произвольный фрагмент базы данных).