Про перевод database: какие бывают, что с ними делают и с чем их едят
Содержание:
- Системы управления базами данных
- Вас заинтересует / Intresting for you:
- 2.2.3 Многоярусные базы данных
- Ключи в БД
- Системы распределенной обработки информации
- Для чего нужны
- Понятие БД и классификация БД
- Классификация СУБД
- Проектирование баз данных
- Реляционная структура данных
- Мир объектов, систем и решений
- Основные типы данных СУБД
- Разные базы — разные правила
- Базы данных NoSQL
- Преимущества и недостатки
- Модели электронной обработки
- В чём преимущества
- Справочная информация
Системы управления базами данных
СУБД, как уже говорилось ранее, — это набор программ, делающих возможным построение баз данных и их использование. В обязанности СУБД входит:
Создание базы данных. Некоторые системы управляют одним большим файлом и создают одну или несколько баз данных внутри него, другие могут задействовать несколько файлов операционной системы или же непосредственно реализовывать низкоуровневый доступ к разделам диска. Пользователи и разработчики не должны заботиться о низкоуровневой структуре таких файлов, т. к. весь необходимый доступ обеспечивает СУБД.
Предоставление средств для выполнения запросов и обновлений. СУБД должна обеспечивать возможность запроса данных, удовлетворяющих некоторому критерию, например возможность выбора всех заказов, сделанных некоторым клиентом, но еще не доставленных. До того как SQL получил широкое распространение в качестве стандартного языка, способы выражения таких запросов менялись от системы к системе.
Многозадачность. Если с базой данных работают несколько приложений или к ней одновременно осуществляют доступ несколько пользователей, то СУБД должна гарантировать, что обработка запроса каждого пользователя не влияет на работу остальных. То есть пользователям приходится ждать, только если кто-то другой записывает данные именно тогда, когда им нужно прочитать (или записать) данные в какой-то элемент. Одновременно может происходить несколько считываний данных. На поверку оказывается, что разные базы данных поддерживают разные уровни многозадачности и что эти уровни даже могут быть настраиваемыми.
Ведение журнала. СУБД должна вести журнал всех изменений данных за некоторый период времени. Он может использоваться для отслеживания ошибок, а также (может быть, это даже важнее) для восстановления данных в случае сбоя системы, например внепланового выключения питания. Обычно производится резервное копирование данных и ведется журнал транзакций, т. к. резервная копия может быть полезна для восстановления базы данных в случае повреждения диска.
Обеспечение безопасности базы данных. СУБД должна обеспечивать контроль над доступом, чтобы только зарегистрированные пользователи могли манипулировать данными, хранящимися в базе, и самой структурой базы данных (атрибутами, таблицами и индексами). Обычно для каждой базы определяется иерархия пользователей, во главе этой структуры стоит «суперпользователь», который может изменять все что угодно, дальше идут пользователи, которые могут добавлять и удалять данные, а в самом низу находятся те, кто имеет право только на чтение. СУБД должна иметь средства, позволяющие добавлять и удалять пользователей, а также указывать, к каким возможностям базы данных они могут получить доступ.
Поддержание ссылочной целостности. Многие СУБД имеют свойства, способствующие поддержанию ссылочной целостности, то есть корректности данных. Обычно, если запрос или обновление нарушает правила реляционной модели, СУБД выдает сообщение об ошибке.
Вас заинтересует / Intresting for you:
База данных как объект правово… 535 просмотров Денис Wed, 27 Mar 2019, 03:16:24
Перенос корпоративных баз данн… 837 просмотров Дэн Fri, 27 Sep 2019, 07:52:18
Что такое SQL? Плюсы и минусы … 3586 просмотров Андрей Васенин Tue, 21 Nov 2017, 13:17:28
База данных и СУБД: основные п… 8169 просмотров Дэйзи ак-Макарова Fri, 24 Nov 2017, 05:30:03
Author: Светлана
Другие статьи автора:
2.2.3 Многоярусные базы данных
Это новый и многообещающий путь обработки данных в сети. Иногда этот способ организации баз данных называется multi-tier — многонитевые. В этом термине под нитью понимается один из множества потоков данных, обменивающихся одновременно с базой данных.
Наиболее распространен трехярусный вариант:
•На нижнем уровне на компьютерах пользователя расположены приложения клиентов, обеспечивающие пользовательский интерфейс.
•На втором уровне расположен сервер приложений, обеспечивающий обмен данными между пользователями и распределенными базами данных. Сервер приложений размещается в узле сети, доступном всем клиентам
•На третьем уровне расположен удаленный сервер баз данных, принимающий информацию от серверов приложений и управляющий ими.
Подобную концепцию обработки данных пропагандируют, в частности, фирмы Oracle и Sun. Первый, элементарный уровень состоит из «тонких клиентов», то есть несложных терминалов, предназначенных, в основном, для ввода
—вывода. Второй, средний (middleware) уровень — это рабочие станции и серверы приложений, то есть значительно более серьезные машины, на которых выполняются программы, критичные к загрузке процессора. Третий и последний уровень — мощные специализированные серверы баз данных.
Многоярусная организация — наиболее сложный, гибкий и эффективный способ работы с базами данных. При этом надо отметить, что на нижнем уровне — на компьютерах пользователя не требуется установки Borland Database Engine (BDE). В этом заключается одно из преимуществ многоярусных распределенных баз данных.
Ключи в БД
Первичный ключ (РК, primary key) — столбец, значения которого различны во всех строках. РК бывают логические (естественные) и суррогатные (искусственные).
Суррогатный ключ — это дополнительное поле в БД. Обычно это уникальный id (порядковый номер записи), хотя принцип может быть и другой, главное — уникальность.
Вносим первичные ключи в наши таблицы:
Заметьте, что каждая запись в таблице уникальна. Осталось лишь установить соответствие между сообщениями и темами, используя первичные ключи. Добавляем в таблицу с сообщениями ещё одно поле:
Теперь становится ясно, что сообщение id=2 относится к теме «О рыбалке» (id=4), которая создана Васей, а остальные принадлежат теме «О рыбалке», созданной Кириллом (id=1). Такое поле будет называться внешний ключ (FK, foreign key). При этом каждое значение данного поля сопоставляется с каким-либо первичным ключом из таблицы «Темы». В результате устанавливается однозначное соответствие между темами и сообщениями.
Ещё момент: допустим, добавляется новый пользователь по имени Вася.
Как узнать, какой же из «Васей» оставил сообщение? Для этого поля «Автор» в наших таблицах «Сообщения» и «Темы» мы тоже сделаем внешними ключами:
Итак, наша база данных фактически готова. Схематично она выглядит так:
В этой небольшой базе данных лишь 3 таблицы. А что делать, если их 10 либо 200? Ясно, что всё не так просто. Именно поэтому любое проектирование реляционных баз данных начинается с разработки концептуальной модели данных.
Системы распределенной обработки информации
Есть только два варианта, когда типы базы данных могут существенно отличаться. Разработчик сам строит модель распределенной обработки, моделирует процессы, формулирует алгоритмы диалога и выполняет все смежные действия.
Второй вариант: множество разработчиков выполняет свою работу, накапливает и предоставляет информацию, что обуславливает появление возможности использования распределенной обработки информации. Совсем не обязательно для этого создавать собственный ресурс. Любая поисковая система — это пример управления через ключевые слова доступом к распределенным данным.
Если формулировать правильные запросы, можно получать адекватные ответы. Не имеет значение мнение всех тех ресурсов Сети, разработчиков и владельцев баз данных, которые предоставляют информацию
Важно, что на ключевое слово работает поисковый движок, в компетенции которого находится уже собранная информация или собираемая вновь
Для чего нужны
Вот основные задачи БД на примере гардеробной:
- Сохранить наши данные по запросу — чтобы вы могли открыть дверь, повесить куртку, закрыть дверь и больше не думать ни о куртке, ни о гардеробной.
- Изменить наши данные по запросу — чтобы можно было легко извлечь из гардеробной все дырявые носки и положить на их место целые.
- Найти эти данные по запросу — чтобы быстро найти приличный пиджак или парный носок.
- Не дать прочитать эти данные тем, кому не следует, а кому надо — дать. Например, младший брат может смотреть на ваши кроссовки, но не может их брать. А девушка (или парень) может положить свои вещи, но только на определённую полку.
- Поддерживать порядок и не дать захламиться — если вам было лень и вы просто кинули толстовку куда попало, чтобы гардеробная либо сама нашла, куда эту толстовку правильно положить, либо сказала: «Э БРАТ ЗАЧЕМ ЗАХЛАМЛЯЕШЬ ПОЛОЖИ НОРМАЛЬНО ДАВАЙ»
- Масштабироваться — чтобы вы могли просто вешать в гардеробную вещи и не думать об объёме полок.
- Не потерять данные — если квартира будет гореть, приличная гардеробная не должна даже нагреться. Или, если она всё-таки горит, чтобы где-то в защищённом подземном гараже была точная копия этой гардеробной со всеми актуальными вещами.
Понятие БД и классификация БД
Сегодня системы баз данных имеют важное значение во многих областях науки, техники и пользовательского применения. Любой тип программного обеспечения, разработанный для компаний, основан на надежных БД с большим количеством опций и инструментов для системных администраторов
Безопасность данных также приобретает все большее значение, в электронных БД хранятся и шифруются пароли, личные данные и даже электронные валюты.
Современная финансовая система представляет собой не что иное, как сеть баз данных, в которой большая часть денежных сумм существует только в виде электронных единиц информации, защита которых с помощью безопасных БД является одной из основных задач финансовых учреждений.
В зависимости от изменчивости базы данных ее тип относят по классификации БД к статическому или динамическому.
Функции статических БД:
- Позволяют только чтение данных, исключая модификацию.
- Применяются для биографий и исторических фактов или сценариев, к которым можно обращаться для исследования, без необходимости изменения содержания.
- Они безопасны и просты в использовании при подключении к сети.
Функции динамических БД:
- Они обладают понятием самоуправления.
- Могут быть связаны с динамическими сетями.
- Эта структурная ассоциация позволяет хранить и обновлять информацию базы данных.
- Использует HTML в качестве языка связи между сетью и динамической БД.
- Наиболее используемые языки для создания динамических сетей, связанных с BBDD: Perl, CGI, PHP, JSP и ASP.
Основными СУБД, которые работают с динамическими веб-страницами, являются PostgresQL, MySQL, Oracle и Microsoft SQL.
Для того чтобы понять, какие существуют варианты классификации БД, используемых в научной и образовательной среде, рассматривают:
- библиографические;
- документальные;
- специализированные;
- справочники.
Функциональные возможности библиографических БД:
- Связаны со старыми записями, которые содержат информацию о местонахождении книги или документа.
- Не содержат полный текст, только ссылку.
- Благодаря таким форматам, как PDF, позволяет получать доступ к оригинальным статьям, на которые есть ссылки.
- С развитием технологий включаются ссылки из других СМИ.
Особенности специализированных БД:
- Содержат точную информацию и ориентированы на конкретную тему.
- Используются в академической и научной среде.
- Для некоторых случаев не рассматриваются как правильные BBDD: например, телефонный справочник, список контактов компании или международной компании.
Классификация СУБД
По модели данных
По типу управляемой базы данных СУБД разделяются на:
§ Иерархические (система FAT, Серверы каталогов)
§ Сетевые (интернет)
§ Реляционные (MS Access)
§ Объектно-реляционные ( Oracle Database, Microsoft SQL Server 2005, PostgreSQL)
По архитектуре организации хранения данных
§ локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
§ распределенные СУБД (части СУБД могут размещаться на двух и более компьютерах)
По способу доступа к БД
§ Файл-серверные
В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. Ядро СУБД располагается на каждом клиентском компьютере. Доступ к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на ЦП сервера, а недостатком — высокая загрузка локальной сети.
На данный момент файл-серверные СУБД считаются устаревшими.
Примеры: Microsoft Access (Microsoft Access — реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, сортировку по разным полям, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных. Основные компоненты MS Access:просмотр таблиц; построитель экранных форм; построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI); построитель отчётов, выводимых на печать.), Borland Paradox.
§ Клиент-серверные
Такие СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера. Клиент-серверные СУБД, в отличие от файл-серверных, обеспечивают разграничение доступа между пользователями и мало загружают сеть и клиентские машины. Сервер является внешней по отношению к клиенту программой, и по надобности его можно заменить другим. Недостаток клиент-серверных СУБД в самом факте существования сервера (что плохо для локальных программ — в них удобнее встраиваемые СУБД) и больших вычислительных ресурсах, потребляемых сервером.
Примеры: Firebird, Interbase, MS SQL Server, Sybase, Oracle, PostgreSQL, MySQL, ЛИНТЕР.
§ Встраиваемые
Примеры: OpenEdge, SQLite, BerkeleyDB, один из вариантов Firebird, один из вариантов MySQL, Sav Zigzag, Microsoft SQL Server Compact, ЛИНТЕР.
6. Виды нормализации (1-3-нормальная форма).
Нормальная форма(НФ) — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, которая потенциально может привести к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.
Процесс преобразования базы данных к виду, отвечающему нормальным формам, называется нормализацией. Нормализация предназначена для приведения структуры базы данных к виду, обеспечивающему минимальную избыточность, то есть нормализация не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение объёма БД. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в БД информации.
Устранение избыточности производится, как правило, за счёт отношений таким образом, чтобы в каждом отношении хранились только первичные факты (то есть факты, не выводимые из других хранимых фактов).
Всего в реляционной теории насчитывается 6 НФ:
1. 1-я НФ (обычно обозначается также 1НФ).
2. 2НФ.
3. 3НФ.
4. НФ Бойса-Кодда (НФБК).
5. 4НФ.
6. 5НФ.
1НФ
Таблица находится в первой нормальной форме, если каждый её атрибут атомарен. Под выражением «атрибут атомарен» понимается, что атрибут может содержать только одно значение. Таким образом, не существует 1NF таблицы, в полях которых могут храниться списки значений. Для приведения таблицы к 1NF обычно требуется разбить таблицу на несколько отдельных таблиц.
Замечание: в реляционной модели отношение всегда находится в 1 (или более высокой) нормальной форме в том смысле, что иные отношения не рассматриваются в реляционной модели. То есть само определение понятия отношение заведомо подразумевает наличие 1NF.
Проектирование баз данных
Проектирование — самая трудная задача при работе с данными. Оно заключается не только в том, чтобы создать таблицу, указав наименование столбцов и тип данных. Это гораздо более сложный процесс, требующий специализированных знаний и умений. Говоря о типах баз данных в столбцах, подразумевается, например, способ их записи, который бывает символьный (строковый), числовой, календарный, NULL.
Основная сложность заключается в том, что мощность наших компьютеров ограничена. И пока данных мало, таблиц и строк тоже немного, поэтому машина обрабатывает информацию достаточно быстро. Но с течением времени информации становится всё больше, что может стать причиной снижения быстродействия. Работа машины будет замедляться, времени на обработку запросов потребуется всё больше. Добавить новую запись в таблицу не станет проблемой для реляционной СУБД, а вот выборка данных может превратиться в весьма ресурсоёмкую операцию. Хотя, многое будет зависеть и от настроек СУБД.
Реляционная структура данных
В конце 60-х годов появились работы, в которых обсуждались возможности применения различных табличных даталогических моделей данных, т.е. возможности использования привычных и естественных способов представления данных. Наиболее значительной из них была статья сотрудника фирмы IBM д-ра Э. Кодда (Codd E.F., A Relational Model ofData for LargeShared Data Banks. CACM 13:6, June 1970), где, вероятно, впервые был применен термин «реляционная модель данных».
Будучи математиком по образованию, Э. Кодд предложил использовать для обработкиданных аппарат теории множеств (объединение, пересечение, разность, декартово произведение). Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике какотношение – relation (англ.).
Наименьшая единица данных реляционной модели – это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой – как три различных значения.
Доменом называется множество атомарных значений одного и того же типа. Отношение на доменах D1, D2, …, Dn (не обязательно, чтобы все они были различны) состоит из заголовка и тела. На рис. 2.6 приведен пример отношения для расписания движения самолетов.
Заголовок (интерпретация) состоит из такого фиксированного множества атрибутов A1, A2, …, An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,…,n).
Рис. 2.6. Отношение с математической точки зрения (Ai — атрибуты, Vi — значения атрибутов)
Тело состоит из меняющегося во времени множества кортежей, где каждый кор теж со стоит в свою очер едь из множества пар атрибут-значение (Ai:Vi), (i=1,2,…,n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai:Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.
Степень отношения – это число его атрибутов. Отношение степени один называют унарным, степени два – бинарным, степени три – тернарным, …, а степени n – n-арным.
Кардинальное число или мощность отношения – это число его кортежей. Кардинальное число отношения изменяется во времени в отличие от его степени.
Поскольку отношение – это множество, а множества по определению не содержат совпадающих элементов, то никакие два кортежа отношения не могут быть дубликатами друг друга в любой произвольно-заданный момент времени.
Мир объектов, систем и решений
Реальные объекты и действующие системы объединяются в области применения человеком, принимающим решения. Сам факт посещения ресурса, обращения к объекту, использование системы имеет цель и полученный результат.
Нет необходимости фантазировать об искусственном интеллекте, когда вполне достаточно накапливать практику принятия решений человеком и использовать ее. Совершенно не обязательно привязывать решения, принятые сотрудниками одной компании к работе этой структуры.
Сфера антивирусной защиты уже давно собирает вирусные угрозы со всех возможных направлений и обобщает их для использования в каждом конкретном случае. Чем выше объем захвата растущих угроз, тем эффективнее борьба с ними на конкретных рабочих местах.
Когда информационная система способна накапливать опыт принятия решений, это хорошее начало и свидетельство компетентности разработчиков, гарантия стабильности развития потребителей и общего успеха.
Основные типы данных СУБД
Изначально применение СУБД ограничивалось преимущественно решением финансово-экономических задач.
Независимо от модели представления, базы данных обрабатывали такие основные типы данных:
- числовые – наиболее используемыми являются целочисленные, вещественные и денежные (финансовые);
- символьные, например, значения данных «четверг», «столбец», «менеджер»;
- логические, которые принимают значения «истина» или «ложь»;
- даты, которые задаются с помощью типа «Дата» или в виде обычных символьных данных.
В разных СУБД эти типы несущественно отличались названиями, диапазоном значений и видом представления. С развитием информационных технологий разрабатывались специализированные системы обработки данных (системы обработки видеоизображений, геоинформационные системы и т.д.), что привело к введению в СУБД их разработчиками поддержки новых типов данных.
К таким типам данных относились:
- время и дата/время, которые были предназначены для хранения информации о времени и/или дате;
- символьные переменной длины, которые хранили текстовую информацию большой длины (например, документ);
- двоичные для хранения графических, аудио- и видеообъектов, хронологической, пространственной и другой специальной информации. Такие данные часто называются мультимедиа-данными. Например, в MS Access тип данных «Поле объекта OLE» позволяет хранить в базе данных графические данные в формате BMP и отображать их автоматически при работе с базой;
- гиперссылки, которые предназначены для хранения ссылок на разные ресурсы (документы, файлы, узлы и т. д.), не принадлежащие базе данных, например, находящиеся в сети Интернет, корпоративной сети Интранет или на жестком диске персонального компьютера;
- данные в формате XML.
Разные базы — разные правила
Внутри каждой базы данных и её управляющей системы свои строгие правила:
- какие данные могут храниться: текст, цифры, фото, видео или всё вместе;
- какие свойства есть у этих данных: дата записи, кто записал, кто может прочитать;
- что делать, если с базой хотят работать одновременно несколько человек: разрешать только одному или пусть все вместе работают.
Рабочая ситуация: допустим, вы работаете в банке и открыли карточку клиента, чтобы поменять ему кредитный лимит. В этот же момент другой сотрудник из соседнего офиса тоже хочет поменять лимит этому же клиенту, но уже на другую сумму. Как база отреагирует на такое? Должна ли она разрешать второму сотруднику открывать карточку или её нужно заблокировать, пока первый не закончит? А если она разрешит открыть карточку, то что будет, если двое сотрудников напишут там разный лимит — какой из них сохранять в итоге? СУБД задаёт эти правила и следит за их выполнением.
Базы данных NoSQL
Класс NoSQL (нереляционных) баз данных достаточно широк. Их объединяет отсутствие необходимости структурировать данные в виде таблиц, но варианты реализации этой задачи используются разные.
Концепция NoSQL хорошо проявляет себя там, где нужно учитывать плохо структурированные данные. В качестве примера можно привести учет почтовых отправлений, среди которых встречаются разнородные объекты: письма, газеты, бандероли, посылки, открытки. При реализации такой задачи в реляционной среде данных пришлось бы на каждый вид отправления заводить по отдельной таблице, что не всегда оправдано. В NoSQL можно ограничиться самыми общими признаками для формирования ключей, а алгоритмы обработки специфических признаков хранить в форме записей произвольной формы, анализ которых можно вообще за рамки БД (в компьютерный код, написанный на обычном языке программирования).
Типы NoSQL баз данных.
Базы данных NoSQL можно разделить на несколько категорий. При этом некоторые из них подпадают более чем под одну категорию.
- БД типа ключ-значение (Redis, Amazon DynamoDB). В них значения хранятся в связи с уникальным ключом, с помощью которого запись можно легко запросить и извлечь. Такой подход существенно облегчает разворачивание таких баз данных и управление ими. Кроме того, архитектура «ключ-значение» способствует скорости высокой работы приложений.
- Концепция «широких колонок» (примеры реализации — Cassandra, Scylla, HBase) представляет собой способ хранения, сходный с РБД (имеются таблицы, колонки), но без строгой типизации. Каждая запись в такой базе может представлять собой многомерный массив. Это позволяет хранить объемы информации, измеряющиеся в
петабайтах (тысячах терабайт) и при этом обеспечивать приемлемую скорость доступа к записям, что затруднительно или недостижимо для обычных РДБ. Для баз данных с «широкими колонками» разработан язык запросов, аналогичный SQL (CQL). - Документоориентированные БД (MongoDB, Couchbase) хранят данные в формате JSON, который разработан для описания объектов. К этой же категории можно отнести СУБД Elasticsearch, Splunk и Solr, которые дополнительно оснащены эффективными механизмами поиска.
- Графообразные БД (Neo4J, Datastax Enterprise Graph) представляют данные в форме сетей, где узлы могут быть связаны между собой. Такие базы данных удобны для хранения объектов, которые должны быть представлены и визуализированы как математические графы. На формат данных, хранящихся в узлах графов, не накладывается ограничений, за ними лишь закреплены метки. Такой подход делает графообразные ДБ удобным инструментом для анализа гетерогенных сред. Например, они используются для предотвращения мошенничеств в сети Facebook.
Рисунок 3. Востребованность NoSQL баз данных. Автор24 — интернет-биржа студенческих работ
Преимущества NoSQL:
- отсутствие жестких схем данных, характерных для РДБ;
- легкость масштабирования (расширения объемов хранимой информации);
- возможность быстрой синхронизации между узлами при работе в составе кластера.
Недостатки NoSQL:
- отсутствие достаточного количества специалистов для обслуживания таких БД;
- слишком сильные различия в форматах хранения, делающие затруднительным переход с одной базы данных на другую.
Преимущества и недостатки
Надлежащие системы управления базами данных помогают получить лучший доступ к данным, а также оптимизировать управление ими. В свою очередь, точечный доступ помогает конечным пользователям быстро и эффективно обмениваться данными в рамках выполнения задач организации.
Модель базы данных |
Год создания |
Преимущества |
Недостатки |
Иерархическая |
1960-й |
Очень быстрый доступ для чтения, четкая структура, технически простой. |
Исправлена структура в дереве, которая не допускает связи между деревьями. |
Сетевая |
Начало 1970-х |
Поддерживает несколько способов доступа к записи, без строгой иерархии. |
Плохой обзор с большими базами данных. |
Реляционная |
1970-й |
Простое, гибкое создание и редактирование, легко расширяемое, быстрый ввод в эксплуатацию, простое расширение, быстрый запуск, очень динамичный контекст. |
Неуправляемый с большими объемами данных, плохой сегментацией, атрибутами искусственного ключа, внешним интерфейсом программирования, плохо отражает свойства и поведение объектов. |
Ориентирована на объекты |
Конец 1980-х |
Лучшая поддержка объектноориентированных языков программирования, хранение мультимедийного контента. Поддерживает объектноориентированные языки программирования, позволяет хранить мультимедийный контент. |
Более низкая производительность с большими объемами данных, мало совместимых интерфейсов. |
Ориентирована на документы |
1980-е |
Соответствующие данные хранятся централизованно в независимых документах, свободной структуре, концепции мультимедиа, относится к классификации сущностей БД. |
Организационная работа относительно высока, часто требует навыков программирования. |
Модели электронной обработки
Для того чтобы подробно изучить вопрос, какие существуют варианты классификации БД, нельзя обойти тему моделей. Иерархические базы данных были первыми, разработанными в 60-х годах в трудах Холлерита, они зависели от типа хранения информации 1N/ NN в форме перевернутого дерева.
Отношения имеют тип 1N, когда родительский узел может иметь несколько дочерних подузлов, но дочерний узел не может принадлежать нескольким родительским. Их недостаток в том, что избыточность данных представлена не очень хорошо.
Модель базы данных в сети, предложенная CODASYL, является его первой системой управления (IMS), появилась она в 1968 году для программы НАСА «Аполлон». Она решала некоторые проблемы предыдущей иерархической модели, которые уже практически не используются в современном IT-процессе.
Для того чтобы понять современную модель, нужно рассмотреть, какие в классификации БД существуют отношения между родительскими и дочерними узлами. Сегодня используются отношения типа NN, когда дочернему подузлу разрешено принадлежать нескольким родительским узлам. Вместе с иерархической моделью она формирует первое поколение БД.
Преимущества модели: они предлагают отличную стабильность, хорошую производительность и лучшую избыточность обработки. Недостатком модели является сложность системы, которая требует знаний в области программирования.
Особенности транзакционных баз данных:
- Единственная цель — отправка и получение данных с высокой скоростью.
- Они нацелены на качественный анализ и производственные данные.
- Уникальным назначением является сбор и восстановление данных с максимально возможной скоростью, поэтому избыточность и дублирование информации не является проблемой, как с другими БД.
- Позволяют соединение с реляционными БД.
- Операции являются атомарными, в этом типе возможно только то, что они выполняются полностью (целостность) или не выполняются вообще.
В чём преимущества
Базы данных и их системы управления заточены на работу с большим объёмом данных и от лица большого числа пользователей. Сейчас вы поймёте.
Скорость — ещё одно преимущество базы данных. База данных устроена так, что она легко и быстро находит, записывает, переписывает и снова находит данные. Всё потому, что СУБД всегда знает, что где лежит и по какому критерию искать. Там не будет случайных данных в случайном месте.
Скорость важна ещё и потому, что СУБД обычно обслуживает сразу много потоков: одновременно ей могут пользоваться десятки и сотни тысяч человек, поэтому ей некогда копаться. В хорошо сделанных БД всё молниеносно.
Сложность. Базы данных нужны в числе прочего для хранения сложно структурированных данных. Мы привыкли думать, что база данных — это такая таблица, где есть строки и столбцы. Но база данных при правильной организации может намного больше:
- Связывать одну единицу данных с множеством других. Например, если один человек совершил много заказов со множеством товаров внутри каждого, база данных способна хранить и обрабатывать такие связи.
- База может хранить дерево данных — вроде того, о котором мы писали недавно. Попробуй в реальной жизни похранить дерево!
- В базах могут жить ссылки на другие фрагменты и отделы базы.
Базу можно представить как таблицу, но лишь в самом упрощённом виде. Для более сложных задач базу можно представить как очень сложное дерево, или огромный склад упорядоченных коробок, или даже как огромный завод по фасовке данных.
Справочная информация
ДокументыЗаконыИзвещенияУтверждения документовДоговораЗапросы предложенийТехнические заданияПланы развитияДокументоведениеАналитикаМероприятияКонкурсыИтогиАдминистрации городовПриказыКонтрактыВыполнение работПротоколы рассмотрения заявокАукционыПроектыПротоколыБюджетные организацииМуниципалитетыРайоныОбразованияПрограммыОтчетыпо упоминаниямДокументная базаЦенные бумагиПоложенияФинансовые документыПостановленияРубрикатор по темамФинансыгорода Российской Федерациирегионыпо точным датамРегламентыТерминыНаучная терминологияФинансоваяЭкономическаяВремяДаты2015 год2016 годДокументы в финансовой сферев инвестиционной