Термин · Глоссарий B2B-ПО

NoSQL (NoSQL)

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

Буква «N» В категориях: 4 Платформ: 6+

Введение

NoSQL (Not Only SQL) – обширная категория СУБД, объединяющая системы, которые не используют исключительно реляционную модель данных и традиционный SQL. Термин появился в 2009 году на конференции разработчиков, хотя сами системы существовали раньше. NoSQL СУБД разрабатывались для решения проблем, с которыми сталкивались крупные веб-компании (Google, Amazon, Facebook): необходимость обрабатывать петабайты неструктурированных данных при горизонтальном масштабировании на тысячах дешёвых серверов.

Основные типы NoSQL: документоориентированные (MongoDB, CouchDB), ключ-значение (Redis, Memcached), колоночные (Cassandra, HBase), графовые (Neo4j, Amazon Neptune), временные ряды (InfluxDB). Каждый тип оптимизирован для определённого паттерна доступа к данным. В России активно используются отечественные NoSQL-решения: Tarantool (VK), используемый в крупных финансовых и телеком-компаниях, а также Aerospike и другие.

История и контекст

Google опубликовал статью о BigTable (2006), Amazon – о Dynamo (2007). Эти работы вдохновили создание открытых NoSQL систем. MongoDB создана в 2009 году, Cassandra передана Apache Foundation в том же году. Redis выпущен Сальваторе Санфилиппо в 2009 году. В 2010-х NoSQL стал мейнстримом в веб-разработке: MEAN-стек (MongoDB, Express, Angular, Node.js) и аналоги сделали MongoDB стандартом для быстрых прототипов и веб-приложений.

Параллельно появилась концепция NewSQL – базы данных, сочетающие ACID-гарантии реляционных систем с горизонтальным масштабированием NoSQL (CockroachDB, Google Spanner, YDB от Яндекса). YDB – отечественная NewSQL СУБД, переданная в открытый доступ в 2022 году, используется в Яндекс.Метрике, банках и других нагруженных приложениях.

Как это работает

Документоориентированные СУБД (MongoDB) хранят данные в виде JSON/BSON-документов переменной структуры – гибкость схемы позволяет добавлять поля без миграций. Запросы строятся через API документов или ограниченный SQL-диалект. Ключ-значение (Redis) обеспечивает O(1) доступ к данным по ключу, поддерживает хранение в памяти, используется для кэширования, сессий, очередей сообщений.

Колоночные СУБД (Cassandra) организуют данные по столбцам, а не строкам – эффективны для записи и чтения больших объёмов временных рядов, логов, событий. Обеспечивают высокую доступность через распределённую архитектуру без единой точки отказа. Графовые СУБД (Neo4j) хранят данные как узлы и рёбра графа – оптимальны для анализа связей (социальные сети, рекомендательные системы, обнаружение мошенничества).

Большинство NoSQL систем используют принцип BASE (Basically Available, Soft state, Eventually consistent) вместо ACID, допуская временную несогласованность данных ради доступности и производительности. Теорема CAP объясняет компромиссы: нельзя одновременно гарантировать Consistency, Availability и Partition tolerance.

Где применяется

Веб-приложения и мобильные сервисы: MongoDB, Redis – для хранения профилей пользователей, каталогов товаров, сессий, кэша. Финансовые технологии: Tarantool используется в Альфа-Банке, ВТБ, Tinkoff для обработки платёжных транзакций в реальном времени. Телекоммуникации: биллинговые системы, хранение CDR (записей звонков) на Cassandra. IoT и телеметрия: временные ряды сенсорных данных на InfluxDB или ClickHouse.

Аналитика больших данных: в сочетании с Hadoop/Spark HBase и Cassandra хранят сырые данные для аналитических пайплайнов. Поиск: Elasticsearch (NoSQL на базе Lucene) используется для полнотекстового поиска в e-commerce, логировании (ELK-стек), мониторинге. В России Tarantool занесён в реестр Минцифры и применяется в государственных ИС и финансовом секторе.

Связь с другими понятиями

NoSQL дополняет реляционные СУБД (СУБД) для сценариев с высокой нагрузкой и гибкой схемой. DWH (хранилища данных) часто используют колоночные NoSQL-подобные системы (ClickHouse) для аналитики. Облачные провайдеры предлагают NoSQL как управляемый сервис (MongoDB Atlas, AWS DynamoDB, Yandex Managed MongoDB). Контейнеризация (Docker, Kubernetes) упрощает развёртывание NoSQL-кластеров. LLM-системы используют векторные базы данных (Chroma, Weaviate, Qdrant – специализированный тип NoSQL) для RAG-пайплайнов и семантического поиска.

Преимущества и ограничения

Преимущества: горизонтальное масштабирование на commodity-серверах, гибкая схема данных (schema-less), высокая производительность для специфических паттернов доступа, нативная поддержка JSON и иерархических структур, открытый исходный код большинства решений.

Ограничения: отсутствие или ограниченная поддержка ACID-транзакций (не все NoSQL), eventual consistency усложняет разработку, нет единого стандарта запросов как SQL, сложнее обеспечить сложные связи между сущностями, кривая обучения для DBA, привыкших к реляционной модели.

Понятия из глоссария Цифрового маркетплейса, которые часто встречаются вместе с термином «NoSQL».

Платформы класса «NoSQL»

Решения из каталога Цифрового маркетплейса, относящиеся к этому классу ПО. Карточки ведут на полные карточки платформ с тарифами, обзорами и кейсами внедрения.

Tarantool Data Grid

Tarantool Data Grid

Данные и аналитика
Tarantool — высокопроизводительная СУБД с поддержкой in-memory и дискового хранения данных, обеспечивающая ACI...
Цена по запросу
★ 4.8
Подробнее →
ClickHouse

ClickHouse

ИТ-инфраструктура
ClickHouse — колоночная аналитическая СУБД (OLAP), созданная Яндексом и открытая в 2016 году. Обеспечивает обр...
Цена по запросу
★ 4.8
Подробнее →
БАРС.Мониторинг-ЖКХ

БАРС.Мониторинг-ЖКХ

Данные и аналитика
Информационно-аналитическая система для мониторинга и управления жилищно-коммунальным хозяйством на региональн...
Цена по запросу
★ 5.0
Подробнее →
Field Connect

Field Connect

ИТ-инфраструктура
Программное обеспечение для удалённого управления и мониторинга сельскохозяйственного оборудования: дождевальн...
Цена по запросу
★ 4.7
Подробнее →

Категории каталога

Разделы каталога Цифрового маркетплейса, в которые входят решения, использующие «NoSQL».

Где применяется

Отрасли, в которых «NoSQL» используется на практике. Откройте отраслевой раздел Цифрового маркетплейса, чтобы увидеть подходящие решения, кейсы и новости.

Частые вопросы про NoSQL

Когда выбрать NoSQL вместо реляционной СУБД?

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

Что такое Tarantool?

Tarantool – российская in-memory СУБД с полноценной поддержкой Lua и SQL. Разработана VK (Mail.ru Group), используется в Альфа-Банке, ВТБ, МТС. Включена в реестр Минцифры как отечественное ПО.

Поддерживает ли NoSQL транзакции?

Зависит от системы. Redis поддерживает транзакции ограниченно, MongoDB с версии 4.0 – мультидокументные ACID-транзакции. Cassandra не поддерживает полные ACID. NewSQL системы (YDB) сочетают NoSQL-масштабирование с ACID.

Что такое векторная база данных?

Специализированный тип NoSQL для хранения векторных эмбеддингов и поиска ближайших соседей. Используется в LLM-приложениях (RAG), рекомендательных системах, семантическом поиске.

Чем Elasticsearch отличается от других NoSQL?

Elasticsearch – поисковый движок на базе Lucene с NoSQL-хранилищем. Оптимизирован для полнотекстового поиска, агрегаций, логирования. Входит в ELK/OpenSearch-стек для мониторинга и аналитики.

Есть ли российские NoSQL СУБД в реестре Минцифры?

Да. Tarantool (VK) включён в реестр как отечественная СУБД. YDB (Яндекс) – NewSQL-система с открытым кодом. ClickHouse – колоночная СУБД с открытым кодом, также используемая российскими компаниями.