leftБлог

Ключевые отличия MongoDB от MySQL

Ключевые отличия MongoDB от MySQL

Краткие факты о MongoDB

  • Организации, которым приходится иметь дело с BigData, все чаще используют MongoDB. MongoDB - хороший инструмент для работы с неструктурированными данными;
  • Идея NoSQL впервые появилась в 1998 году. Карло Строцци был первым, кто создал систему управления БД, для которой характерна парадигма stream-operator. Эта парадигма напоминает математическую операцию. Однако NoSQL, такие как MongoDB, все еще используют модель RDBMS;
  • MongoDB - одно из самых популярных NoSQL решений. Ее основная цель – упросить хранение и ускорить взаимодействие с данными. Одна из ее крутых возможностей - динамическая схема хранения данных;
  • Данные MongoDB представлены в формате JSON (Java Script Object Notation). JSON позволяет передавать данные между веб-приложениями и серверами в удобочитаемом формате. До JSON для этого использовался XML. В MongoDB JSON определен в BSON MongoDB (двоичный JSON). Бинарный формат BSON обеспечивает надежность и большую эффективность, особенно когда речь идет о скорости и объеме затрачиваемой памяти;
  • Клиенты, которым нужна документно-ориентированная БД очень часто используют именно MongoDB. Наиболее известными из таких компаний являются Craigslist, с более чем 2 миллиардами записей в хранилище MongoDB, Shutterfly, с более чем 18 миллиардами фотографий, Foursquare, New York Times, Forbes и многие другие.


Краткие факты о MySQL

  • Первый выпуск MySQL был в 1995 году под лицензией GNU GPL. Она приобрела популярность в мире веб-приложений благодаря связке LAMP и иным стекам с окончанием AMP. LAMP (Linux-Apache-MySQL-PHP) - это программный стек, который используется во многих веб-приложениях;
  • Oracle - нынешние владельцы MySQL;
  • Основным недостатком SQL в современном мире является то, что сегодня большая часть данных - это неструктурированные данные, а означает то, что традиционная табличная модель SQL неэффективна. Согласно оценке Меррила Линча, за 1998 год, от 80% до 90% данных являются неструктурированными.


Основные отличия MongoDB от MySQL

  1. Разница в представлении данных. В MongoDB, данные представлены в виде коллекций JSON документов, а в MySQL – в виде строк и таблиц;
  2. Разница в запросах к базе данных. SQL (Structured Query Language) - специальный язык запросов для взаимодействия с SQL базами, такими как MySQL, PostgreSQL и иными. В MongoDB запросы являются объектно-ориентированными.
  3. Запросы по нескольким таблицам. В MySQL есть операция JOIN, которая позволяет осуществлять запросы сразу по нескольким таблицам данных. MongoDB хоть и не имеет такой функции, зато снабжена многомерными типами данных.
  4. Возможность встраивания. С MySQL вы можете хранить один тип данных внутри другого (встраивание). Например, в случае блога, вам придется создать одну таблицу для комментариев, а другую для сообщений, если вы используете MySQL. В MongoDB вам достаточной создать коллекцию постов с ячейкой массива комментариев.
  5. Привязка к схеме данных. В MongoDB каждый объект коллекции может содержать разные поля, в то время как в MySQL все таблицы имеют строго типизированную схему.
  6. Производительность. Напишем здесь коротко - по ряду исследований MongoDB показала себя более производительной. Но стоит отметить, что в масштабах среднего приложения и при правильном его построении, отличие в производительности будет мало заметным. 


Мы digital-агентство полного цикла, готовы помочь Вам в разработке сайта под ключ, портала, интернет-магазинамобильного приложения, либо комплексного IT решения.


P.S.: Подписывайтесь и читайте наш Телеграм-канал и Яндекс.Дзен.

Слушайте наш подкаст.

#mysql#mongodb#разработка сложных ит продуктов#веб-разработка#база данных
Самое свежее