Чем MongoDB отличается от базы данных SQL

Вообще говоря, существует 2 основных типа баз данных: базы данных SQL и базы данных NoSQL.

Например, если вы знакомы с MySQL или PostgreSQL, базы данных SQL позволяют добавлять и извлекать данные с помощью определенного языка, называемого SQL, который выглядит следующим образом:

SELECT * FROM cars
INSERT INTO cars VALUES (fiesta, 2010)

SQL довольно старый, он родился в 1986 году, и это проверенная в боях технология.

ПодNoSQLЗонтик мы помещаем все те базы данных, которые не используют язык SQL для запроса данных.

MongoDBпопадает под этот зонтик.

MongoDB - этобаза данных документов. Вместо хранения записей мы храним объекты (называемыедокументы).

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

В MongoDB вы можете хранить любой объект, не беспокоясь о конкретных полях, составляющих этот объект, и о том, как их хранить. Вы говорите MongoDB сохранить этот объект.

С MongoDB вам не нужно изучать другой язык для взаимодействия с данными: вы просто вызываете методы JavaScript, которые он предоставляет, и все (конечно, вы можете взаимодействовать с ним, используя и другие языки).

Данные хранятся в формате, аналогичном JSON, но улучшенном, чтобы можно было хранить больше, чем просто базовые типы данных.

Я надеюсь, что это дает вам краткий обзор основных различий между базами данных SQL и MongoDB.


Больше руководств по базам данных: