<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.skripov.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85</id>
	<title>База данных - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.skripov.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85"/>
	<link rel="alternate" type="text/html" href="https://wiki.skripov.com/mediawiki/index.php?title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;action=history"/>
	<updated>2026-06-03T17:35:35Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.skripov.com/mediawiki/index.php?title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=45&amp;oldid=prev</id>
		<title>SergeySkripov в 11:22, 30 октября 2024</title>
		<link rel="alternate" type="text/html" href="https://wiki.skripov.com/mediawiki/index.php?title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=45&amp;oldid=prev"/>
		<updated>2024-10-30T11:22:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 14:22, 30 октября 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l33&quot;&gt;Строка 33:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 33:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Документоориентированные (NoSQL) СУБД ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Документоориентированные (NoSQL) СУБД ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В таких БД нет четкой структуры хранения, а сами записи хранятся как документы (JSON) и могут быть вложены друг в друга.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В таких БД нет четкой структуры хранения, а сами записи хранятся как документы (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;JSON&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;) и могут быть вложены друг в друга.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Преимущество этого типа хранения заключается в возможности увеличения количества серверов и распределения данных между ними, в отличии от реляционных СУБД у которых для выполнения запроса необходимо, чтобы все запрашиваемые данные были на одном сервере. В связи с этим используется другой подход к хранению данных по сравнению с реляционными СУБД - все необходимые для запроса данные нужно сохранять в одном документе и не использовать связанные таблицы.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Преимущество этого типа хранения заключается в возможности увеличения количества серверов и распределения данных между ними, в отличии от реляционных СУБД у которых для выполнения запроса необходимо, чтобы все запрашиваемые данные были на одном сервере. В связи с этим используется другой подход к хранению данных по сравнению с реляционными СУБД - все необходимые для запроса данные нужно сохранять в одном документе и не использовать связанные таблицы.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l47&quot;&gt;Строка 47:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 47:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;[[Cloud Firestore]]&amp;#039;&amp;#039;&amp;#039; - особенностью этой СУБД является возможность напрямую подключать пользователя к БД, т.к. она обладает встроенным механизмом разграничения доступа к документам. Применяется в простых мобильных приложениях, когда нужно хранить пользовательские данные - заметки, чаты, задачи, игровые данные и т.п., а также если отсутствует необходимость в полноценном бэкенде.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;[[Cloud Firestore]]&amp;#039;&amp;#039;&amp;#039; - особенностью этой СУБД является возможность напрямую подключать пользователя к БД, т.к. она обладает встроенным механизмом разграничения доступа к документам. Применяется в простых мобильных приложениях, когда нужно хранить пользовательские данные - заметки, чаты, задачи, игровые данные и т.п., а также если отсутствует необходимость в полноценном бэкенде.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Нельзя установить на своем сервере т.к. является частью BaaS платформы Firebase.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Нельзя установить на своем сервере т.к. является частью &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;BaaS&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;платформы &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Firebase&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&#039;&#039;&#039;Google Cloud Datastore&#039;&#039;&#039; - СУБД которая позволяет создавать неограниченные по размеру БД при этом сохраняя стабильное время ответа на запросы. Является частью IaaS платформы Google Cloud и не доступна для установки на собственный сервер.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&#039;&#039;&#039;Google Cloud Datastore&#039;&#039;&#039; - СУБД которая позволяет создавать неограниченные по размеру БД при этом сохраняя стабильное время ответа на запросы. Является частью &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;IaaS&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;платформы &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Google Cloud&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;и не доступна для установки на собственный сервер.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Redis&amp;#039;&amp;#039;&amp;#039; - хранит данные в виде пар ключ-значение, позволяет получать сразу несколько записей по совпадающей части ключа. Используется как кеширующая БД т.к. работает очень быстро за счет хранения всех данных в оперативной памяти сервера. Не используется как основная БД для хранения данных. Используется в высоконагруженных проектах, для того чтобы снять нагрузку с основной БД или ускорить время ответа для частых одинаковых запросов (курс валюты, погода и т.п.).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Redis&amp;#039;&amp;#039;&amp;#039; - хранит данные в виде пар ключ-значение, позволяет получать сразу несколько записей по совпадающей части ключа. Используется как кеширующая БД т.к. работает очень быстро за счет хранения всех данных в оперативной памяти сервера. Не используется как основная БД для хранения данных. Используется в высоконагруженных проектах, для того чтобы снять нагрузку с основной БД или ускорить время ответа для частых одинаковых запросов (курс валюты, погода и т.п.).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>SergeySkripov</name></author>
	</entry>
	<entry>
		<id>https://wiki.skripov.com/mediawiki/index.php?title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=43&amp;oldid=prev</id>
		<title>SergeySkripov: Новая страница: «Обычно базой данных называют какую либо СУБД (Систему Управления Базами Данных).  Основное предназначение СУБД это хранение данных, добавление, изменение и поиск. В большинстве случаев пользователь никогда не подключается напрямую к СУБД, а использует...»</title>
		<link rel="alternate" type="text/html" href="https://wiki.skripov.com/mediawiki/index.php?title=%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=43&amp;oldid=prev"/>
		<updated>2024-10-30T10:30:27Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «Обычно базой данных называют какую либо СУБД (Систему Управления Базами Данных).  Основное предназначение СУБД это хранение данных, добавление, изменение и поиск. В большинстве случаев пользователь никогда не подключается напрямую к СУБД, а использует...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Обычно базой данных называют какую либо СУБД (Систему Управления Базами Данных).&lt;br /&gt;
&lt;br /&gt;
Основное предназначение СУБД это хранение данных, добавление, изменение и поиск. В большинстве случаев пользователь никогда не подключается напрямую к СУБД, а использует для этого промежуточный сервер ([[бэкенд]]), который отвечает за контроль доступа к данным и преобразование их в нужный формат.&lt;br /&gt;
&lt;br /&gt;
Преимущество СУБД перед обычным хранением данных в файлах в том, что они обладают механизмом &amp;quot;индексирования&amp;quot;, что позволяет им быстрее находить нужные записи и не использовать полный перебор всех хранимых записей.&lt;br /&gt;
&lt;br /&gt;
СУБД делят на несколько типов исходя из того как они работают.&lt;br /&gt;
&lt;br /&gt;
==== Реляционные (SQL) СУБД ====&lt;br /&gt;
Один из самых старых и популярных типов СУБД. Позволяют выполнять запросы сразу по нескольким таблицам с множеством условий. В таких СУБД данные связываются между собой по идентификатору записи.  Для работы с данными необходимо предварительно создать структуру таблиц и каждому полю в таблице задать свой тип. Т.е. если при создании таблицы было создано поле типа &amp;quot;число&amp;quot;, то записать в него &amp;quot;строку&amp;quot; уже не получится, а менять тип столбца не всегда возможно т.к. могут быть потеряны данные, которые не смогут сконвертироваться в новый тип.&lt;br /&gt;
&lt;br /&gt;
Например для указания адреса может быть использована такая структура таблиц:&lt;br /&gt;
&lt;br /&gt;
Страна - содержит название страны и уникальный ключ записи (id)&lt;br /&gt;
&lt;br /&gt;
Город - список городов, у каждой записи есть отдельная колонка в которой сохраняется id страны, вместо указания ее полного названия.&lt;br /&gt;
&lt;br /&gt;
Улица - список улиц, у каждой записи аналогично есть отдельная колонка с id города.&lt;br /&gt;
&lt;br /&gt;
Таким образом зная улицу, по связям вверх по цепочке мы можем получить в каком городе она находится и в какой стране находится этот город.&lt;br /&gt;
&lt;br /&gt;
Преимущество такого подхода состоит в том, что в случае переименования улицы или города, не нужно менять его название во всех связанных документах, а достаточно поменять только в одной записи. Также это исключает ошибку в написании значений т.е. если мы будем при создании заказа в интернет магазине вместо выбора названия улицы из таблицы каждый раз писать руками, то можем ошибиться (большие и маленькие буквы, типы - шоссе/проспект/проезд и т.п.), и в дальнейшем при машинной обработке данных это будут разные улицы.&lt;br /&gt;
&lt;br /&gt;
Реляционные БД позволяют делать сложные запросы и вычисления во время запроса - например посчитать количество заказов на улице или в стране, сумму покупок, среднюю сумму заказа по городу и т.п.  это позволяет ускорить работу приложения т.к. все вычисления происходят на сервере БД, а бэкенд или клиент получают уже отфильтрованные, сгруппированные, отсортированные и посчитанные данные.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;MariaDB (бывшая MySQL)&amp;#039;&amp;#039;&amp;#039; - используется в основном в веб проектах т.к. достаточно простая в обслуживании.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;PostgreSQL&amp;#039;&amp;#039;&amp;#039; - применяется в сложных или корпоративных проектах, позволяет делать более сложные запросы и имеет расширенные возможности хранения данных. Но из-за этого требуются более квалифицированные инженеры для ее поддержки.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;MS SQL/Oracle Database&amp;#039;&amp;#039;&amp;#039; - СУБД корпоративного класса, используются только крупными компаниями.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;SQLite&amp;#039;&amp;#039;&amp;#039; - встраиваемая СУБД, не используется в клиент-серверной архитектуре и используется для хранения и обработки данных у пользователя, например в браузере или мобильном приложении. Для работы СУБД не требуется отдельного приложения т.к. вся БД находится в одном файле на устройстве пользователя.&lt;br /&gt;
&lt;br /&gt;
==== Документоориентированные (NoSQL) СУБД ====&lt;br /&gt;
В таких БД нет четкой структуры хранения, а сами записи хранятся как документы (JSON) и могут быть вложены друг в друга.&lt;br /&gt;
&lt;br /&gt;
Преимущество этого типа хранения заключается в возможности увеличения количества серверов и распределения данных между ними, в отличии от реляционных СУБД у которых для выполнения запроса необходимо, чтобы все запрашиваемые данные были на одном сервере. В связи с этим используется другой подход к хранению данных по сравнению с реляционными СУБД - все необходимые для запроса данные нужно сохранять в одном документе и не использовать связанные таблицы.&lt;br /&gt;
&lt;br /&gt;
Такие СУБД используются для проектов в которых большое количество одинаковых не связанных между собой записей - публикации в соцсетях, фотохостинг, чаты, новости и т.п.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;MongoDB&amp;#039;&amp;#039;&amp;#039; - одна из самых популярных NoSQL СУБД, ее используют GitHub, Foursqaure, CNN и др. Достаточно простая в обслуживании и масштабировании. &lt;br /&gt;
&lt;br /&gt;
У MongoDB есть дополнительный особенный тип коллекций - Time-Series, который оптимизирован для хранения событий - показаний счетчиков, истории цен и т.п. записей в которых всегда присутствует дата события. Такие коллекции позволяют выполнять быстрые запросы использующие расчеты (сумма, количество, среднее значение и т.п.) и диапазоны времени.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Elasticsearch&amp;#039;&amp;#039;&amp;#039; - обычно используется как временное хранилище предварительно обработанных данных, отличается высокой скоростью работы за счет хранения данных в оперативной памяти сервера и позволяет делать сложные запросы. Полезно использовать как промежуточную БД между реляционной СУБД и пользователем если используются очень сложные или частые одинаковые запросы.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Cloud Firestore]]&amp;#039;&amp;#039;&amp;#039; - особенностью этой СУБД является возможность напрямую подключать пользователя к БД, т.к. она обладает встроенным механизмом разграничения доступа к документам. Применяется в простых мобильных приложениях, когда нужно хранить пользовательские данные - заметки, чаты, задачи, игровые данные и т.п., а также если отсутствует необходимость в полноценном бэкенде. &lt;br /&gt;
&lt;br /&gt;
Нельзя установить на своем сервере т.к. является частью BaaS платформы Firebase.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Google Cloud Datastore&amp;#039;&amp;#039;&amp;#039; - СУБД которая позволяет создавать неограниченные по размеру БД при этом сохраняя стабильное время ответа на запросы. Является частью IaaS платформы Google Cloud и не доступна для установки на собственный сервер.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Redis&amp;#039;&amp;#039;&amp;#039; - хранит данные в виде пар ключ-значение, позволяет получать сразу несколько записей по совпадающей части ключа. Используется как кеширующая БД т.к. работает очень быстро за счет хранения всех данных в оперативной памяти сервера. Не используется как основная БД для хранения данных. Используется в высоконагруженных проектах, для того чтобы снять нагрузку с основной БД или ускорить время ответа для частых одинаковых запросов (курс валюты, погода и т.п.).&lt;/div&gt;</summary>
		<author><name>SergeySkripov</name></author>
	</entry>
</feed>