Перейти к содержанию

Введение в базы данных

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

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

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

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

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

Помимо них есть еще много других. Со многими вы уже сталкивались:

  • Реляционные (РБД). Самые распространенные с которыми мы будем знакомиться в этом курсе. Одно из важных особенностей этих баз — это поддержка специального языка запросов SQL для получения и манипулирования данных. Чаще всего, когда говорят о базах данных подразумевают именно реляционные.
  • Резидентные базы. Или базы для хранения данных в памяти. Они в качестве первичного хранилища используют очень быструю память компьютера и позволяют почти моментально возвращать нужные данные по ключу. Пример такой базы — это словарь в Python.
  • Иерархические базы. Например, файловая система, состоящая из директорий и файлов, которые можно представить в виде иерархического дерева.
  • Объектно-ориентированная. В простейшем виде любой сложный тип данных в Python позволяет хранить в себе объекты.
  • Распределенные базы данных. Для тех случаев, когда данных настолько много, что они не могут поместиться на одном физическом компьютере или нужны особые условия надежного хранения, при котором даже если один компьютер выйдет из строя, то данные будут продублированы несколько раз на разных серверах и не пострадают.
  • Графовые базы. Нужны для обработки данных, имеющих представление в виде графа, например данные дружеских связей в социальных сетях.
  • Базы данных NoSQL. Это термин для баз данных, не имеющих общего стандарта доступа к данным.
  • Поисковые базы данных. Базы, ориентированные на поиск по текстам, например для поиска по тексту статей или книг.
  • Столбчатые базы данных. Узкоспециализированные базы для очень быстрой пакетной обработки (большими массивами) данных. Используются для систем сбора статистики и мониторинга систем, которые могут генерировать много моментальных значений.

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

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

Например, CSV файл тоже вполне себе база данных.

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

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

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