Содержание

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

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

Для чего нужна база данных

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

Для работы с базами данных необходим язык структурированных запросов SQL (Structured Query Language). Он позволяет создавать, изменять, удалять и извлекать данные.


SQL: что это, зачем он нужен и где используют
Где используется язык программирования SQL, зачем он нужен и как работает
Читать далее

Отличия в управлении БД и электронными таблицами

Их можно представить на примере: вам необходимо вести учет всех клиентов компании. В таблице Excel вы отмечаете данные клиентов, время прихода, место работы, причину обращения, дату последнего визита.  Этот файл един для всех сотрудников компании. Когда вы заполняете таблицу, другой работник параллельно с вами делает то же самое: вносит изменения в те же ячейки, что и вы. Тут и кроется основной минус в управлении электронными таблицами с изменяющимися данными: ваша сохраненная информация не отобразится у другого сотрудника — он открыл файл раньше ваших действий. Поэтому, когда он сохранит проделанную работу, ваша внесенная информация будет утеряна.

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

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


Введение в профессию «Аналитик данных»

Убедитесь, что начинать — не трудно и не страшно. За 20 минут освоите базовый навык для работы с данными и решите типичную задачу аналитика 4 разными способами.

Смотреть курс бесплатно 💸

Как выглядит база данных

База данных похожа на таблицу Excel. Есть колонки с заголовками и информация внутри.

Пример базы данных
Пример реляционной БД

Свойства базы данных

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

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

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

Иерархические

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

Пример иерархической базы данных

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

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

Иерархическая БД поддерживает отношения «один к многим», но не поддерживает отношения «многие к многим». В основном используется в том случае, где существуют явные иерархические отношения между элементами.

Сетевые

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

Пример сетевой базы данных

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

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

Расширение традиционных реляционных баз данных, в котором данные хранятся и обрабатываются в виде объектов. Объекты могут содержать данные и методы для работы с ними, благодаря этому с данными можно работать эффективнее.

Пример объектно-ориентированной базы данных

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

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

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

Инкапсуляция скрывает внутренние детали объекта и предоставляет доступ к ним только через определенные методы. То есть, улучшается безопасность и взаимодействие с объектами.

Реляционные

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

Реляционные БД поддерживают как модель «один к многим», так и «многие ко многим».

Основные принципы реляционных БД:

  1. Все данные на концептуальном уровне представляются в виде объектов, заданных в виде строк и столбцов.
  2. В пересечение строки и столбца таблицы можно занести только одно значение.
  3. Все операции выполняются над целыми отношениями, и результатом этих операций является отношение.

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

Преимущества: обеспечивается целостность больших объемов информации, предоставляется доступ для нескольких пользователей одновременно при настройке уровней доступа.

Недостатки: требует большого объема физической памяти, невысокая производительность. Чем больше объем базы, тем дольше обрабатываются запросы.

Примеры реляционных баз данных: PostgreSQL, MySQL, Oracle, SQLite и Microsoft SQL Server.

Нереляционные (NoSQL)

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

Нереляционные базы отлично подходят для обработки неструктурированных или полуструктурированных данных.

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

Недостатки: уступают в скорости обработки структурированных данных по сравнению с реляционными базами.


Популярные СУБД и их отличие от БД

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

Базы данных хранят информацию, а СУБД манипулируют ею.

Существует множество СУБД, предназначенных для различных целей.

Реляционные СУБД (MySQL, Oracle, PostgreSQL)

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

Колоночные СУБД (Vertica, ClickHouse)

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

Графовые СУБД (Neo4j, Amazon Neptune)

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

СУБД ключ-значение (Redis, Memcached)

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

Документные СУБД (MongoDB, CouchDB)

В них данные хранятся в формате документов, в том числе с разной структурой в одной сущности.

Карьера аналитика данных

В процессе обучения освоите все необходимые инструменты аналитика: Microsoft Excel, SQL, Python и различные BI-системы. Пройдете 5 полных циклов работы с данными: от поиска и подключения до анализа и визуализации. Добавите в портфолио 20 практических задач и до 10 проектов. Повышая навыки, сможете зарабатывать от 190 тысяч рублей.

Стать аналитиком ✨
Поделиться