0 added
0 removed
Original
2026-01-01
Modified
2026-02-21
1
<p><a>#статьи</a></p>
1
<p><a>#статьи</a></p>
2
<ul><li>14 дек 2022</li>
2
<ul><li>14 дек 2022</li>
3
<li>0</li>
3
<li>0</li>
4
</ul><h2>Система управления базами данных: что это такое и зачем она нужна</h2>
4
</ul><h2>Система управления базами данных: что это такое и зачем она нужна</h2>
5
<p>Рассказываем, как устроены СУБД и какие они бывают, а также делимся подборкой из пяти самых популярных среди разработчиков баз данных.</p>
5
<p>Рассказываем, как устроены СУБД и какие они бывают, а также делимся подборкой из пяти самых популярных среди разработчиков баз данных.</p>
6
<p>Иллюстрация: Оля Ежак для Skillbox Media</p>
6
<p>Иллюстрация: Оля Ежак для Skillbox Media</p>
7
<p>Любитель научной фантастики и технологического прогресса. Хорошо сочетает в себе заумного технаря и утончённого гуманитария. Пишет про IT и радуется этому.</p>
7
<p>Любитель научной фантастики и технологического прогресса. Хорошо сочетает в себе заумного технаря и утончённого гуманитария. Пишет про IT и радуется этому.</p>
8
<p>В базах данных сегодня хранится буквально всё - ваши переписки, данные паспорта на "Госуслугах", пароли от сайтов, видео на хостингах, треки на музыкальных платформах. Но чтобы вся эта информация не потерялась, а данными было удобно управлять, придумали СУБД.</p>
8
<p>В базах данных сегодня хранится буквально всё - ваши переписки, данные паспорта на "Госуслугах", пароли от сайтов, видео на хостингах, треки на музыкальных платформах. Но чтобы вся эта информация не потерялась, а данными было удобно управлять, придумали СУБД.</p>
9
<p>Чтобы понять, что такое СУБД, нужно сначала узнать, что такое база данных (БД).</p>
9
<p>Чтобы понять, что такое СУБД, нужно сначала узнать, что такое база данных (БД).</p>
10
<p>База данных - это набор упорядоченных и структурированных данных, которые хранятся на определённом компьютере. Проще всего представить её как большую Excel-таблицу, где у каждого элемента (строки) есть определённые свойства (столбцы).</p>
10
<p>База данных - это набор упорядоченных и структурированных данных, которые хранятся на определённом компьютере. Проще всего представить её как большую Excel-таблицу, где у каждого элемента (строки) есть определённые свойства (столбцы).</p>
11
<p>Если создать базу данных для магазина продуктов, то у каждого товара - например, жвачки, шоколадки и бутылки воды, - будут свойства: цена, количество штук в наличии и срок годности.</p>
11
<p>Если создать базу данных для магазина продуктов, то у каждого товара - например, жвачки, шоколадки и бутылки воды, - будут свойства: цена, количество штук в наличии и срок годности.</p>
12
Базу данных можно представить как таблицу<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Базы данных - это просто файлы на диске компьютера, куда можно записывать новые элементы. Но сами БД ничего не умеют и для них нужно писать свои методы для управления - например, для добавления нового элемента или поиска нужной записи. Чтобы облегчить работу программистам, придумали СУБД.</p>
12
Базу данных можно представить как таблицу<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Базы данных - это просто файлы на диске компьютера, куда можно записывать новые элементы. Но сами БД ничего не умеют и для них нужно писать свои методы для управления - например, для добавления нового элемента или поиска нужной записи. Чтобы облегчить работу программистам, придумали СУБД.</p>
13
<p>Система управления базами данных (СУБД) - это набор инструментов, которые позволяют удобно управлять базами данных: удалять, добавлять, фильтровать и находить элементы, менять их структуру и создавать резервные копии.</p>
13
<p>Система управления базами данных (СУБД) - это набор инструментов, которые позволяют удобно управлять базами данных: удалять, добавлять, фильтровать и находить элементы, менять их структуру и создавать резервные копии.</p>
14
<p>СУБД можно представить как прослойку между базой данных и пользовательскими запросами к ней.</p>
14
<p>СУБД можно представить как прослойку между базой данных и пользовательскими запросами к ней.</p>
15
СУБД - это прослойка между базой данных и пользователем<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Когда пользователь нажимает на кнопку на сайте - например, чтобы скачать картинку, - сайт составляет специальный запрос к базе данных и отправляет его в СУБД. Она разбирает его и ищет в базе данных запрашиваемую информацию, а затем возвращает обратно сайту. Он уже конвертирует их в читаемый для пользователя вид и отдаёт ему.</p>
15
СУБД - это прослойка между базой данных и пользователем<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Когда пользователь нажимает на кнопку на сайте - например, чтобы скачать картинку, - сайт составляет специальный запрос к базе данных и отправляет его в СУБД. Она разбирает его и ищет в базе данных запрашиваемую информацию, а затем возвращает обратно сайту. Он уже конвертирует их в читаемый для пользователя вид и отдаёт ему.</p>
16
<p>Без СУБД разработчикам пришлось бы самостоятельно искать в файлах баз данных информацию, которая им нужна. Можно сказать, что база данных без СУБД - это как машина без кузова. В теории это машина: можно её заправлять, менять масло и детали. Но нормально поездить на ней не получится. Придётся сначала всё прикрутить, сделать кузов и только потом уже ехать.</p>
16
<p>Без СУБД разработчикам пришлось бы самостоятельно искать в файлах баз данных информацию, которая им нужна. Можно сказать, что база данных без СУБД - это как машина без кузова. В теории это машина: можно её заправлять, менять масло и детали. Но нормально поездить на ней не получится. Придётся сначала всё прикрутить, сделать кузов и только потом уже ехать.</p>
17
Базы данных без СУБД - примерно то же, что эта машина<em>Изображение: Big Pants Production / Shutterstock / Skillbox Media</em><p>СУБД нужна, чтобы упростить жизнь программистам и дать им все инструменты для работы с базами данных.</p>
17
Базы данных без СУБД - примерно то же, что эта машина<em>Изображение: Big Pants Production / Shutterstock / Skillbox Media</em><p>СУБД нужна, чтобы упростить жизнь программистам и дать им все инструменты для работы с базами данных.</p>
18
<p>СУБД нужны для всех манипуляций с базами данных, а именно чтобы:</p>
18
<p>СУБД нужны для всех манипуляций с базами данных, а именно чтобы:</p>
19
<ul><li>создавать базы данных и администрировать их: удалять, изменять и объединять;</li>
19
<ul><li>создавать базы данных и администрировать их: удалять, изменять и объединять;</li>
20
<li>держать данные в структурированном виде и необходимом формате;</li>
20
<li>держать данные в структурированном виде и необходимом формате;</li>
21
<li>защищать данные от нежелательных изменений и попыток взлома;</li>
21
<li>защищать данные от нежелательных изменений и попыток взлома;</li>
22
<li>загружать и сортировать данные с помощью фильтров;</li>
22
<li>загружать и сортировать данные с помощью фильтров;</li>
23
<li>делать резервные копии, восстанавливать базы данных после сбоёв и поддерживать общую целостность.</li>
23
<li>делать резервные копии, восстанавливать базы данных после сбоёв и поддерживать общую целостность.</li>
24
</ul><p>С помощью СУБД разработчики следят за всеми изменениями в базах данных. А БД хранят информацию пользователей: их транзакции и действия.</p>
24
</ul><p>С помощью СУБД разработчики следят за всеми изменениями в базах данных. А БД хранят информацию пользователей: их транзакции и действия.</p>
25
СУБД всегда наблюдает за действиями пользователей<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Например, чтобы создать базу данных с каталогом всех товаров на маркетплейсе, нужно завести огромную таблицу со строками, где у каждой будут определённые свойства. Они могут быть такими:</p>
25
СУБД всегда наблюдает за действиями пользователей<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p>Например, чтобы создать базу данных с каталогом всех товаров на маркетплейсе, нужно завести огромную таблицу со строками, где у каждой будут определённые свойства. Они могут быть такими:</p>
26
<ul><li>название товара;</li>
26
<ul><li>название товара;</li>
27
<li>стоимость;</li>
27
<li>стоимость;</li>
28
<li>количество единиц на складе;</li>
28
<li>количество единиц на складе;</li>
29
<li>поставщик.</li>
29
<li>поставщик.</li>
30
</ul><p>Чтобы держать такую таблицу в порядке и постоянно дополнять её новыми элементами, нужно обеспечить надёжность и высокую скорость работы. Для этого как раз и нужны СУБД.</p>
30
</ul><p>Чтобы держать такую таблицу в порядке и постоянно дополнять её новыми элементами, нужно обеспечить надёжность и высокую скорость работы. Для этого как раз и нужны СУБД.</p>
31
<p>СУБД - это набор инструментов, каждый из которых способен совершать с базой данных определённое действие: считывать её, удалять элементы или обрабатывать запросы от пользователя. И чтобы все эти инструменты правильно функционировали, у СУБД должна быть хорошо прописанная архитектура.</p>
31
<p>СУБД - это набор инструментов, каждый из которых способен совершать с базой данных определённое действие: считывать её, удалять элементы или обрабатывать запросы от пользователя. И чтобы все эти инструменты правильно функционировали, у СУБД должна быть хорошо прописанная архитектура.</p>
32
<p>Главные элементы СУБД - ядро, процессор, программные средства и базы данных. Поговорим о каждом из них подробнее.</p>
32
<p>Главные элементы СУБД - ядро, процессор, программные средства и базы данных. Поговорим о каждом из них подробнее.</p>
33
Примерное представление устройства СУБД изнутри<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p><strong>Ядро.</strong>Отвечает за работу всей системы в целом. Через него проходят все процессы обработки данных и их хранения. Ядро следит за всеми изменениями баз данных и фиксирует их.</p>
33
Примерное представление устройства СУБД изнутри<em>Иллюстрация: Оля Ежак для Skillbox Media</em><p><strong>Ядро.</strong>Отвечает за работу всей системы в целом. Через него проходят все процессы обработки данных и их хранения. Ядро следит за всеми изменениями баз данных и фиксирует их.</p>
34
<p><strong>Процессор, или компилятор.</strong>Занимается обработкой запросов от пользователей. Главная его задача - преобразовать SQL-запрос в понятные для компьютера команды, а затем вернуть результаты.</p>
34
<p><strong>Процессор, или компилятор.</strong>Занимается обработкой запросов от пользователей. Главная его задача - преобразовать SQL-запрос в понятные для компьютера команды, а затем вернуть результаты.</p>
35
<p><strong>Программные средства, или утилиты.</strong>Нужны, чтобы пользователь мог вводить запросы, а администраторы могли настраивать доступ и другие необходимые параметры.</p>
35
<p><strong>Программные средства, или утилиты.</strong>Нужны, чтобы пользователь мог вводить запросы, а администраторы могли настраивать доступ и другие необходимые параметры.</p>
36
<p><strong>Базы данных.</strong>Место, где хранятся данные в упорядоченном, а иногда и в зашифрованном виде. Базы могут различаться по структуре и типам представления данных.</p>
36
<p><strong>Базы данных.</strong>Место, где хранятся данные в упорядоченном, а иногда и в зашифрованном виде. Базы могут различаться по структуре и типам представления данных.</p>
37
<p>СУБД делят на разные типы и по разным параметрам. Мы рассмотрим, как они различаются в четырёх классификациях: по расположению баз данных, по хранению и обработке данных, по языку запросов, по структуре и организации данных.</p>
37
<p>СУБД делят на разные типы и по разным параметрам. Мы рассмотрим, как они различаются в четырёх классификациях: по расположению баз данных, по хранению и обработке данных, по языку запросов, по структуре и организации данных.</p>
38
<p>СУБД бывают локальные и распределённые.</p>
38
<p>СУБД бывают локальные и распределённые.</p>
39
<p><strong>Локальные.</strong>Это когда всё содержимое базы данных располагается на одном компьютере - обычно на сервере компании.</p>
39
<p><strong>Локальные.</strong>Это когда всё содержимое базы данных располагается на одном компьютере - обычно на сервере компании.</p>
40
<p><strong>Распределённые.</strong>Это когда база данных частично находится на разных компьютерах - например, в облаке.</p>
40
<p><strong>Распределённые.</strong>Это когда база данных частично находится на разных компьютерах - например, в облаке.</p>
41
<p>Современные СУБД могут быть одновременно локальными и распределёнными.</p>
41
<p>Современные СУБД могут быть одновременно локальными и распределёнными.</p>
42
<p>Здесь СУБД делятся на клиент-серверные, файл-серверные и встраиваемые.</p>
42
<p>Здесь СУБД делятся на клиент-серверные, файл-серверные и встраиваемые.</p>
43
<p><strong>Клиент-серверные.</strong>Это когда СУБД с базой данных находятся на одном компьютере, к которому пользователи обращаются с запросами. Получить доступ к такой СУБД можно с любого компьютера.</p>
43
<p><strong>Клиент-серверные.</strong>Это когда СУБД с базой данных находятся на одном компьютере, к которому пользователи обращаются с запросами. Получить доступ к такой СУБД можно с любого компьютера.</p>
44
<p>Многие интернет-магазины заводят именно такую базу данных, чтобы пользователи могли быстро получать свежую информацию об их товарах.</p>
44
<p>Многие интернет-магазины заводят именно такую базу данных, чтобы пользователи могли быстро получать свежую информацию об их товарах.</p>
45
<p><strong>Файл-серверные.</strong>Это когда база данных находится на одном сервере, а СУБД - на устройствах, с которых к базе отправляют запросы. Чтобы получить данные, у пользователя должна быть установлена и настроена СУБД.</p>
45
<p><strong>Файл-серверные.</strong>Это когда база данных находится на одном сервере, а СУБД - на устройствах, с которых к базе отправляют запросы. Чтобы получить данные, у пользователя должна быть установлена и настроена СУБД.</p>
46
<p>Файл-серверные СУБД используют для локальных сервисов компаний - например, CRM-систем, где находятся данные о клиентах и документообороте.</p>
46
<p>Файл-серверные СУБД используют для локальных сервисов компаний - например, CRM-систем, где находятся данные о клиентах и документообороте.</p>
47
<p><strong>Встраиваемые.</strong>Это локальные СУБД, которые представляют собой отдельный модуль для управления данными внутри приложений. Обычно они написаны в виде библиотек для разных языков программирования.</p>
47
<p><strong>Встраиваемые.</strong>Это локальные СУБД, которые представляют собой отдельный модуль для управления данными внутри приложений. Обычно они написаны в виде библиотек для разных языков программирования.</p>
48
<p>Например, Microsoft Access и "1С:Бухгалтерия" имеют такой тип СУБД.</p>
48
<p>Например, Microsoft Access и "1С:Бухгалтерия" имеют такой тип СУБД.</p>
49
<p>СУБД поддерживают язык структурированных запросов и неструктурированных.</p>
49
<p>СУБД поддерживают язык структурированных запросов и неструктурированных.</p>
50
<p><strong>SQL.</strong>Это язык для создания структурированных запросов к базам данных. Такие СУБД самые популярные в использовании.</p>
50
<p><strong>SQL.</strong>Это язык для создания структурированных запросов к базам данных. Такие СУБД самые популярные в использовании.</p>
51
<p><strong>NoSQL.</strong>Это язык для запросов, который основан на другом языке программирования - например, Python или JavaScript. СУБД с NoSQL обычно используют при работе с большими данными.</p>
51
<p><strong>NoSQL.</strong>Это язык для запросов, который основан на другом языке программирования - например, Python или JavaScript. СУБД с NoSQL обычно используют при работе с большими данными.</p>
52
<p>И последнее свойство, по которому делятся СУБД, - то, как они представляют информацию внутри баз данных.</p>
52
<p>И последнее свойство, по которому делятся СУБД, - то, как они представляют информацию внутри баз данных.</p>
53
<p><strong>Реляционные.</strong>Данные в виде таблиц, которые связаны друг с другом через сквозные параметры. Такая архитектура обеспечивает построчное хранение данных и нужна для создания строгой структуры. Ещё одна их особенность: за одно обращение к базе пользователь сможет получить лишь небольшое число элементов.</p>
53
<p><strong>Реляционные.</strong>Данные в виде таблиц, которые связаны друг с другом через сквозные параметры. Такая архитектура обеспечивает построчное хранение данных и нужна для создания строгой структуры. Ещё одна их особенность: за одно обращение к базе пользователь сможет получить лишь небольшое число элементов.</p>
54
Так в реляционной базе данных происходит связка элементов<em>Изображение:<a>andreycha</a>/<a>habr.com</a></em><p>Каждая строка имеет уникальный идентификатор, или ключ. Поэтому найти нужные данные и связать их между собой в такой базе данных легко.</p>
54
Так в реляционной базе данных происходит связка элементов<em>Изображение:<a>andreycha</a>/<a>habr.com</a></em><p>Каждая строка имеет уникальный идентификатор, или ключ. Поэтому найти нужные данные и связать их между собой в такой базе данных легко.</p>
55
<p>Реляционные базы данных используют, когда объём данных не превышает нескольких терабайт. Это делает их подходящими практически любому проекту.</p>
55
<p>Реляционные базы данных используют, когда объём данных не превышает нескольких терабайт. Это делает их подходящими практически любому проекту.</p>
56
<p>Самые популярные среди реляционных баз данных - PostgreSQL, Microsoft SQL Server, MySQL, Oracle.</p>
56
<p>Самые популярные среди реляционных баз данных - PostgreSQL, Microsoft SQL Server, MySQL, Oracle.</p>
57
<p>Реляционные базы данных применяют, когда важны следующие характеристики:</p>
57
<p>Реляционные базы данных применяют, когда важны следующие характеристики:</p>
58
<ul><li><strong>Транзакционность.</strong> Для выполнения операции нужно сделать несколько запросов к базе данных. Это может быть, например, перевод денег с одной карты на другую через приложение банка.</li>
58
<ul><li><strong>Транзакционность.</strong> Для выполнения операции нужно сделать несколько запросов к базе данных. Это может быть, например, перевод денег с одной карты на другую через приложение банка.</li>
59
<li><strong>Частые изменения данных.</strong>Так как в реляционных базах данных строгая структура.</li>
59
<li><strong>Частые изменения данных.</strong>Так как в реляционных базах данных строгая структура.</li>
60
<li><strong>Поиск по индексам.</strong>Каждый элемент такой базы данных - это строка, а искать элементы по строкам удобно.</li>
60
<li><strong>Поиск по индексам.</strong>Каждый элемент такой базы данных - это строка, а искать элементы по строкам удобно.</li>
61
<li><strong>Запросы небольшого количества записей за раз.</strong>Реляционные базы данных работают как раз по этому принципу.</li>
61
<li><strong>Запросы небольшого количества записей за раз.</strong>Реляционные базы данных работают как раз по этому принципу.</li>
62
<li><strong>Объём данных не превышает нескольких терабайт.</strong>Если будет больше, такая база данных будет работать медленнее.</li>
62
<li><strong>Объём данных не превышает нескольких терабайт.</strong>Если будет больше, такая база данных будет работать медленнее.</li>
63
</ul><p><strong>Ключ - значение.</strong>Каждый элемент базы данных использует для хранения уникальный идентификатор, который состоит из ключа и значения. Этот способ хранения похож на тип данных "словарь" в языках программирования.</p>
63
</ul><p><strong>Ключ - значение.</strong>Каждый элемент базы данных использует для хранения уникальный идентификатор, который состоит из ключа и значения. Этот способ хранения похож на тип данных "словарь" в языках программирования.</p>
64
<p>Базы данных типа "ключ - значение" имеют вид хеш-таблиц, в которых у каждой записи - только один индекс. При этом жёстких ограничений по структуре элементов нет.</p>
64
<p>Базы данных типа "ключ - значение" имеют вид хеш-таблиц, в которых у каждой записи - только один индекс. При этом жёстких ограничений по структуре элементов нет.</p>
65
Ключи - это просто числа, а значения могут быть чем угодно<em>Изображение: Tzoof Avny Brosh /<a>medium.com</a></em><p>Такие базы данных используют по принципу логов, когда новые записи заносят в конец хранилища. Удаляют элементы с помощью добавления специальной записи.</p>
65
Ключи - это просто числа, а значения могут быть чем угодно<em>Изображение: Tzoof Avny Brosh /<a>medium.com</a></em><p>Такие базы данных используют по принципу логов, когда новые записи заносят в конец хранилища. Удаляют элементы с помощью добавления специальной записи.</p>
66
<p>Ещё несколько способов использования баз данных типа "ключ - значение" - очереди, кэш и логирование.</p>
66
<p>Ещё несколько способов использования баз данных типа "ключ - значение" - очереди, кэш и логирование.</p>
67
<p>Популярные базы данных типа "ключ - значение" - Redis, DynamoDB и Aerospike.</p>
67
<p>Популярные базы данных типа "ключ - значение" - Redis, DynamoDB и Aerospike.</p>
68
<p><strong>Документные.</strong>В отличие от реляционных баз данных, документоориентированные хранят информацию в виде "документов", а не таблиц и строк. Главное преимущество документных баз данных - возможность хранить информацию без строгого ограничения по структуре.</p>
68
<p><strong>Документные.</strong>В отличие от реляционных баз данных, документоориентированные хранят информацию в виде "документов", а не таблиц и строк. Главное преимущество документных баз данных - возможность хранить информацию без строгого ограничения по структуре.</p>
69
Элементы документной базы данных могут иметь разную структуру<em>Изображение:<a>Тольяттинский государственный университет</a></em><p>Документные базы данных умеют хранить информацию целиком и получать её одним запросом. Даже если структура элементов будет разной. Ещё документные базы данных позволяют использовать ссылки на другие записи в базе, что чем-то напоминает реляционную модель.</p>
69
Элементы документной базы данных могут иметь разную структуру<em>Изображение:<a>Тольяттинский государственный университет</a></em><p>Документные базы данных умеют хранить информацию целиком и получать её одним запросом. Даже если структура элементов будет разной. Ещё документные базы данных позволяют использовать ссылки на другие записи в базе, что чем-то напоминает реляционную модель.</p>
70
<p>Популярные документные базы данных - MongoDB, CouchDB и Amazon DocumentDB.</p>
70
<p>Популярные документные базы данных - MongoDB, CouchDB и Amazon DocumentDB.</p>
71
<p><strong>Графовые.</strong>В них элементы имеют взаимосвязи в виде графа, где у каждого его узла есть множество связей с другими узлами. Такой вид баз данных напоминает паутину. Обычно эти базы данных используют в соцсетях или рекомендательных сервисах.</p>
71
<p><strong>Графовые.</strong>В них элементы имеют взаимосвязи в виде графа, где у каждого его узла есть множество связей с другими узлами. Такой вид баз данных напоминает паутину. Обычно эти базы данных используют в соцсетях или рекомендательных сервисах.</p>
72
<p>Каждый узел графовой базы данных содержит в себе данные, а чтобы составить взаимосвязи между узлами, используют рёбра. В них хранятся начальный и конечный узлы, направление и тип. Рёбра описывают взаимосвязи между двумя узлами - например, "родитель - потомок", - а также действия над ними.</p>
72
<p>Каждый узел графовой базы данных содержит в себе данные, а чтобы составить взаимосвязи между узлами, используют рёбра. В них хранятся начальный и конечный узлы, направление и тип. Рёбра описывают взаимосвязи между двумя узлами - например, "родитель - потомок", - а также действия над ними.</p>
73
Каждый узел - это данные, а каждая стрелочка - связь между узлами<em>Изображение:<a>Amazon</a></em><p>Обойти весь граф можно очень быстро, потому что связи между узлами не считаются во время запроса, а сразу хранятся в базе данных. Поэтому графовые базы данных применяются в соцсетях, рекомендательных сервисах и системах выявления мошенничества, когда нужно построить взаимосвязи между данными и запросить их.</p>
73
Каждый узел - это данные, а каждая стрелочка - связь между узлами<em>Изображение:<a>Amazon</a></em><p>Обойти весь граф можно очень быстро, потому что связи между узлами не считаются во время запроса, а сразу хранятся в базе данных. Поэтому графовые базы данных применяются в соцсетях, рекомендательных сервисах и системах выявления мошенничества, когда нужно построить взаимосвязи между данными и запросить их.</p>
74
<p>Популярные графовые базы данных - Amazon Neptune, Neo4j и InfiniteGraph.</p>
74
<p>Популярные графовые базы данных - Amazon Neptune, Neo4j и InfiniteGraph.</p>
75
<p><strong>Колоночные.</strong>В них данные хранятся последовательно в виде одной колонки, и предполагается, что на одном и том же месте в каждой колонке хранятся элементы, которые относятся к одной строке. Это позволяет эффективно сжимать данные и анализировать их - находить сумму, количество или среднее значение.</p>
75
<p><strong>Колоночные.</strong>В них данные хранятся последовательно в виде одной колонки, и предполагается, что на одном и том же месте в каждой колонке хранятся элементы, которые относятся к одной строке. Это позволяет эффективно сжимать данные и анализировать их - находить сумму, количество или среднее значение.</p>
76
Колоночные базы данных можно представить в виде куба<em>Изображение:<a>GrapeCity</a></em><p>Колоночные базы данных позволяют загружать новые данные непрерывным потоком или порциями. При этом удалять их так нельзя.</p>
76
Колоночные базы данных можно представить в виде куба<em>Изображение:<a>GrapeCity</a></em><p>Колоночные базы данных позволяют загружать новые данные непрерывным потоком или порциями. При этом удалять их так нельзя.</p>
77
<p>Главная область применения колоночных баз данных - анализ данных. Такие базы аналитики и менеджеры компаний используют, чтобы хранить историю событий.</p>
77
<p>Главная область применения колоночных баз данных - анализ данных. Такие базы аналитики и менеджеры компаний используют, чтобы хранить историю событий.</p>
78
<p>Популярные колоночные базы данных - ClickHouse, Apache Druid, Vertica, BigQuery и Teradata.</p>
78
<p>Популярные колоночные базы данных - ClickHouse, Apache Druid, Vertica, BigQuery и Teradata.</p>
79
<p>СУБД существует много, но часто программисты пользуются семью самыми популярными - PostgreSQL, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis и Oracle.</p>
79
<p>СУБД существует много, но часто программисты пользуются семью самыми популярными - PostgreSQL, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis и Oracle.</p>
80
<p><strong>Тип.</strong>Реляционная СУБД клиент-серверного вида.</p>
80
<p><strong>Тип.</strong>Реляционная СУБД клиент-серверного вида.</p>
81
<p><strong>Стоимость.</strong>Бесплатно.</p>
81
<p><strong>Стоимость.</strong>Бесплатно.</p>
82
<p><strong>Лицензия.</strong>PostgreSQL License, Open Source.</p>
82
<p><strong>Лицензия.</strong>PostgreSQL License, Open Source.</p>
83
<p><strong>Для кого.</strong>Подходит для проектов любой сложности и объёма.</p>
83
<p><strong>Для кого.</strong>Подходит для проектов любой сложности и объёма.</p>
84
<p><strong>Преимущества.</strong>СУБД имеет большую функциональность и высокую производительность - например, она без проблем может работать с большими данными под высокой нагрузкой.</p>
84
<p><strong>Преимущества.</strong>СУБД имеет большую функциональность и высокую производительность - например, она без проблем может работать с большими данными под высокой нагрузкой.</p>
85
<p>Язык запросов - SQL, но его можно поменять через расширения на PL/Python, PL/Java и PL/Perl. И ещё одно преимущество PostgreSQL - в ней нет лимита по размеру баз данных и числу записей в таблицах.</p>
85
<p>Язык запросов - SQL, но его можно поменять через расширения на PL/Python, PL/Java и PL/Perl. И ещё одно преимущество PostgreSQL - в ней нет лимита по размеру баз данных и числу записей в таблицах.</p>
86
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
86
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
87
Интерфейс PostgreSQL<em>Изображение:<a>PostgreSQL</a></em><p><strong>Тип.</strong>Реляционная СУБД клиент-серверного вида.</p>
87
Интерфейс PostgreSQL<em>Изображение:<a>PostgreSQL</a></em><p><strong>Тип.</strong>Реляционная СУБД клиент-серверного вида.</p>
88
<p><strong>Стоимость.</strong>Бесплатно.</p>
88
<p><strong>Стоимость.</strong>Бесплатно.</p>
89
<p><strong>Лицензия.</strong>GPLv2, проприетарная.</p>
89
<p><strong>Лицензия.</strong>GPLv2, проприетарная.</p>
90
<p><strong>Для кого.</strong>Подходит для небольших и средних команд и проектов.</p>
90
<p><strong>Для кого.</strong>Подходит для небольших и средних команд и проектов.</p>
91
<p><strong>Преимущества.</strong>Интерфейс программы позволяет работать с таблицами разных форматов. MySQL работает онлайн и вмещает до 50 млн элементов. Но по функциональности она уступает PostgreSQL. При этом её можно интегрировать с другими СУБД.</p>
91
<p><strong>Преимущества.</strong>Интерфейс программы позволяет работать с таблицами разных форматов. MySQL работает онлайн и вмещает до 50 млн элементов. Но по функциональности она уступает PostgreSQL. При этом её можно интегрировать с другими СУБД.</p>
92
<p>MySQL использовали для сайтов и интернет-магазинов такие компании, как Twitter, Alibaba, "Фейсбук"*, Wikipedia.</p>
92
<p>MySQL использовали для сайтов и интернет-магазинов такие компании, как Twitter, Alibaba, "Фейсбук"*, Wikipedia.</p>
93
<p>После того как MySQL купила компания Oracle, пользователи стали немного переживать, что в скором времени база данных может стать платной. Но пока она остаётся бесплатной.</p>
93
<p>После того как MySQL купила компания Oracle, пользователи стали немного переживать, что в скором времени база данных может стать платной. Но пока она остаётся бесплатной.</p>
94
<p>Скачать СУБД можно бесплатно на <a>официальном сайте</a>.</p>
94
<p>Скачать СУБД можно бесплатно на <a>официальном сайте</a>.</p>
95
Интерфейс MySQL<em>Изображение:<a>MySQL</a></em><p><strong>Тип.</strong>Реляционная СУБД.</p>
95
Интерфейс MySQL<em>Изображение:<a>MySQL</a></em><p><strong>Тип.</strong>Реляционная СУБД.</p>
96
<p><strong>Стоимость.</strong>Бесплатно.</p>
96
<p><strong>Стоимость.</strong>Бесплатно.</p>
97
<p><strong>Лицензия.</strong>Проприетарная.</p>
97
<p><strong>Лицензия.</strong>Проприетарная.</p>
98
<p><strong>Для кого.</strong>Платную версию используют в крупных компаниях, а бесплатную можно без проблем применять в проектах с объёмом данных до 10 ГБ.</p>
98
<p><strong>Для кого.</strong>Платную версию используют в крупных компаниях, а бесплатную можно без проблем применять в проектах с объёмом данных до 10 ГБ.</p>
99
<p><strong>Преимущества.</strong>Эта СУБД добавляет автоматизацию задач - например, можно задать скрипт, который будет управлять памятью. Ещё Microsoft SQL Server позволяет удобно хранить сложные структуры данных и быстро искать их.</p>
99
<p><strong>Преимущества.</strong>Эта СУБД добавляет автоматизацию задач - например, можно задать скрипт, который будет управлять памятью. Ещё Microsoft SQL Server позволяет удобно хранить сложные структуры данных и быстро искать их.</p>
100
<p>СУБД совместима с другими программами Microsoft - например, Excel и Access. С ними можно сделать интеграцию и выгружать данные оттуда, а также изменять их онлайн.</p>
100
<p>СУБД совместима с другими программами Microsoft - например, Excel и Access. С ними можно сделать интеграцию и выгружать данные оттуда, а также изменять их онлайн.</p>
101
<p>В качестве языка запросов Microsoft SQL Server использует язык SQL.</p>
101
<p>В качестве языка запросов Microsoft SQL Server использует язык SQL.</p>
102
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
102
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
103
Интерфейс Microsoft SQL Server<em>Изображение:<a>Microsoft</a></em><p><strong>Тип.</strong>Однофайловая СУБД в виде библиотеки для языков программирования.</p>
103
Интерфейс Microsoft SQL Server<em>Изображение:<a>Microsoft</a></em><p><strong>Тип.</strong>Однофайловая СУБД в виде библиотеки для языков программирования.</p>
104
<p><strong>Стоимость.</strong>Бесплатно.</p>
104
<p><strong>Стоимость.</strong>Бесплатно.</p>
105
<p><strong>Лицензия.</strong>GPLv2, проприетарная.</p>
105
<p><strong>Лицензия.</strong>GPLv2, проприетарная.</p>
106
<p><strong>Для кого.</strong>Подходит для небольших проектов.</p>
106
<p><strong>Для кого.</strong>Подходит для небольших проектов.</p>
107
<p><strong>Преимущества.</strong>SQLite очень компактная СУБД, которая не использует серверы и другие утилиты. Все данные хранятся на одном устройстве.</p>
107
<p><strong>Преимущества.</strong>SQLite очень компактная СУБД, которая не использует серверы и другие утилиты. Все данные хранятся на одном устройстве.</p>
108
<p>На SQLite можно написать простой сайт или приложение, у которого будет ограничен трафик и объём хранимых данных. СУБД работает на любых устройствах - смартфонах, компьютерах, телевизорах и других, куда можно загрузить библиотеку. Она не нуждается в администрировании, а её язык запросов - C.</p>
108
<p>На SQLite можно написать простой сайт или приложение, у которого будет ограничен трафик и объём хранимых данных. СУБД работает на любых устройствах - смартфонах, компьютерах, телевизорах и других, куда можно загрузить библиотеку. Она не нуждается в администрировании, а её язык запросов - C.</p>
109
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
109
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
110
Интерфейс SQLite<em>Изображение:<a>sqliteexpert.com</a></em><p><strong>Тип.</strong>Документная СУБД с NoSQL-управлением, в которой данные хранятся в виде JSON-файлов.</p>
110
Интерфейс SQLite<em>Изображение:<a>sqliteexpert.com</a></em><p><strong>Тип.</strong>Документная СУБД с NoSQL-управлением, в которой данные хранятся в виде JSON-файлов.</p>
111
<p><strong>Стоимость.</strong>Бесплатно.</p>
111
<p><strong>Стоимость.</strong>Бесплатно.</p>
112
<p><strong>Лицензия.</strong>Server Side Public License.</p>
112
<p><strong>Лицензия.</strong>Server Side Public License.</p>
113
<p><strong>Для кого.</strong>Подходит для тех, кому нужно работать с большими объёмами данных из множества источников.</p>
113
<p><strong>Для кого.</strong>Подходит для тех, кому нужно работать с большими объёмами данных из множества источников.</p>
114
<p><strong>Преимущества.</strong>Главная особенность этой СУБД - данные представлены в виде текстовых документов, которые записаны в формате JSON. </p>
114
<p><strong>Преимущества.</strong>Главная особенность этой СУБД - данные представлены в виде текстовых документов, которые записаны в формате JSON. </p>
115
<p>Вместо таблиц здесь данные представлены в виде коллекций - групп документов. СУБД оптимизирована для распределённой работы, но также поддерживает локальное хранение данных.</p>
115
<p>Вместо таблиц здесь данные представлены в виде коллекций - групп документов. СУБД оптимизирована для распределённой работы, но также поддерживает локальное хранение данных.</p>
116
<p>MongoDB используют такие компании, как "Фейсбук", Google, Twitter, Forbes, IBM, а также многие интернет-магазины.</p>
116
<p>MongoDB используют такие компании, как "Фейсбук", Google, Twitter, Forbes, IBM, а также многие интернет-магазины.</p>
117
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
117
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
118
Интерфейс MongoDB<em>Изображение:<a>studio3t.com</a></em><p><strong>Тип.</strong>База данных типа "ключ - значение".</p>
118
Интерфейс MongoDB<em>Изображение:<a>studio3t.com</a></em><p><strong>Тип.</strong>База данных типа "ключ - значение".</p>
119
<p><strong>Стоимость.</strong>Бесплатно.</p>
119
<p><strong>Стоимость.</strong>Бесплатно.</p>
120
<p><strong>Лицензия.</strong>BSD, Open Source.</p>
120
<p><strong>Лицензия.</strong>BSD, Open Source.</p>
121
<p><strong>Для кого.</strong>Redis используют для сайтов путешествий, форумов и социальных сетей. Также она подойдёт для SaaS-приложений и сервисов электронной коммерции.</p>
121
<p><strong>Для кого.</strong>Redis используют для сайтов путешествий, форумов и социальных сетей. Также она подойдёт для SaaS-приложений и сервисов электронной коммерции.</p>
122
<p><strong>Преимущества.</strong>Redis можно использовать в облаке - полностью готовую к работе и оптимально настроенную. Она легко масштабируется и управляется.</p>
122
<p><strong>Преимущества.</strong>Redis можно использовать в облаке - полностью готовую к работе и оптимально настроенную. Она легко масштабируется и управляется.</p>
123
<p>В Redis можно перенести данные из другой базы данных с помощью автоматизированного сервиса.</p>
123
<p>В Redis можно перенести данные из другой базы данных с помощью автоматизированного сервиса.</p>
124
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
124
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
125
Интерфейс Redis<em>Изображение:<a>stackoverflow.com</a></em><p><strong>Тип.</strong>Объектно-реляционная база данных.</p>
125
Интерфейс Redis<em>Изображение:<a>stackoverflow.com</a></em><p><strong>Тип.</strong>Объектно-реляционная база данных.</p>
126
<p><strong>Стоимость.</strong>Бесплатно.</p>
126
<p><strong>Стоимость.</strong>Бесплатно.</p>
127
<p><strong>Лицензия.</strong>Проприетарная.</p>
127
<p><strong>Лицензия.</strong>Проприетарная.</p>
128
<p><strong>Для кого.</strong>Для проектов любой сложности.</p>
128
<p><strong>Для кого.</strong>Для проектов любой сложности.</p>
129
<p><strong>Преимущества.</strong>Oracle DB работает как клиент-сервер. Это значит, что она располагается на сервере вместе с базой данных. Поэтому, чтобы работать с ней, нужен специальный интерфейс приложения-клиента. Пользователь управляет пересылкой и получением данных от сервиса.</p>
129
<p><strong>Преимущества.</strong>Oracle DB работает как клиент-сервер. Это значит, что она располагается на сервере вместе с базой данных. Поэтому, чтобы работать с ней, нужен специальный интерфейс приложения-клиента. Пользователь управляет пересылкой и получением данных от сервиса.</p>
130
<p>Oracle DB обеспечивает высокую безопасность и лёгкий доступ для пользователей. Ещё она позволяет снизить нагрузку на клиентские компьютеры. При этом сервер для СУБД должен быть помощнее.</p>
130
<p>Oracle DB обеспечивает высокую безопасность и лёгкий доступ для пользователей. Ещё она позволяет снизить нагрузку на клиентские компьютеры. При этом сервер для СУБД должен быть помощнее.</p>
131
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
131
<p>Скачать СУБД можно на <a>официальном сайте</a>.</p>
132
Интерфейс Oracle Database<em>Изображение:<a>sqlmanager.net</a></em><p>* Решением суда запрещена "деятельность компании Meta Platforms Inc. по реализации продуктов - социальных сетей Facebook и Instagram на территории Российской Федерации по основаниям осуществления экстремистской деятельности".</p>
132
Интерфейс Oracle Database<em>Изображение:<a>sqlmanager.net</a></em><p>* Решением суда запрещена "деятельность компании Meta Platforms Inc. по реализации продуктов - социальных сетей Facebook и Instagram на территории Российской Федерации по основаниям осуществления экстремистской деятельности".</p>
133
<a>Курс с трудоустройством: "Профессия Java-разработчик + ИИ" Узнать о курсе</a>
133
<a>Курс с трудоустройством: "Профессия Java-разработчик + ИИ" Узнать о курсе</a>