Базы данных. Базы данных Что такое бд в вк

Что такое база данных в информатике

В информатике, понятие база данных - это набор данных для информационных сетей и пользователей, хранящихся в особом, организованном виде. Вид хранения данных определяется заданной структурой (схемой) базы данных и правилами ее управления.

Сами по себе, базы данных бесполезны, если нет возможности ими управлять. Под управлением базой данных понимаем возможность индивидуального или коллективного добавления информации, ее сортировку, частичное или полное копирование и перемещение, объединение двух или нескольких баз данных. Для управления базами данных созданы программные продукты, являющиеся программным обеспечением баз данных. Называются они СУБД – системы управления базами данных .

Что такое СУБД и SQL

Именно с имеют дело потребители, то есть мы с вами. Современные СУБД позволяют обрабатывать не только тексты или графику, но и медиафайлы (аудио и видео файлы).

Любой программный продукт имеет свой язык, при помощи которого он управляется. Не исключение и СУБД. Один из основных языков для общения с СУБД является SQL (structured query language - язык структурированных запросов) .

Стоит отметить, что по характеру использования СУБД делятся на однопользовательские (для одного пользователя – локального компьютера) и много пользовательские (для сетей).

Я уверен вы не думаете, что существует одна универсальная СУБД. И правильно, их десятки. В рамках этого раздела мы ограничим себя работой с бесплатной и самой распространенной СУБД MySQL.

СУБД MySQL

СУБД MySQL работает только с реляционными базами данных. Реляционные базы данных наиболее просты для первичного изучения. Кроме этого они используются на всех хостингах и серверах для массового пользования.

Осталось дать понятие реляционная база данных. Это простые таблицы, в которых есть информационные строки и столбцы. Пересечение строки и столбца называют ячейкой. Вся база данных состоит из нескольких или многих таблиц, причем, все таблицы между собой взаимодействуют.

Для начала - в самом деле, что же это такое - "база данных"? В общем-то ничего особенного за этим словосочетанием не скрывается - это всего лишь программа, обеспечивающая работу с какими-то данными. Эта программа умеет читать/записывать данные, которые хранятся в некотором файле, сортировать их, выбирать по критериям и выводить в понятном для пользователя виде:) Условно можно считать, что база состоит из трех уровней: файл с данными, ядро базы (обеспечивающее чтение и запись данных, выборку, сортировку и т.п.) и интерфейс, обеспечивающий формирование запросов к базе, а также удобное представление данных для конечного пользователя.

Работая с БД, вы обязательно столкнетесь с такими понятиями: набор данных, запись и поле. Поле - это единица информации, например, имя, дата или что-нибудь еще. Запись - это набор полей, относящихся к одному объекту, например, записью может быть совокупность имени и фамилии. Набор данных - это некоторый набор записей, выбранных из базы по какому-то признаку.

Данные в базе хранятся в таблицах, где каждая строчка таблицы представляет из себя какую-то запись. Большинство современных баз данных являются реляционными, т.е. такими, где данные распределены по нескольким таблицам. Раньше были и нереляционные, но сейчас они вымерли:) Почему реляционные БД вытеснили нереляционные? Рассмотрим такой пример: вам нужна база, в которой бы хранилась информация о заказах, сделанных вашими клиентами. В принципе, все данные можно сохранить в одной таблице: имя клиента, его адрес, дата заказа, его номер и что именно заказано. Но, т.к. клиент может делать несколько заказов, то в базе будут повторяться одни и те же данные: имя и адрес клиента. Для того, чтобы этого избежать, логично создать две таблицы: в одной записать имя, адрес и порядковый номер клиента, а в другой - данные о заказах, причем вместо нескольких полей, описывающих клиента, ввести одно поле, содержащее его порядковый номер из первой таблицы. Разумеется, этот пример очень прост - реальные базы данных зачастую состоят из нескольких десятков таблиц, связанных между собой в виде довольно сложных цепочек. Разработка структуры базы данных является одной из наиболее сложных задач, стоящих перед программистом - именно от удачного выбора структуры зависит удобство и скорость работы с базой.

Базы данных используются везде - в бухгалтерии, на складах, как записная книжка и т.п. Без БД в Интернете не обходится практически ни один более или менее крупный сайт. База на таких сайтах может быть интерактивной или же использоваться для генерации страниц.

    Определение базы данных.

    Архитектура базы данных.

    Администратор базы данных

    Словарь данных

    Пользователи

    Основные этапы проектирования БД

I. Определение базы данных

Развитие методов и средств обработки данных в информационных системах привело к появлению концепции БД. Основной особенностью этой концепции является представление, как самих данных, так и их обобщенных моделей (описания данных) в запоминающей среде ЭВМ.

Прежде всего, существует база данных – совокупность данных, хранящихся на дисках или каком-нибудь другом носителе. Во-вторых, имеется набор обычных прикладных программ пакетной обработки, которые работают с этими данными, обрабатывая их обычным способом (выборка, обновление, удаление). Дополнительно или взамен может присутствовать группа оперативных пользователей, взаимодействующих с базой данных с удаленных терминалов и также выполняющих в общем случае функции выборки, обновления и удаления. В-третьих, БД является интегрированной. Это означает, что БД содержит данные для многих пользователей, а не для одного из них. Это, в свою очередь, предполагает. Что каждый отдельный пользователь связан только с небольшой частью этих данных. Кроме того, данные отдельных пользователей могут перекрываться разными способами, то есть отдельные фрагменты данных могут совместно использоваться многими различными пользователями.

База данных – совокупность взаимосвязанных, хранящихся вместе данных, при наличии такой минимальной избыточности, которая допускает их использование оптимальным образом для одного или нескольких приложений (определение Мартина). Данные запоминаются так, чтобы они были независимы от программ, использующих эти данные. Для добавления новых или модификации существующих данных, а также поиска данных в БД применяется СУБД. Данные структурируются таким образом, чтобы была обеспечена возможность дальнейшего наращивания приложений. Говорят, что система содержит совокупность баз данных, если эти базы данных структурно полностью самостоятельны.

Под базой данных понимают поименованную совокупность данных, отображающих состояние объектов и их отношений в рассматриваемой предметной области.

База данных – это информационная система, которая представляет собой программный комплекс, функции которого состоят в поддержке надежного хранения информации в памяти компьютера, выполнении специфических, для данного приложения, преобразований информации и/или вычислений, предоставлении пользователям удобного и легко осваиваемого интерфейса

База данных – это упорядоченная совокупность данных, предназначенных для хранения, накопления и обработки с помощью ЭВМ, которая предполагает какой либо метод сохранения информации на диске и возможности доступа и манипуляции с нею, а так же набор программных продуктов, предоставляющий пользователю все допустимые средства работы с данными. Для создания и ведения базы данных (обновления, обеспечения доступа к ним по запросам и выдачи их пользователю) используется набор языковых и программных средств, называемых системой управления базы данных (СУБД).

База данных – упорядоченная совокупность данных, предназначенная для хранения, накопления и обработки с помощью ЭВМ. Для создания и обработки используется набор языковых и программных средств СУБД

СУБД – это совокупность языковых и программных средств, предназначенных для ведения и совместного использования БД многими пользователями.

Федеральное агентство по образованию

Государственное Общеобразовательное Учреждение

Среднепрофессионального Обучения

«Тульский экономический колледж»

По дисциплине «Информатика»

На тему: «База данных. Понятие базы данных. Виды баз данных. Объекты для работы с базами данных. Типы данных в базах и таблицах Access. Основные элементы и понятия баз данных»

Подготовила студентка 2 курса

группы 216-БП

Храмова Анна

Проверил преподаватель:

Васильева И.В.

Щёкино,2007

С О Д Е Р Ж А Н И Е:

1. Введение…………………………………………...…………….……2

2. Понятие базы данных………………………………………………..3

3. Виды базы данных………………………………………….………4-5

4. Объекты для работы с базами данных…………………………...6-7

5. Типы данных в базах………………………………………………….8

6. Типы данных в таблицах Access……………………………………9

7. Основные элементы и понятия баз данных…………………..10-15

8. Тест…………………………………………………………….…16-17

9. Ответы на тест……………………………………………...…….…18

10. Вопросы для самопроверки………………………………..........19

11. Список используемой литературы……………………………….20

12. Презентация……………………………………………………21-33

13. Рецензия………………………………………………..…………..34

В В Е Д Е Н И Е:

Мы познакомились с работой Excel и знаем, что это приложение создано специально для решения задач обработки табличных данных.

Существуют системы (приложения) для решения иных классов задач. В частности, очень большую роль играют сейчас программы (приложения, системы), цепь которых – хранение данных и выдача данных по запросу пользователя.

Использование ЭВМ именно для решения этого класса задач становится всё более массовым явлением.

Смело можно сказать, что такие задачи и необходимость их решения существуют в любой фирме, на любом предприятии.

Основное понятие для подобного круга задач – база данных. Так называется файл или группа файлов стандартной структуры, служащая для хранения данных.

Для разработки программ, систем программ, работающих с базами данных, используются специальные средства – системы управления базами данных (СУБД).

СУБД включает, как правило, специальный язык программирования и все прочие средства, необходимые для разработки указанных программ.

В настоящее время наиболее известными СУБД являются FOXPRO и ACCESS. Последняя входит в состав профессионального пакета MS Office 97.

Это современные системы с большими возможностями, предназначенные для разработки сложных программных комплексов, и знакомство с ними для пользователя ЭВМ исключительно полезно, но в рамках настоящего пособия осуществить его затруднительно.

Понятие базы данных

База данных (БД) – это совокупность массивов и файлов данных, организованная по определённым правилам, предусматривающим стандартные принципы описания, хранения и обработки данных независимо от их вида.

База данных (БД) – совокупность организованной информации, относящейся к определённой предметной области, предназначенная для длительного хранения во внешней памяти компьютера и постоянного применения.

Виды БД:

1.Фактографическая – содержит краткую информацию об объектах некоторой системы в строго фиксированном формате;

2.Документальная – содержит документы самого разного типа: текстовые, графические, звуковые, мультимедийные;

3.Распределённая – база данных, разные части которой хранятся на различных компьютерах, объединённых в сеть;

4.Централизованная – база данных, хранящихся на одном компьютере;

5.Реляционная – база данных с табличной организацией данных.

Одно из основных свойств БД – независимость данных от программы, использующих эти данные.

Работа с базой данных требует решения различных задач, основные из них следующие:

Создание базы, запись данных в базу, корректировка данных, выборка данных из базы по запросам пользователя.

Задачи этого списка называются стандартными.

Следующее понятие, связанное с базой данных: программа для работы с базой данных – это программа, которая обеспечивает решение требуемого комплекса задач. Любая подобная программа должна уметь решать все задачи стандартного набора.

База данных в разных системах имеет различную структуру.

В ПВЭМ обычно используются реляционные БД – в таких базах файл является по структуре таблицей. В ней столбцы называются полями, строки – записями.

Примером БД может служить расписание движения поездов или автобусов. Здесь каждая строчка – запись отражает данные строго одного объекта. База включает поля: номер рейса, маршрута следования, время отправления и т.д.

Классическим примером БД является и телефонный справочник. Запрос к базе данных – это предписание, указывающее, какие данные пользователь желает получить из базы.

Некоторые запросы могут представлять собой серьёзную задачу, для решения которой потребляется составлять сложную программу. Например, запрос к базе – автобусному расписанию: определить разницу в среднем интервале отправления автобусов из Ростова в Таганрог и из Ростова в Шахты.

Объекты для работы с базами данных

Для создания приложения, позволяющего просматривать и редактировать базы данных, нам потребуется три звена:

набор данных

источник данных

визуальные элементы управления

В нашем случае эта триада реализуется в виде:

Table

DataSource

DBGrid

Table подключается непосредственно к таблице в базе данных. Для этого нужно установить псевдоним базы в свойстве DataBaseName и имя таблицы в свойстве TableName, а затем активизировать связь: свойство Active = true.

Однако, поскольку Table является невизуальным компонентом, хотя связь с базой и установлена, пользователь не в состоянии увидеть какие – либо данные. Поэтому необходимо добавить визуальные компоненты, отображающие эти данные. В нашем случае это сетка DBGrid. Сетка сама по себе «не знает», какие данные ей нужно отображать, её нужно подключить к Table, что и делается через компонент – посредник DataSource.

А зачем нужен компонент – посредник? Почему бы сразу не подключаться к Table?

Допустим, несколько визуальных компонентов – таблица, поля ввода и т.п. подключены к таблице. А нам нужно быстро переключить их все на другую подобную таблицу. С DataSource это сделать несложно - достаточно просто поменять свойство DataSet, а вот без DataSource пришлось бы менять указатели у каждого компонента.

Приложения баз данных – нить, связывающая БД и пользователя:

БД – набор данных – источник данных – визуальные компоненты – пользователь

Набор данных:

Table (таблица, навигационный доступ)

Query (запрос, реляционный доступ)

Визуальные компоненты:

Сетки DBGrid , DBCtrlGrid

Навигатор DBNavigator

Всяческие аналоги Lable , Edit и т.д.

Компоненты подстановки

Типы данных в базах

В Access можно определить следующие типы полей:

Текстовый – текстовая строка; максимальная длина задаётся параметром «размер», но не может быть больше 255

Поле МЕМО – текст длиной до 65535 символов

Числовой – в параметре «Размер поля» можно задать поле: байт, целое, дейсвительное и т.п.

Дата/время – поле, хранящее данные о времени.

Денежный – специальный формат для финансовых нужд, по сути являющийся числовым

Счётчик – автоинкрементное поле. При добавлении новой записи внутренний счётчик таблицы увеличивается на единицу и записывается в данное поле новой записи. Таким образом, значения этого поля гарантированно различны для разных записей. Тип предназначен для ключевого поля

Логический – да или нет, правда или ложь, включен или выключен

Объект OLE – в этом поле могут храниться документы, картинки, звуки и т.п. Поле является частным случаем BLOB – полей ( Binary Large Object ), встречающихся в различных базах данных

Подстановка

Типы данных в таблицах Access :

Текстовый

Поле МЕМО

Числовой

Дата\время

Денежный

Счётчик

Логический

Объект OLE

Не надо забывать про индексы.

Связывать таблицы.

Связь с обеспечением целостности контролирует каскадное удаление и модификацию данных.

Монопольный доступ к БД нужен для того, чтобы производить в ней фундаментальные изменения.

Основные понятия и элементы баз данных

Базы данных понадобились тогда, когда возникла потребность хранить большие объёмы однотипной информации, уметь её оперативно использовать. Базами данных (в широком понимании этого слова) пользовались на протяжении всей истории жрецы, чиновники, купцы, ростовщики, алхимики.

Основное требование к базам данных – удобство доступа к данным, возможность оперативно получить исчерпывающую информацию по любому интересующему вопросу (важно не только то, что информация содержится в базе, важно то, насколько она хорошо структирована и целостна).

Лишь только появились и распространились компьютеры, почти сразу на них возложили тяжёлый и кропотливый труд по обработке и структурированию данных, появились базы данных (БД) в их нынешнем понимании.

Согласно современным требованиям к базам данных, информация, содержащаяся в них, должна быть:

непротиворечивой (не должно быть данных, противоречащих друг другу);

неизбыточной (следует избегать ненужного дублирования информации в базе, избыточность может привести к противоречивости – например, если какие – то данные изменяют, а их копию в другой части базы забыли изменить);

целостной (все данные должны быть связаны, не должно быть ссылок на несуществующие в базе данные)

Реляционная модель баз данных была предложена Эдгаром Коддом в конце 70-х годов. В рамках этой модели база данных представляет собой набор таблиц, связанных друг с другом отношениями. При достаточной простоте (а значит, и удобстве реализации на компьютере) данная модель обладает гибкостью, позволяющей описывать сложно структурированные данные. Кроме того, для этой модели достаточно глубоко проработано теоретическое обоснование, что также даёт возможность эффективнее использовать компьютер при создании базы данных и работе с ней. В плане правил связи в реляционной модели реализуется отношение «один–ко–многим» связи между таблицами. Это значит, что одной записи в главной таблице соответствует несколько записей в подчинённой таблице (в том числе может не соответствовать ни одной записи). Другие типы связей: «один-к-одному», «много-к-одному» и «много-ко-многим» - можно свести к данному типу «один-ко-многим». Реляционные базы данных состоят из связанных таблиц.

Таблица представляет собой двумерный массив, в котором хранятся данные. Столбцы таблицы (в рамках принятых обозначений БД) называются полями, строки – записями. Количество полей таблицы фиксировано, количество записей – нет. Фактически таблица – нефиксированный массив записей с одинаковой структурой полей в каждой записи. Добавить в таблицу новую запись не составляет труда, а то время как добавление нового поля влечёт за собой рестрктуризацию всей таблицы и может вызвать определённые трудности. В качестве значений полей в записях могут храниться числа, строки, картинки и т.д. Таблицы баз данных хранятся на жёстком диске (на локальном компьютере или на сервере баз данных – в зависимости от типа БД). Одной таблице соответствуют обычно несколько файлов – один основной и несколько вспомогательных. Тонкости организации таблиц зависят от используемого формата (dBase, Paradox, InterBase, Microsoft Access и т.д.)

Ключ – поле или комбинация полей таблицы, значения в которых однозначно определяют запись. Ключ потому так и называется, что, имея значения ключевых полей, можно однозначно получить доступ к нужной записи. Таким образом, ключи чрезвычайно полезны для связи таблиц. Записывая значения ключа в отведённые поля подчинённой таблицы и тем самым, задавая ссылку, обеспечиваем связь двух записей – записи в главной таблице и записи в подчинённой таблице. В одной записи подчинённой таблицы может находиться и несколько ссылок на записи главной таблицы. Например, в школьном журнале может быть таблица – список дежурств, где в каждой записи содержатся фамилии и имена (ключ их двух полей) нескольких дежурных. Так осуществляется связь различных записей главной таблицы и реализуется достаточно сложная структура данных. В школьной практике в качестве ключевых полей используются имена и фамилии, но в БД лучше отводить специальные ключевые поля – индивидуальные номера (коды) записей. Это гарантированно уберегает от возможных проблем с однофамильцами. В школе же, где не требуется такая компьютерная чёткость, появление в одном классе двух учеников с одинаковыми именами и фамилиями – очень редкое событие, поэтому можно простить подобное техническое упущение. Кроме связывания, ключи могут использоваться для прямого доступа к записям, ускорения работы с таблицей.

Индекс – поле, так же, как и ключ, специально выделенное в таблице, данные в котором, однако, могут повторяться. Они также служат для ускорения доступа и, кроме того, для сортировки и выборок.

Нормальные формы были придуманы, скорее, для автоматизации процесса создания баз данных, нежели как руководство тем, кто создаёт их вручную (автоматическое проектирование больших баз данных может производиться с помощью специальных систем программ – средств (CASE). Реально при ручной разработке проектировщик сразу же задумывает необходимую структуру, планирует нужные таблицы, а не идёт от одной большой таблицы. Нормальные формы фактически формализуют интуитивно понятые требования к организации данных, помогая, прежде всего, избежать избыточного дублирования данных.

Первая нормальная форма:

информация в полях неделимая (к примеру, имя и фамилия должны быть разными полями, а не одним);

в таблице нет повторяющихся групп полей

Вторая нормальная форма:

выполнена первая форма;

любое неключевое поле однозначно идентифицируется ключевыми полями (фактически, требование наличия ключа)

Третья нормальная форма:

выполнена вторая форма

неключевые поля должны однозначно идентифицироваться только ключевыми полями (это значит, что данные, не зависящие от ключа, должны быть вынесены в отдельную таблицу)

Требование третьей нормальной формы имеет тот смысл, что таблицу с полями (Имя, Фамилия, Класс, Классный руководитель) необходимо разбить на две таблицы (Имя, Фамилия, Класс) и (Класс, Классный руководитель), поскольку поле Класс однозначно определяет поле Классный руководитель (а согласно третьей форме, однозначно определять должны только ключи).

Для более глубокого понимания тонкостей проведения операций с записями в таблицах необходимо иметь понятия о способах доступа, транзакциях и бизнес-правилах.

Способы доступа определяют, как технически производятся операции с записями. Способы доступа выбираются программистом во время разработки приложения. Навигационный способ основан на последовательной обработке нужных записей поодиночке. Он обычно используется для небольших локальных таблиц. Реляционный способ основан на обработке сразу набора записей с помощью SQL-запросов. Он используется для больших удалённых БД.

Транзакции определяют надёжность выполнения операций по отношению к сбоям. В транзакцию объединяется последовательность операций, которая либо должна быть выполнена полностью, либо не выполнена совсем. Если во время выполнения транзакции произошёл сбой, то все результаты всех операций, входящих в неё отменяются. Это гарантирует то, что не нарушается корректность базы данных даже в случае технических (а не программных) сбоев.

Бизнес-правила определяют правила проведения операций и представляют механизмы управления БД. Задавая возможные ограничения на значения полей, они также вносят свой вклад в поддержание корректности базы. Несмотря на возможные ассоциации с бизнесом как коммерцией, бизнес-правила не имеют к нему прямого отношения и просто являются правилами управления базами данных.

Корректная БД:

- неизбыточная;

- непротиворечивая;

- целостная

Реляционная БД:

- таблицы;

- связи между таблицами с помощью ключей

- поля (столбцы) – фиксированы;

- записи (строки) – легко добавляются и удаляются

- однозначно определяет запись

Ключи и индексы:

- служат для связи таблиц, прямого доступа, ускорения обработки и т.п.

Нормальные формы:

- служат для борьбы с избыточностью данных;

- много требуют, но из самых благих побуждений

Способы доступа:

-навигационный;

- реляционный

Защита корректности БД:

- транзакции – техническая защита

- бизнес-правила – логическая защита

Т Е С Т

1.Модели баз данных:

А) коммерческие

Б) сетевые

В) объектно-ориентированные

Г) революционные

Д) реляционные

Е) интегральные

2.Виды базы данных:

А) документальные

Б) сетевые

В) графические

Г) реляционные

3.Какая из баз данных содержит документы самого разного типа?

А) распределённая

Б) централизованная

В) фактографическая

Г) документальная

4.Что может являться примером базы данных?

А) пешеход, стоящий на обочине дороги

Б) телефонный справочник

В) расписание уроков

Г) расписание движения поездов или автобусов

5. Что такое ключ?

А) ссылкаБ) кодовое словоВ) программаГ) поле или комбинация полей таблицы

6. Что будет выведено на экран в результате выполнения фрагмента программы?

M:= ‘биология’;
k:= ‘зоо’ + copy (m, 4, 5);
writeln (k);

А) зоологияБ) зооВ) биологияГ) логия 7.Набор данных содержит: А) навигатор DBNavigatorБ) TableВ) Query 8.Выберите верное утверждение: денежный тип полей… А) текстовая строкаБ) текст длиной до 65535 символовВ) специальный формат для финансовых нуждГ) автоинкретное поле 9.Основное требование к данным: А) потребность в хранении больших объёмов однотипной информацииБ) быстрое распространение информацииВ) возвратное удаление информацииГ) удобство доступа к данным и быстрое нахождение нужной информации по интересующему вопросу 10.Какой должна быть информация, находящаяся в требованиях к базам данных? А) целостнойБ) краткойВ) непротиворечивойГ) однотипной

Ответы на тест

Вопросы для самопроверки :

1. Что такое БД?

2. Что является классическим примером БД?

3. Приведите несколько примеров БД

4. Какой вид БД обычно используется в ПВЭМ?

5. Какие виды БД вы знаете?

6. Какие три звена нам потребуются для создания приложения, позволяющего просматривать и редактировать базы данных?

7. Какие типы полей можно определить в Access?

8. Для чего нужен монопольный доступ к БД?

9. Что такое реляционная модель базы БД?

10. Сколько существует нормальных форм в БД? Перечислите их

11. Что такое транзакции?

Л И Т Е Р А Т У Р А :

1. Информатика. Учебное пособие для среднего профессионального образования (+CD)/Под общ. ред. И.А. Черноскутовой – СПб.: Питер, 2005. – 272 с.: ил. стр. 24 - 25

2. Информатика. Учебное пособие для студ. пед. вузов /А.В.Могилёв; Н.И.Пак, Е.К.Хённер; Под ред. Е.К.Хённера. – М., 1999. - 816 с стр. 185 - 187

3. Информатика. Учебник. – 3-е перераб. изд./Под ред. проф. Н.В.Макаровой. – М.: Финансы и статистика, 2000. – 768 с.: ил.

Р Е Ц Е Н З И Я

Каждый владелец сайта знает, что для правильного функционирования сайта нужны не только файлы с кодом страниц, но и базы данных. Для взаимодействия с базами данных используются системы управления базами данных (СУБД). В данной статье я хочу рассказать о базах данных и СУБД, о том, какие разновидности существуют, и чем они отличаются друг от друга.

База данных

База данных представляет собой определенный набор данных, которые, как правило, связаны объединяющим признаком либо свойством (или несколькими). Эти данные упорядочены, например, по алфавиту. Обилие различных данных, которые могут быть помещены в единую базу, ведет к множеству вариаций того, что может быть записано: личные данные пользователей, записи, даты, заказы и так далее. К примеру, если у вас интернет-магазин, то база данных вашего сайта может содержать прайс-листы, каталог товаров или услуг, отчеты, статистику и информацию о клиентах.

В первую очередь это удобно тем, что информацию можно быстро заносить в базу данных и так же быстро ее извлекать при необходимости. Если на заре развития web-разработки все необходимые данные нужно было прописывать в коде страницы, то теперь такая необходимость отсутствует - нужная информация может быть запрошена из базы данных при помощи скриптов. Специальные алгоритмы хранения и поиска информации, которые используются в базах данных, позволяют находить нужные сведения буквально за доли секунд - а при работе в виртуальном пространстве скорость работы ресурса важна как ничто другое.

Немаловажной является и взаимосвязь информации в базе данных: изменение одной строчки может привести к значительным изменениям других строк. Работать с данными таким образом гораздо проще и быстрее, чем если бы изменения касались только одного места в базе данных.

Однако это не значит, что база данных обязательно должна быть у каждого сайта - к примеру, если у вас сайт-визитка, и никакой новой информации вы на сайте не размещаете, то база данных вам будет попросту не нужна. Самый легкий способ сделать простой сайт - создать .

Система управления базами данных

Как можно догадаться уже из названия, система управления базами данных (или сокращенно СУБД) представляет собой программное обеспечение, которое используется для создания и работы с базами данных. Главная функция СУБД - это управление данными (которые могут быть как во внешней, так и в оперативной памяти). СУБД обязательно поддерживает языки баз данных, а также отвечает за копирование и восстановление данных после каких-либо сбоев.

Что касается классификации баз данных, то тут возможны различные варианты.
К примеру, можно разделить базы по модели данных : иерархические (имеют древовидную структуру), сетевые (по своей структуре похожи на иерархические), реляционные (используются для управления реляционными базами данных), объектно-ориентированные (используются для объектной модели данных) и объектно-реляционные (некое слияние реляционного и объектно-ориентированного вида баз данных).

Либо, если деление идет по тому, где размещается СУБД , их можно разделить на локальные - вся СУБД размещается на одном компьютере, и распределенные - части системы управления базами данных находятся на нескольких компьютерах.

Файл-серверные, клиент-серверные и встраиваемые - такие названия носят СУБД, если разделить их по способу доступа к базам данных . Файл-серверные СУБД на данный момент уже считаются устаревшими; в основном идет использование клиент-серверных (СУБД, которые располагаются на сервере вместе с самой базой данных) и встраиваемых (не требующих отдельной установки) систем.

Информация, которая хранится в базах данных, не ограничивается только текстовыми или графическими файлами - современные версии СУБД поддерживают также форматы аудио и видеофайлов.

В этой статье я сделаю упор на СУБД, которые используются для хранения информации различных веб-ресурсов.

Зачем же нужны эти СУБД? Помимо основной своей функции - хранения и систематизации огромного количества информации - они позволяют быстро обрабатывать клиентские запросы и выдавать свежую и актуальную информацию.

Это касается и изменений, которые вносите вы - вместо того, чтобы менять информацию в каждом файле сайта, вы можете поменять ее в базе данных, и тогда на каждой странице сразу же будет отображена корректная информация.

Реляционные СУБД и язык SQL

Реляционные и объектно-реляционные СУБД являются одними из самых распространенных систем. Они представляют собой таблицы, у которых каждый столбец (который называется “field” или «поле») упорядочен и имеет определенное уникальное название. Последовательность строк (их называют “records” или «записи») определяется последовательностью ввода информации в таблицу. При этом обрабатывание столбцов и строк может происходить в любом порядке. Таблицы с данными связаны между собой специальными отношениями, благодаря чему с данными из разных таблиц можно работать - к примеру, объединять их - при помощи одного запроса.

Для управления реляционными базами данных применяется особый язык программирования - SQL. Сокращение расшифровывается как “Structured query language”, в переводе на русский «язык структурированных запросов».

Команды, которые используются в SQL, делятся на те, которые манипулируют данными, те, которые определяют данные, и те, которые управляют данными.

Схема работы с базой данных выглядит следующим образом:


MySQL

MySQL является одной из самых популярных и распространенных СУБД, которая используется во многих компаниях (например, Facebook, Wikipedia, Twitter, LinkedIn, Alibaba и других). MySQL представляет собой реляционную СУБД, которая относится к свободному программному обеспечению: она распространяется на условиях GNU Public License. Как правило, эту систему управления базами данных определяют как хорошую, быструю и гибкую систему, рекомендованную к применению в небольших или средних проектах. У MySQL есть множество различных преимуществ. Например, она поддерживает различные типы таблиц: как известные MyISAM и InnoDB, так и более экзотичные HEAP и MERGE; кроме того, количество поддерживаемых типов постоянно растет. MySQL выполняет все команды быстро - возможно, сейчас это самая быстрая СУБД из всех существующих. С этой системой управления базами данных может одновременно работать неограниченное количество пользователей, а число строк в таблицах может быть равно 50 миллионам.

Так как в сравнении с некоторыми другими СУБД MySQL поддерживает меньшее количество возможностей, то и работать с ней значительно проще, чем, к примеру, с PostgreSQL, о которой будет рассказано ниже.

Первая версия MySQL вышла в далеком 1995 году, и с тех пор состоялось несколько последующих релизов, каждый из которых нес в себе значительные изменения.

Для работы с MySQL используется не только текстовый, но и графический режим. Это возможно благодаря приложению phpMyAdmin: для работы в приложении вам даже не нужно будет знать SQL-команды, а администрировать свою базу данных можно прямо через браузер.

В целом можно отметить, что MySQL - это выбор тех, кому необходима СУБД для проекта небольшого или среднего размера, быстрая и удобная в работе и без сложностей с администрированием.


PostgreSQL

Эта свободно распространяемая система управления базами данных относится к объектно-реляционному типу СУБД. Как и в случае с MySQL, работа с PostgreSQL основывается на языке SQL, однако, в отличие от MySQL, PostgreSQL поддерживает стандарт SQL-2011. Эта СУБД не имеет ограничений ни по максимальному размеру базы данных, ни по максимуму записей или индексов в таблице.

Если говорить о преимуществах PostgreSQL, то, безусловно, это надежность транзакций и репликаций, возможность наследования и легкая расширяемость. PostgreSQL поддерживает различные расширения и варианты языков программирования, такие как PL/Perl, PL/Python и PL/Java. Также есть возможность загружать C-совместимые модули.

Многие отмечают, что в отличие от MySQL данная СУБД имеет хорошую и подробную документацию, которая дает ответы практически на все вопросы.

О том, что это более масштабная, чем MySQL, СУБД, говорит и тот факт, что PostgreSQL периодически сравнивают с такой мощной системой управления данных, как Oracle.

Все это позволяет говорить о PostgreSQL как об одной из самых продвинутых СУБД на данный момент.


SQLite

На данный момент это одна из самых компактных СУБД; также она является встраиваемой и реляционной. SQLite позволяет хранить все данные в одном файле и, благодаря своему небольшому объему, отличается завидным быстродействием. SQLite значительно отличается от MySQL и PostgreSQL своей структурой: движок и интерфейс этой СУБД находятся в одной библиотеке - и именно это позволяет выполнять все запросы очень быстро. Другие СУБД (MySQL, PostgreSQL, Oracle и т.д.) используют парадигму клиент-сервер, когда взаимодействие происходит через сетевой протокол.

Из недостатков можно отметить отсутствие системы пользователей и возможности увеличения производительности.

SQLite можно посоветовать к использованию в проектах, где нужно иметь возможность быстро перенести приложение, и нет необходимости в масштабируемости.


Oracle

Эта СУБД относится к объектно-реляционному типу. Название произошло от названия разработавшей эту систему фирмы Oracle. Наравне с SQL СУБД использует процедурное расширение под названием PL/SQL, а также язык Java.

Oracle - это система, отличающаяся стабильностью уже не один десяток лет, поэтому ее выбирают крупные корпорации, для которых важна надежность восстановления после сбоев, отлаженная процедура бэкапа, возможность масштабирования и другие ценные возможности. К тому же эта СУБД обеспечивает отличную безопасность и эффектную защиту данных.

В отличие от других СУБД, стоимость покупки и использования Oracle достаточно высока, и именно это зачастую является значимым препятствием к ее использованию в небольших фирмах. Вероятно, именно это также является причиной того, что в рейтинге СУБД на 2016 год в России Oracle находится лишь на 6-м месте.



MongoDB

Эта СУБД отличается тем, что она предназначена для хранения иерархических структур данных, и поэтому ее называют документоориентированной (она представляет собой документное хранилище без использования таблиц или схем). MongoDB имеет открытый исходный код.

Используя идентификатор, вы можете производить быстрые операции над объектом; эта СУБД хорошо показывает себя и при сложных взаимодействиях. В первую очередь речь идет о быстродействии - в некоторых случаях приложение, написанное на MongoDB, будет работать быстрее, чем такое же приложение, использующее SQL, т.к. MongoDB относится к классу СУБД NoSQL и вместо SQL пользуется объектным языком запросов, который значительно легче SQL.

Однако этот язык имеет и свои ограничения, а поэтому MongoDB следует использовать в случаях, когда нет необходимости в сложных и нетривиальных выборках.

Вместо заключения

Выбор СУБД - это важный момент при создании своего ресурса. Отталкивайтесь от своих задач и возможностей, пробуйте и экспериментируйте, чтобы найти именно тот вариант, который будет наиболее подходящим.

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то