NoSQL

Автор: Robert Simon
Дата создания: 19 Июнь 2021
Дата обновления: 1 Июль 2024
Anonim
Что такое NoSQL за 6 минут
Видео: Что такое NoSQL за 6 минут

Содержание

Определение - Что означает NoSQL?

NoSQL - это класс систем управления базами данных (СУБД), которые не следуют всем правилам реляционной СУБД и не могут использовать традиционный SQL для запроса данных. Этот термин несколько вводит в заблуждение, когда интерпретируется как «Нет SQL», и большинство переводит его как «Не только SQL», так как этот тип базы данных обычно не является заменой, а, скорее, дополнительным дополнением к СУБД и SQL.


Системы на основе NoSQL обычно используются в очень больших базах данных, которые особенно подвержены проблемам с производительностью, вызванным ограничениями SQL и реляционной модели баз данных. Многие думают о NoSQL как о современной базе данных, которая соответствует требованиям Web. Некоторые известные реализации NoSQL - это база данных Cassandra, Googles BigTable, Amazons SimpleDB и Dynamo.

Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.

Техопедия объясняет NoSQL

База данных NoSQL не обязательно следует строгим правилам, которые управляют транзакциями в реляционных базах данных. Эти нарушенные правила известны под аббревиатурой ACID (атомарность, согласованность, целостность, долговечность). Например, базы данных NoSQL не используют фиксированные структуры схемы и соединения SQL.


В традиционной СУБД основными операциями являются чтение и запись. Чтения могут масштабироваться путем репликации данных на несколько машин, что позволяет сбалансировать нагрузку на запросы на чтение. Тем не менее, это влияет на запись, потому что согласованность данных должна поддерживаться. Только записи могут быть расширены путем разделения данных. Это влияет на чтение, поскольку распределенные объединения обычно медленны и трудны для реализации. Кроме того, для поддержки свойств ACID базы данных должны блокировать данные. Это означает, что когда один пользователь открывает элемент данных, ни один другой пользователь не сможет вносить изменения в тот же элемент. Это ограничение имеет серьезные последствия для производительности.

Эти ограничения не были серьезной проблемой в прошлом. Однако с появлением социальных сетей и больших данных появившиеся массивные базы данных были вынуждены обслуживать десятки или даже сотни миллионов клиентов по всему миру, осуществляя несколько тысяч операций чтения и записи каждую минуту. Традиционные СУБД просто не удовлетворяют эту потребность, потому что они могут только «масштабировать» или увеличивать ресурсы на центральном сервере. С другой стороны, реализация NoSQL может «масштабировать» или распределять нагрузку на базу данных по большему количеству серверов.


Базы данных NoSQL ориентированы на конкретные классы проблем - от большей гибкости в отношении хранимых данных (хранилища документов) до целевых вариантов использования, таких как отношения (базы данных графов) и агрегирование данных (базы данных столбцов), или просто упрощение идеи базы данных до что-то, что хранит значение (ключ / хранилище значений).

Базы данных NoSQL обладают преимуществами быстрой масштабируемости, гораздо лучшей производительности и более простой структуры по сравнению с СУБД. Тем не менее, они также страдают от того, что являются относительно новой и непроверенной технологией, и они не могут обеспечить СУБД с богатыми функциями отчетности и анализа.

Это определение было написано в кон базы данных