Что такое реляционная база данных
Реляционные базы данных представляют собой базы данных, которые используются для хранения и предоставления доступа к взаимосвязанным элементам информации. Реляционные базы данных основаны на реляционной модели — интуитивно понятном, наглядном табличном способе представления данных. Каждая строка, содержащая в таблице такой базы данных, представляет собой запись с уникальным идентификатором, который называют ключом. Столбцы таблицы имеют атрибуты данных, а каждая запись обычно содержит значение для каждого атрибута, что дает возможность легко устанавливать взаимосвязь между элементами данных.
Подробнее о СУБД Oracle Database
Пример реляционной базы данных
В качестве примера рассмотрим две таблицы, которые небольшое предприятие использует для обработки заказов продукции. Первая таблица содержит информацию о заказчиках: каждая запись в ней включает в себя имя и адрес заказчика, платежные данные и информацию о доставке, номер телефона и т. д. Каждый элемент информации (атрибут) помещен в отдельный столбец базы данных, которому назначен уникальный идентификатор (ключ) для каждой строки. Во второй таблице (с информацией о заказе) каждая запись содержит идентификатор заказчика, совершившего заказ, название заказанного продукта, его количество, размер или цвет и т. д. Записи в этой таблице не содержат таких данных, как имя заказчика или его контактные данные.
У обеих таблиц есть только один общий элемент — идентификатор столбца (ключ). Благодаря наличию этого общего столбца реляционные базы данных могут устанавливать взаимосвязи между двумя таблицами. Когда приложение для обработки заказов передает заказ в базу данных, база данных обращается к таблице со сведениями о заказах, извлекает сведения о продукции и использует идентификатор заказчика из этой таблицы, чтобы найти сведения об оплате и доставке в таблице с информацией о нем. Затем на складе подбирают нужный продукт, заказчик своевременно получает свой заказ и производит оплату.
Структура реляционных баз данных
Реляционная модель подразумевает логическую структуру данных: таблицы, представления и индексы. Логическая структура отличается от физической структуры хранения. Такое разделение дает возможность администраторам управлять физической системой хранения, не меняя данных, содержащихся в логической структуре. Например, изменение имени файла базы данных не повлияет на хранящиеся в нем таблицы.
Разделение между физическим и логическим уровнем распространяется в том числе на операции, которые представляют собой четко определенные действия с данными и структурами базы данных. Логические операции дают возможность приложениям определять требования к необходимому содержанию, в то время как физические операции определяют способ доступа к данным и выполнения задачи.
Чтобы обеспечить точность и доступность данных, в реляционных базах должны соблюдаться определенные правила целостности. Например, в правилах целостности можно запретить использование дубликатов строк в таблицах, чтобы устранить вероятность попадания неправильной информации в базу данных.
Реляционная модель
В первых базах данных данные каждого приложения хранились в отдельной уникальной структуре. Если разработчик хотел создать приложение для использования таких данных, он должен был хорошо знать конкретную структуру, чтобы найти необходимые данные. Такой метод организации был неэффективен, сложен в обслуживании и затруднял оптимизацию эффективности приложений. Реляционная модель была разработана, чтобы устранить потребность в использовании разнообразных структур данных.
Она обеспечила стандартный способ представления данных и отправки запросов, которые могли быть использованы в любых приложениях. Разработчики уяснили, что таблицы являются ключевым преимуществом реляционных баз данных, так как обеспечивают интуитивно понятный, эффективный и гибкий способ хранения структурированной информации и получения к ней доступа.
Со временем, когда разработчики стали использовать язык структурированных запросов (SQL) для записи данных в базу и отправки запросов, стало очевидным и другое преимущество реляционной модели. Вот уже на протяжении многих лет SQL широко используется в качестве языка запросов в базах данных. Он основан на алгоритмах реляционной алгебры и четкой математической структуре, что обеспечивает простоту и эффективность при оптимизации любых запросов к базе данных. Для сравнения: при использовании других подходов приходится создавать отдельные, уникальные запросы.
Преимущества системы управления реляционными базами данных
Компании всех типов и размеров используют простую, но функциональную реляционную модель для обслуживания разнообразных информационных потребностей. Реляционные базы данных применяются для отслеживания товарных запасов, обработки торговых транзакций через Интернет, управления большими объемами критически важных данных заказчиков и т. д. Реляционные базы данных можно рекомендовать для обслуживания любых информационных потребностей, где элементы данных связаны между собой и необходимо обеспечивать безопасное и надежное управление ими на основе правил целостности.
Реляционные базы данных появились в 1970-х годах. На сегодняшний день преимущества реляционного подхода сделали его самой распространенной моделью для баз данных в мире.
Реляционная модель и согласованность данных
Реляционная модель наиболее эффективно поддерживает целостность данных во всех приложениях и копиях (экземплярах) базы данных. Например, когда заказчик кладет деньги на счет с помощью банкомата, а затем проверяет баланс на мобильном телефоне, он ожидает, что поступившие средства сразу же отобразятся на счете. Реляционные базы данных отлично подходят для обеспечения целостности данных в различных экземплярах базы в одно и то же время.
Другие типы баз данных не могут одновременно поддерживать целостность больших объемов данных. Некоторые современные типы баз данных, такие как NoSQL, обеспечивают только так называемую окончательную целостность. Это значит, что, когда выполняется масштабирование данных или несколько пользователей одновременно используют одни и те же данные, необходимо некоторое время на внесение изменений. В некоторых случаях окончательная целостность вполне приемлема (например, для обновления позиций в товарном каталоге), однако для критически важной операционной деятельности бизнеса (например, транзакций с использованием корзины) реляционные базы представляют собой фундаментальный стандарт.
Фиксация изменений и атомарность
В реляционных базах данных используются очень детальные и строгие бизнес-правила и политики в отношении фиксации изменений в базе данных (то есть сохранения изменений в данных на постоянной основе). Рассмотрим для примера складскую базу данных, в которой отслеживаются три запчасти, всегда использующиеся в комплекте. Когда одну из них извлекают из товарных запасов, две другие также должны извлекаться. Если одна из трех запчастей недоступна, две другие также не могут быть проданы отдельно, то есть, чтобы в базу данных можно было внести изменения, должны быть доступны все три запчасти. Реляционная база данных не разрешит сохранять изменения, если они не касаются всех трех запчастей. Эту особенность реляционных баз данных называют атомарностью или неразрывностью. Неразрывность необходима для сохранения точности данных в базе и обеспечения соответствия с правилами, нормативными положениями и бизнес-политиками.
Свойства ACID и РСУБД
Транзакции реляционных баз данных определяются четырьмя основными свойствами: : атомарность, согласованность, изоляция и долговечность, которые обычно обозначаются аббревиатурой ACID.
- Неразрывность определяет все элементы, которые необходимы для совершения транзакции в базе данных.
- Согласованность или целостность определяет правила сохранения состояния данных после выполнения транзакции.
- Изолированность гарантирует, что во избежание путаницы транзакция не повлияет на другие элементы до окончательного сохранения изменений.
- Неизменность обеспечивает неизменность данных после сохранения изменений в результате транзакции.
Хранимые процедуры и реляционные базы данных
Доступ к данным включает в себя множество повторяющихся действий.
Блокировки базы данных и параллельный доступ
Когда несколько пользователей или приложений пытаются одновременно изменить одни и те же данные, это может вести к возникновению конфликта в базе.
Блокировки и параллельный доступ снижают вероятность конфликтов и способствуют сохранению целостности данных.Блокировка не разрешает другим пользователям и приложениям получать доступ к данным во время их обновления. В некоторых базах данных блокировка может применяться к целой таблице, что негативно отражается на эффективности приложения. В других типах баз данных, например реляционных базах Oracle, блокировка выполняется на уровне одной записи, оставляя другие записи в таблице доступными. Такой подход помогает сохранить эффективность приложения.
Инструмент параллельного доступа используется, когда несколько пользователей или приложений пытаются одновременно выполнить запросы к одной базе данных. Он обеспечивает доступ пользователей и приложений к базе данных в соответствии с политиками контроля.
Характеристики, на которые следует обратить внимание при выборе реляционной базы данных
Программное обеспечение, которое используется для сохранения, контроля и извлечения данных в базе, а также выполнения к ней запросов, называют системой управления реляционной базой данных (РСУБД).
При выборе типа базы данных и продуктов на основе реляционных баз данных необходимо учитывать несколько факторов. Выбор РСУБД зависит от потребностей Вашей компании. Задайте себе следующие вопросы.
- Каковы наши требования к точности данных? Будем ли мы использовать бизнес-логику для хранения и обеспечения точности данных? Предъявляются ли к нашим данным более строгие требования в отношении точности (например, если Вы работаете с финансовыми данными и отчетностью)?
- Нужна ли нам масштабируемость? Какими объемами данных требуется управлять и каков прогнозируемый рост этих объемов? Должна ли модель базы данных поддерживать зеркальные копии (как отдельные экземпляры) в целях масштабирования? Если да, сможем ли мы обеспечивать целостность данных в этих экземплярах?
- Насколько важно наличие параллельного доступа? Потребуется ли пользователям и приложениям одновременный доступ к данным? Поддерживает ли ПО базы данных параллельный доступ без ущерба для безопасности?
- Каковы наши потребности в эффективности и надежности баз данных? Требуется ли нам высокоэффективная и надежная система? Каковы требования к скорости выполнения запросов? Какие гарантии дает поставщик услуг в соответствии с соглашением об уровне обслуживания (SLA) или на случай незапланированного простоя?
Реляционная база данных будущего: автономная база данных
На протяжении лет реляционные базы данных улучшали производительность, надежность и безопасность и становились проще в обслуживании. Однако их структура становилась все более сложной, и, как следствие, администрирование такой базы данных начало требовать немалых усилий. Вместо того чтобы использовать свои навыки для разработки инновационных приложений, которые будут приносить прибыль организации, разработчики вынуждены посвящать львиную долю времени на управление базой данных для оптимизации ее эффективности.
Сегодня автономные технологии используются, чтобы расширить возможности реляционной модели, технологии облачных баз данных и машинного обучения и создать реляционную базу данных нового типа. Самоуправляемая база данных (которую также называют автономной) сохраняет все преимущества и возможности реляционной модели и добавляет к ним средства на основе искусственного интеллекта, машинного обучения и автоматизации для мониторинга и оптимизации скорости выполнения запросов и управления. Например, чтобы улучшить скорость выполнения запросов, самоуправляемая база данных строит прогнозы и проверяет индексы, а затем применяет лучшие результаты на практике — и все это без участия администратора. Самоуправляемые базы данных постоянно вносят такие улучшения в собственную работу без человеческого вмешательства.
Автономные технологии дают возможность разработчикам больше не тратить время на рутинные задачи обслуживания. Например, больше не нужно заблаговременно определять требования к инфраструктуре. При использовании самоуправляемой базы данных можно расширять системы хранения и добавлять вычислительные ресурсы по мере возникновения необходимости в них. Разработчики могут создавать автономные реляционные базы данных всего за несколько шагов, ускоряя процесс разработки приложений.
Подробнее о СУБД Oracle Database
Что такое реляционная база данных?
Как работают реляционные базы данных, как осуществляется управление ими с помощью систем управления реляционными базами данных
Что такое реляционная база данных?
Реляционные базы данных — это базы данных, предназначенные для хранения и организации точек данных с заданными отношениями для быстрого доступа. Данные в реляционных базах данных упорядочиваются в виде таблиц, которые содержат информацию о каждой сущности и представляют заданные заранее категории с помощью строк и столбцов. Такое структурирование данных повышает эффективность и гибкость доступа, поэтому реляционные базы данных — наиболее распространенный тип баз данных. Реляционные базы данных поддерживают язык SQL. Это стандартизированный язык программирования, применяемый для хранения, обработки и получения данных. В рамках SQL существует встроенный язык для создания таблиц (DDL — язык описания данных) и язык для обработки данных (DML — язык обработки данных).
Что означает понятие «реляционный»? Это слово означает указание на отношение или наличие отношения. В контексте баз данных понятие «реляционный» относится главным образом к самим данным. Реляционные наборы данных обладают заранее заданными отношениями между собой. Например, база данных, содержащая сведения о клиентах компании, также может содержать данные об отдельных транзакциях, связанных с каждым счетом. Основное внимание в реляционных базах данных уделяется отношениям между хранящимися элементами данных.
Характеристики реляционных баз данных:
- Базы данных состоят из множества сущностей
- Стандартным интерфейсом является язык SQL
- Высокая структурированность, представление с помощью схемы (логической и физической)
- Снижение избыточности данных
Как работают реляционные базы данных
Реляционные базы данных обычно используют таблицы с данными, упорядоченными в виде строк (с сущностями) и столбцов (с атрибутами сущностей). Процесс упорядочения данных в таблицах называется нормализацией. Каждая строка содержит уникальный идентификатор или ключ, связывающий таблицы для установления отношения между ними. При отправке запроса к реляционной базе данных ключ используется для поиска связанных данных в разных наборах данных. Например, службе технической поддержки может потребоваться отслеживать взаимодействие клиентов по следующим характеристикам: тип проблемы, время решения проблемы, уровень удовлетворенности клиента. Все три характеристики объединяет идентификатор клиента: он позволяет создавать отношения и обеспечивает эффективную работу табличной структуры.
Подробнее о базах данных
Примеры реляционных баз данных
Реляционные базы данных эффективны для любой информации, в которых точки данных связаны друг с другом и нуждаются в согласованном и безопасном управлении на основе правил. Именно поэтому такие базы данных чаще всего применяются коммерческими компаниями и предприятиями. Когда компании анализируют собственные данные, они применяют реляционные базы данных для получения аналитических данных. Отчеты, создаваемые коммерческими компаниями для отслеживания складских запасов, финансов, продаж или для подготовки прогнозов на будущее, во многих случаях создаются с помощью реляционных баз данных.
Как упорядочены данные в реляционных базах данных? Для хранения, поиска и получения данных в реляционных базах данных используются таблицы с отношениями между ними. В реляционных базах данных схема базы данных определяет как логическую, так и физическую организацию данных.
Реляционные базы данных обладают так называемым режимом согласованности или целостности, который опирается на четыре свойства: атомарность, согласованность, изоляция и устойчивость. Ниже описывается значение всех этих четырех свойств.
- Атомарность определяет элементы, образующие полную транзакцию.
- Согласованность определяет правила поддержания целостности данных после транзакций.
- Благодаря изоляции эффекты транзакций являются невидимыми для других транзакций, чтобы не возникало конфликтов между ними.
- Устойчивость означает постоянство изменений данных после каждой зафиксированной транзакции.
Благодаря этим свойствам реляционные базы данных эффективно работают в решениях, где требуется высокая точность, например в транзакциях в финансовой сфере и в розничной торговле. Эта сфера называется оперативной обработкой транзакций (OLTP). Финансовые организации применяют базы данных для отслеживания огромного количества транзакций клиентов: от запросов выписки по счету до перевода средств между счетами. Реляционные базы данных идеально подходят для применения в банковской сфере, поскольку такие базы данных поддерживают значительное количество клиентов, поддерживают частые изменения данных в транзакциях и обладают малым временем отклика.
К реляционным базам данных относятся: SQL Server, Управляемый экземпляр SQL Azure, База данных SQL Azure, MySQL, PostgreSQL и MariaDB.
Что такое реляционная база данных MySQL?
MySQL — это распространенная реляционная база данных SQL с открытым кодом, выполняющая все основные команды SQL, такие как запись и запрос данных. MySQL — это надежная, стабильная и безопасная система управления базами данных (СУБД), она получила широкое распространение благодаря поддержке наиболее популярных языков программирования и протоколов. Благодаря высокой устойчивости MySQL используется в качестве основного хранилища данных во многих крупных организациях. MySQL также можно использовать в качестве встроенной базы данных для программного обеспечения, оборудования и устройств.
В MySQL обычно применяются надежные и гибкие средства безопасности, такие как проверка на основе узлов и шифрование трафика с использованием паролей. Веб-разработчики часто используют MySQL, поскольку базы данных MySQL отличаются простотой использования и содержат ряд функций для эффективной работы: обновляемые представления, хранимые процедуры и триггеры (особые процедуры, которые запускаются при выполнении определенных действий на сервере базы данных). MySQL является популярной платформой транзакций для электронной коммерции, поскольку MySQL прекрасно подходит для управления транзакциями, профилями пользователей и данными о складских запасах товаров. Среди преимуществ MySQL — высокий уровень совместимости с другими системами, а также поддержка развертывания в средах с виртуализацией, например на облачных платформах.
Что такое реляционная система управления базами данных?
Реляционные базы данных предназначены для управления значительными объемами критически важных для бизнеса данных клиентов. Тем не менее, по мере увеличения объема данных повышается сложность баз данных, становится труднее хранить данные в упорядоченном, доступном и безопасном состоянии. Для решения этой проблемы применяются системы управления базами данных (СУБД): они добавляют к реляционным таблицам уровень средств управления. Существуют разные структуры баз данных и разные системы управления, в которых доступны разные уровни организации, масштабируемости и применения. Когда администраторы работают с крупными объемами структурированных и неструктурированных данных (большие данные) в реальном времени, системы управления реляционными базами данных помогают анализировать и обобщать данные, чтобы обнаруживать заранее заданные отношения. Управление данных с помощью реляционных СУБД наиболее выгодно для бизнеса, поскольку дает возможность сделать более управляемыми данные, использующиеся несколькими приложениями или расположенные в разных местах.
Реляционные СУБД используют программное обеспечение, образующее постоянный интерфейс между пользователями, приложениями и базой данных, поэтому для пользователей данных упрощается навигация. Такой подход наиболее эффективен при работе с большими данными, поскольку объем данных определяет необходимость согласованности для пользователей, выполняющих запросы. Выбор СУБД зависит от расположения данных, от типа используемой архитектуры и от планируемого масштабирования.
Что такое реляционная модель базы данных?
Реляционная модель базы данных обычно обладает следующими характеристиками: высокая структурированность и поддержка языка программирования SQL. Многие базы данных используют реляционную модель, поскольку они предназначены для упорядочения данных и выявления отношений между основными точками данных, чтобы упрощать сортировку и поиск информации. В большинстве реляционных моделей используется традиционная табличная структура со столбцами и строками: это эффективный, интуитивный и гибкий способ хранения структурированных данных. Реляционная модель также решает проблему наличия множества произвольных структур данных в базах данных.
Масштаб моделей реляционных баз данных может различаться в самых широких пределах: от небольших решений на настольных компьютерах до крупных облачных систем. Такие модели используют базы данных SQL или способны обрабатывать инструкции SQL для работы запросов и обновлений. Реляционные модели определяются логической структурой данных (таблицы, индексы и представления) и отдельны от структур физических хранилищ (физических файлов). Согласованность данных является важнейшим признаком реляционных моделей баз данных, поскольку в таких базах данных поддерживается целостность данных между приложениями и копиями баз данных, которые также называются экземплярами. В реляционной модели базы данных экземпляры одной базы данных всегда содержат одинаковые данные.
В реляционных базах данных, разработанных в облаке, автоматически настраивается высокая доступность, то есть производится репликация или копирование данных в несколько участников, при этом участники находятся в разных зонах доступности. Поэтому данные остаются доступными даже при отключении какого-либо центра обработки данных.
Большие данные и реляционные базы данных
Традиционные реляционные базы данных предназначены для обработки больших объемов структурированных данных. Именно поэтому реляционные базы данных прекрасно подходят для структурированных больших данных: они опираются на SQL и могут использовать СУБД для управления данными. Тем не менее, в более крупных и более сложных наборах больших данных повышается разнообразие, то есть данные, поступающие из новых источников, становятся менее структурированными. В силу этого зачастую приходится применять нереляционные базы данных (NoSQL), которые поддерживают работу с неструктурированными и с полуструктурированными данными.
Вопросы и ответы
Что такое реляционная база данных
Реляционная база данных — это тип базы данных, в которой хранятся точки данных, связанные друг с другом, и предоставляется доступ к ним. Реляционные базы данных основаны на реляционной модели — интуитивно понятном и простом способе представления данных в таблицах. В реляционной базе данных каждая строка таблицы представляет собой запись с уникальным идентификатором, называемым ключом. Столбцы таблицы содержат атрибуты данных, и каждая запись обычно имеет значение для каждого атрибута, что упрощает установление отношений между точками данных.
Лучшая в отрасли RBDMS
Пример реляционной базы данных
Вот простой пример двух таблиц, которые малый бизнес может использовать для обработки заказов на свою продукцию. Первая таблица — это таблица информации о клиенте, поэтому каждая запись включает имя клиента, адрес, информацию о доставке и выставлении счетов, номер телефона и другую контактную информацию. Каждый бит информации (каждый атрибут) находится в своем собственном столбце, и база данных присваивает каждой строке уникальный идентификатор (ключ). Во второй таблице — таблице заказов клиентов — каждая запись включает идентификатор клиента, разместившего заказ, заказанный продукт, количество, выбранный размер и цвет и т. д., но не имя клиента или контактную информацию.
Эти две таблицы имеют только одну общую черту: столбец ID (ключ). Но благодаря этому общему столбцу реляционная база данных может создать связь между двумя таблицами. Затем, когда приложение обработки заказов компании отправляет заказ в базу данных, база данных может перейти к таблице заказов клиентов, получить правильную информацию о заказе продукта и использовать идентификатор клиента из этой таблицы для поиска счетов и доставки клиента. информация в информационной таблице клиента. Затем склад может получить правильный продукт, клиент может получить своевременную доставку заказа, а компания может получить оплату.
Структура реляционных баз данных
Реляционная модель означает, что логические структуры данных — таблицы данных, представления и индексы — отделены от физических структур хранения. Это разделение означает, что администраторы баз данных могут управлять физическим хранилищем данных, не затрагивая доступ к этим данным как к логической структуре. Например, переименование файла базы данных не приводит к переименованию хранящихся в нем таблиц.
Различие между логическими и физическими также применяется к операциям базы данных, которые представляют собой четко определенные действия, позволяющие приложениям манипулировать данными и структурами базы данных. Логические операции позволяют приложению указывать необходимое ему содержимое, а физические операции определяют, как следует обращаться к этим данным, а затем выполняют задачу.
Чтобы данные всегда были точными и доступными, реляционные базы данных следуют определенным правилам целостности. Например, правило целостности может указать, что повторяющиеся строки не разрешены в таблице, чтобы исключить возможность ввода ошибочной информации в базу данных.
Реляционная модель
В первые годы существования баз данных каждое приложение хранило данные в собственной уникальной структуре. Когда разработчики хотели создавать приложения для использования этих данных, им нужно было много знать о конкретной структуре данных, чтобы найти нужные данные. Эти структуры данных были неэффективны, их было сложно поддерживать и трудно оптимизировать для обеспечения хорошей производительности приложений. Модель реляционной базы данных была разработана для решения проблемы множества произвольных структур данных.
Реляционная модель данных обеспечивает стандартный способ представления и запроса данных, который может использоваться любым приложением. С самого начала разработчики осознавали, что главная сила модели реляционной базы данных заключалась в использовании таблиц, которые представляли собой интуитивно понятный, эффективный и гибкий способ хранения структурированной информации и доступа к ней.
Со временем появилась еще одна сильная сторона реляционной модели, поскольку разработчики начали использовать язык структурированных запросов (SQL) для записи и запроса данных в базе данных. В течение многих лет SQL широко использовался в качестве языка запросов к базе данных. Основанный на реляционной алгебре, SQL предоставляет внутренне согласованный математический язык, который упрощает повышение производительности всех запросов к базе данных. Для сравнения, другие подходы должны определять отдельные запросы.
Преимущества системы управления реляционными базами данных
Простая, но мощная реляционная модель используется организациями всех типов и размеров для самых разнообразных информационных потребностей. Реляционные базы данных используются для отслеживания запасов, обработки транзакций электронной торговли, управления огромными объемами критически важной информации о клиентах и многого другого. Реляционная база данных может рассматриваться для любой потребности в информации, в которой точки данных связаны друг с другом и должны управляться безопасным, основанным на правилах и согласованным способом.
Реляционные базы данных существуют с 1970-х годов. Сегодня преимущества реляционной модели продолжают делать ее наиболее широко используемой моделью для баз данных.
Реляционная модель и согласованность данных
Реляционная модель лучше всего обеспечивает согласованность данных между приложениями и копиями баз данных (называемых экземплярами). Например, когда клиент вносит деньги в банкомат, а затем просматривает баланс счета на мобильном телефоне, клиент ожидает, что этот депозит будет немедленно отражен в обновленном балансе счета. Реляционные базы данных превосходны в такой согласованности данных, гарантируя, что несколько экземпляров базы данных всегда будут иметь одни и те же данные.
Для других типов баз данных сложно поддерживать такой уровень своевременной согласованности с большими объемами данных. Некоторые современные базы данных, такие как NoSQL, могут обеспечивать только «согласованность в конечном итоге». В соответствии с этим принципом, когда база данных масштабируется или когда несколько пользователей одновременно обращаются к одним и тем же данным, данным требуется некоторое время, чтобы «наверстать упущенное». Возможная непротиворечивость приемлема для некоторых целей, например для ведения списков в каталоге продуктов, но для важных бизнес-операций, таких как операции с корзиной покупок, реляционная база данных по-прежнему остается золотым стандартом.
Приверженность и атомарность
Реляционные базы данных обрабатывают бизнес-правила и политики на очень детальном уровне, со строгими политиками в отношении обязательности (то есть, делая изменения в базе данных постоянными). Например, рассмотрим базу данных инвентаризации, которая отслеживает три детали, которые всегда используются вместе. Когда одна часть вытягивается из инвентаря, две другие тоже должны вытягиваться. Если одна из трех частей недоступна, ни одна из частей не должна быть извлечена — все три части должны быть доступны до того, как база данных примет какое-либо обязательство. Реляционная база данных не будет фиксировать одну часть, пока не узнает, что может фиксировать все три. Эта многогранная возможность обязательства называется атомарностью. Атомарность — это ключ к поддержанию точности данных в базе данных и обеспечению их соответствия правилам, положениям и политикам бизнеса.
Свойства ACID и РСУБД
Четыре важнейших свойства определяют транзакции реляционной базы данных: атомарность, непротиворечивость, изоляция и устойчивость — обычно называемые ACID.
- Атомарность определяет все элементы, составляющие полную транзакцию базы данных.
- Согласованность определяет правила поддержания точек данных в правильном состоянии после транзакции.
- Изоляция сохраняет эффект транзакции невидимым для других, пока она не будет зафиксирована, чтобы избежать путаницы.
- Долговечность гарантирует, что изменения данных станут постоянными после фиксации транзакции.
Хранимые процедуры и реляционные базы данных
Доступ к данным включает множество повторяющихся действий. Например, простой запрос на получение информации из таблицы данных может потребоваться повторить сотни или тысячи раз, чтобы получить желаемый результат. Эти функции доступа к данным требуют некоторого типа кода для доступа к базе данных. Разработчики приложений не хотят писать новый код для этих функций в каждом новом приложении. К счастью, реляционные базы данных допускают хранимые процедуры, представляющие собой блоки кода, доступ к которым можно получить с помощью простого вызова приложения. Например, одна хранимая процедура может обеспечить согласованную маркировку записей для пользователей нескольких приложений. Хранимые процедуры также могут помочь разработчикам убедиться, что определенные функции данных в приложении реализованы определенным образом.
Блокировка базы данных и параллелизм
Конфликты могут возникать в базе данных, когда несколько пользователей или приложений пытаются изменить одни и те же данные одновременно. Методы блокировки и параллелизма снижают вероятность конфликтов, сохраняя при этом целостность данных.
Блокировка предотвращает доступ других пользователей и приложений к данным во время их обновления. В некоторых базах данных блокировка применяется ко всей таблице, что отрицательно сказывается на производительности приложения. Другие базы данных, такие как реляционные базы данных Oracle, применяют блокировки на уровне записей, оставляя другие записи в таблице доступными, что помогает повысить производительность приложений.
Параллелизм управляет активностью, когда несколько пользователей или приложений одновременно вызывают запросы к одной и той же базе данных. Эта возможность обеспечивает правильный доступ для пользователей и приложений в соответствии с политиками, определенными для управления данными.
На что обратить внимание при выборе реляционной базы данных
Программное обеспечение, используемое для хранения, управления, запроса и извлечения данных, хранящихся в реляционной базе данных, называется системой управления реляционной базой данных (RDBMS). РСУБД обеспечивает интерфейс между пользователями, приложениями и базой данных, а также административные функции для управления хранением данных, доступом и производительностью.
Несколько факторов могут повлиять на ваше решение при выборе между типами баз данных и продуктами реляционных баз данных. Выбранная вами СУБД будет зависеть от потребностей вашего бизнеса. Задайте себе следующие вопросы:
- Каковы наши требования к точности данных? Будут ли хранение и точность данных зависеть от бизнес-логики? Есть ли у наших данных строгие требования к точности (например, финансовые данные и правительственные отчеты)?
- Нужна ли нам масштабируемость? Каков масштаб данных, которыми нужно управлять, и каков их ожидаемый рост? Должна ли модель базы данных поддерживать зеркальные копии базы данных (как отдельные экземпляры) для масштабируемости? Если да, то может ли он поддерживать согласованность данных в этих экземплярах?
- Насколько важен параллелизм? Потребуется ли нескольким пользователям и приложениям одновременный доступ к данным? Поддерживает ли программное обеспечение базы данных параллелизм при защите данных?
- Каковы наши потребности в производительности и надежности? Нужен ли нам высокопроизводительный и надежный продукт? Каковы требования к производительности запроса-ответа? Каковы обязательства поставщика по соглашениям об уровне обслуживания (SLA) или незапланированным простоям?
Реляционная база данных будущего: самоуправляемая база данных
За прошедшие годы реляционные базы данных стали лучше, быстрее, надежнее и с ними стало проще работать. Но они также стали более сложными, и администрирование базы данных уже давно стало работой на полный рабочий день. Вместо того чтобы использовать свой опыт для разработки инновационных приложений, приносящих пользу бизнесу, разработчикам приходилось тратить большую часть своего времени на действия по управлению, необходимые для оптимизации производительности базы данных.
Сегодня автономная технология опирается на сильные стороны реляционной модели, технологии облачных баз данных и машинного обучения, чтобы создать реляционную базу данных нового типа. Автономная база данных (также известная как автономная база данных) поддерживает мощь и преимущества реляционной модели, но использует искусственный интеллект (ИИ), машинное обучение и автоматизацию для мониторинга и повышения производительности запросов и задач управления. Например, чтобы повысить производительность запросов, автономная база данных может выдвигать гипотезы и тестировать индексы, чтобы выполнять запросы быстрее, а затем запускать лучшие из них в рабочую среду — и все это самостоятельно. База данных с самостоятельным вождением непрерывно вносит эти улучшения без участия человека.
Автономная технология освобождает разработчиков от рутинных задач по управлению базой данных. Например, им больше не нужно заранее определять требования к инфраструктуре. Вместо этого с автономной базой данных они могут добавлять ресурсы хранения и вычислений по мере необходимости для поддержки роста базы данных. Всего за несколько шагов разработчики могут легко создать автономную реляционную базу данных, что сокращает время разработки приложений.
Узнайте больше о Oracle RDBMS Database
Что такое реляционная база данных? – Amazon Web Services (AWS)
Реляционная база данных представляет собой набор элементов данных с предопределенными отношениями между ними. Эти элементы организованы в виде набора таблиц со столбцами и строками. Таблицы используются для хранения информации об объектах, которые должны быть представлены в базе данных. Каждый столбец в таблице содержит определенный тип данных, а поле хранит фактическое значение атрибута. Строки в таблице представляют набор связанных значений одного объекта или сущности. Каждая строка в таблице может быть помечена уникальным идентификатором, называемым первичным ключом, а строки в нескольких таблицах могут быть связаны с помощью внешних ключей. Доступ к этим данным можно получить различными способами без реорганизации самих таблиц базы данных.
6:44
Понимание Amazon Relational Database Service (RDS) SQL или язык структурированных запросов — это основной интерфейс, используемый для связи с реляционными базами данных. SQL стал стандартом Американского национального института стандартов (ANSI) в 1986 году. Стандарт ANSI SQL поддерживается всеми популярными механизмами реляционных баз данных, и некоторые из этих механизмов также имеют расширение ANSI SQL для поддержки функций, специфичных для этого механизма. SQL используется для добавления, обновления или удаления строк данных, извлечения подмножеств данных для приложений обработки транзакций и аналитики, а также для управления всеми аспектами базы данных.
Целостность данных
Целостность данных — это полная полнота, точность и согласованность данных. Реляционные базы данных используют набор ограничений для обеспечения целостности данных в базе данных. К ним относятся первичные ключи, внешние ключи, ограничение «Not NULL», ограничение «Unique», ограничение «Default» и ограничение «Check». Эти ограничения целостности помогают применять бизнес-правила к данным в таблицах для обеспечения точности и надежности данных. В дополнение к этому, большинство реляционных баз данных также позволяют встраивать пользовательский код в триггеры, которые выполняются на основе действия в базе данных.
Транзакции
Транзакция базы данных — это один или несколько операторов SQL, которые выполняются как последовательность операций, формирующих единую логическую единицу работы. Транзакции обеспечивают предложение «все или ничего», что означает, что вся транзакция должна завершиться как единое целое и быть записана в базу данных, иначе ни один из отдельных компонентов транзакции не должен пройти. В терминологии реляционной базы данных результатом транзакции является COMMIT или ROLLBACK. Каждая транзакция обрабатывается последовательно и надежно независимо от других транзакций.
Соответствие ACID
Все транзакции базы данных должны быть совместимы с ACID или быть атомарными, непротиворечивыми, изолированными и устойчивыми для обеспечения целостности данных.
Атомарность требует, чтобы либо транзакция в целом была успешно выполнена, либо в случае сбоя части транзакции вся транзакция была признана недействительной. Согласованность требует, чтобы данные, записываемые в базу данных как часть транзакции, соответствовали всем определенным правилам и ограничениям, включая ограничения, каскады и триггеры. Изоляция имеет решающее значение для достижения контроля параллелизма и гарантирует, что каждая транзакция независима сама от себя. Долговечность требует, чтобы все изменения, внесенные в базу данных, были постоянными после успешного завершения транзакции.
Amazon Aurora
Amazon Aurora — это движок реляционной базы данных, совместимый с MySQL и PostgreSQL, который сочетает в себе скорость и доступность высококачественных коммерческих баз данных с простотой и экономичностью баз данных с открытым исходным кодом. Amazon Aurora обеспечивает до пяти раз более высокую производительность, чем MySQL, а также безопасность, доступность и надежность коммерческой базы данных при стоимости в десять раз меньше. Узнать больше »
Oracle
Amazon RDS позволяет развертывать несколько выпусков базы данных Oracle за считанные минуты с помощью экономически эффективных и масштабируемых аппаратных ресурсов. Вы можете использовать существующие лицензии Oracle или платить за использование лицензий по часам. RDS позволяет вам сосредоточиться на разработке приложений, управляя сложными задачами администрирования базы данных, включая выделение ресурсов, резервное копирование, установку исправлений, мониторинг и масштабирование оборудования. Узнать больше »
Microsoft SQL Server
Amazon RDS для SQL Server упрощает настройку, эксплуатацию и масштабирование SQL Server в облаке. Вы можете развернуть несколько выпусков SQL Server, включая Express, Web, Standard и Enterprise. Поскольку Amazon RDS для SQL Server предоставляет вам прямой доступ к собственным возможностям SQL Server, ваши приложения и инструменты должны работать без каких-либо изменений. Узнать больше »
MySQL — это система управления реляционными базами данных (RDBMS) с открытым исходным кодом, используемая очень большим количеством веб-приложений. Amazon RDS для MySQL предоставляет вам доступ к возможностям знакомого ядра базы данных MySQL. Это означает, что код, приложения и инструменты, которые вы уже используете сегодня с существующими базами данных, можно использовать с Amazon RDS без каких-либо изменений. Узнать больше »
PostgreSQL
PostgreSQL — это мощная система объектно-реляционных баз данных корпоративного класса с открытым исходным кодом, ориентированная на расширяемость и соответствие стандартам.