Базы данных NoSQL
Базы данных NoSQL хранят и извлекают данные в формате, отличном от традиционных реляционных таблиц SQL. Они разработаны для обработки больших объемов неструктурированных или полуструктурированных данных. Поэтому у них, как правило, меньше реляционных ограничений и проверок согласованности, чем у SQL, и они заявляют о значительных преимуществах в плане масштабируемости, гибкости и производительности.
Как и в SQL, пользователи взаимодействуют с данными в базах данных NoSQL с помощью запросов, которые приложение передает базе данных. Однако разные базы данных NoSQL используют широкий спектр языков запросов вместо универсального стандарта, такого как SQL. Это может быть собственный язык запросов или распространенный формат, такой как XML или JSON.
Модели баз данных NoSQL
Существует широкий набор баз данных NoSQL. Чтобы обнаружить уязвимости в базе данных NoSQL, полезно понимать модель, фреймворк и язык.
Некоторые распространенные типы баз данных NoSQL включают:
Document stores — хранят данные в гибких полуструктурированных документах. Обычно используют форматы JSON, BSON и XML и запрашиваются через API или язык запросов. Примеры: MongoDB и Couchbase.
Key-value stores — хранят данные в формате ключ-значение. Каждое поле данных связано с уникальной строкой ключа. Значения извлекаются по уникальному ключу. Примеры: Redis и Amazon DynamoDB.
Wide-column stores — организуют связанные данные в гибкие семейства столбцов вместо традиционных строк. Примеры: Apache Cassandra и Apache HBase.
Graph databases — используют узлы для хранения сущностей данных и ребра для хранения связей между сущностями. Примеры: Neo4j и Amazon Neptune.
Last updated