Большинство разработчиков сталкивается с работой над базами данных в их повседневной жизни, но не все из них знают теорию. И это приводит к возникновению множества вопросов в самое неподходящее время. Что такое реляционная база данных? Почему реляционная база данных использует первичные ключи и внешние ключи? Что на самом деле должно случиться здесь и там?
Чтобы иметь возможность профессионально работать с данными, вы должны понимать различные типы баз данных и их уникальные особенности. В данном подробном руководстве я представлю вам самый популярный тип, который называется реляционная база данных (БД).
Содержание
Базы Данных и Их Типы
Без использования базы данных все собранные или созданные данные будут напоминать случайный ворох информации без какого-либо порядка. Вы не можете получить к ней доступ и использовать её для ваших нужд. База данных является решением для хранения данных, которое предоставляет вам не только место для ваших данных, но также мощные методы управления ими. Базы данных стали важной частью компьютерных технологий ещё с 1960-х годов. Однако для управления ими мы используем определённую программу - систему управления базами данных (для краткости СУБД).
Последняя сделка действительна прямо сейчас:
GET 50% OFF
DataCamp Black Friday Sale
During this DataCamp Black Friday, you can access the top-rated courses with a 50% discount. Enroll now for way less!
На основе ваших потребностей или потребностей компании, вы можете выбрать одну из нескольких типов баз данных. Она может быть операционной, личной, распределённой и так далее. Вот только реляционные базы данных настолько популярны, что некоторые разработчики просто разделяют базы данных на две группы: реляционные и не реляционные. Так как SQL (Язык структурированных запросов) является стандартным методом работы с первым, последний тип также иногда зовёт NoSQL. Простыми примерами не реляционных баз данных могут стать хранилища ключ-значение, документов или графические базы данных. Хотя стоит признать, что популярность альтернатив растёт со временем, но реляционные базы данных до сих пор занимают львиную долю рынка.
Что Такое Реляционная База Данных На Самом Деле?
Первым, кто упомянул термин реляционные базы данных стал Эдгар Ф. Кодд в 1962 году. Работая в это время в IBM, он увидел огромный недостаток в навигационных базах данных, которые использовались в то время. По его мнению они были не только слишком сложные для использования, но также не имели прочной теории для поддержки принципов их работы. Пытаясь решить эту проблему, он написал документ под названием Реляционная модель данных для крупных общих банков данных. IBM не хотела претворять его идеи в жизнь. Тем не менее, благодаря его прорывной работе по переопределению моделей баз данных, Эдгар Ф. Кодд получил престижную премию Тюринга в 1981 году.
Для полного понимания того, что такое реляционная база данных вы должны осознать, что до того как она появилась разработчики использовали плоские базы данных. Вместо таблиц, файлы содержали длинный текст, в котором записи отделялись вертикальной линией:
Сотрудник, Команда, Опыт | Анна, Разработчик, 7 лет | Мелисса, Разработчик, 3 года |Эндрю, Разработчик, 4 года | Стэнли, Дизайнер, 4 года | Энди, Дизайнер, 5 лет | Кристина, Дизайнер, 2 года
Вы можете догадываться, что это делало доступ и использование информации очень неудобным. Вы не могли отсортировать, провести поиск или же отфильтровать информацию. Однако в реляционной базе данных, данные хранятся с чёткой структурой: в таблице, которая имеет столбцы и строки.
Каждый столбец (также называемый атрибутом или полем) имеет отдельное имя и определённый тип данных, назначенный для него. Каждая часть данных заполняет строку, также называемую кортежем или записью. Пример, что мы приводили выше теперь будет иметь три столбца (Сотрудник, Команда и Опыт) и шесть записей (по одной для каждого сотрудника). Каждый из этих столбцов будет хранить строчные типы данных или же мы можем сделать так, чтобы столбец Опыта хранил лишь целые числа и позволял вводить числа в годах.
Дизайн Реляционных Баз Данных: Объяснение Отношений
Пытаясь узнать, что такое реляционная база данных, вы заметите, что термин сам по себе довольно открытый: реляционная база данных или реляционная БД - это та, что допускает отношения базы данных.
Для баз данных такого типа вполне естественно иметь тысячи таблиц. Отношения в дизайне базы данных устанавливаются тогда, когда две или больше из них имеет отношению друг к другу и поэтому связаны вместе. Это не только упрощает обслуживание данных, но также увеличивает интегрированность и безопасность. Реляционные базы данных гораздо более просты в масштабировании и расширении.
Существуют три типа отношений в дизайне баз данных. Самым распространённым является один-ко-множеству: это означает, что строка в одной таблице может соответствовать нескольким строкам в другим, но не наоборот. В ранее представленном примере, один сотрудник мог принадлежать только одной команде - однако, одна команда имела множество сотрудников. Если бы у нас была другая таблица под названием Проекты, то это было бы отличным примером отношения многие-ко-многим: каждый человек мог работать над несколькими проектами и в каждом проекте могло быть задействовано несколько людей. Отношения базы данных один-к-одному считаются менее распространёнными.
Идентификация и Связь: Использование Правильных Ключей
Теперь, почему реляционные базы данных используют первичные ключи и внешние ключи? Это тоже связано с отношениями базы данных. Все и каждая таблица в базе данных имеет одну или несколько столбцов, которые выступают в качестве первичного ключа. Его предназначением является идентификация записей в таблице, таким образом значение в каждой записи в столбце должна быть уникальной. Например, вместо имени клиента, вы должны использовать, предположим, порядковый номер. Когда вы устанавливаете столбец в качестве первичного ключа, система убеждается в том, что вы не сможете ввести одно и то же значение дважды.
Используя внешний ключ, вы можете создавать отношения между записями в двух отдельных таблицах. Это столбец (или несколько столбцов), который содержит значения, соответствующие первичному ключу другой таблицы. Вы не можете добавить запись, которая не существует в указанной таблице, к таблице с внешним ключом. Представьте, что у вас есть две таблицы: Клиенты и Заказы. Вы можете легко связать первую со второй, создав внешний ключ, который относится к столбцу внешнего ключа (скорее всего, ID Клиента).
Вы знали?
Вы когда-либо хотели узнать, какие платформы для онлайн обучения лучше всего подходят для вашей карьеры?
Системы Управления Реляционных Баз Данных и SQL
Теперь, когда вы понимаете, что такое реляционная база данных, вы можете начать искать программы для управления ей. Так как мы имеем дело с самым популярным типом баз данных в мире, вы можете выбрать из целого списка уже известных и популярных имён, вроде MySQL, PostgreSQL, Oracle или SQL Server. Многие новички выбирают первые два, так как они имеют открытый исходный код и полностью бесплатны в использовании. Как Oracle, так и SQL Server имеют бесплатные версии, но у них есть определённые ограничения на доступный функционал.
По данным рейтинга DB-Engine, Oracle на данный момент является самой популярной реляционной базой данных в мире. Не удивительно - по данным их сайта, их система стала "само-запускаемой, само-защищаемой и само-восстанавливающейся" ещё с 2018 года. С меньшим количеством работы, которую оставляет машинное обучение для людей, системе удалось достичь лучшей безопасности и снизить риск ошибок. Очевидно, что такой базой легче пользоваться, так как Oracle берёт на себя большинство задач. Мы должны упомянуть, что с 2010 года MySQL также принадлежит Oracle Corporation и поддержка огромной компании оказывает влияние на надёжность системы. В ранее упомянутом рейтинге MySQL идёт на втором месте.
Выбор систем управления реляционных баз данных зависит в основном от потребностей ваших проектов. Теперь, когда вы знаете, что такое реляционная база данных, вам будет легче понять, что от неё ожидать. Конечно, чтобы работать с какой-либо из них, вам нужно освоить SQL. Мы расскажем вам секрет: онлайн курсы BitDegree станут отличным началом! Взгляните на интерактивный курс или более традиционный прямо сейчас.