Базы данных NoSQL когда-то использовались лишь гигантами вроде Google, Amazon и Facebook, но сегодня их во многих отраслях внедряют в качестве основы ключевых бизнес-приложений взамен реляционных СУБД — ради гибкости и масштабируемости. Перечислим десять сценариев применения, при которых лучше всего подходят системы NoSQL.

Персонализация. Для персонализации взаимодействия с клиентами нужны данные, и немало — демографические, контекстные, поведенческие и пр. Чем больше доступно информации, тем больше возможностей индивидуализировать подход. Но реляционные СУБД не справляются с огромными объемами данных, необходимых для персонализации. А распределенная база NoSQL может эластично масштабироваться, обслуживая самые требовательные задачи. Профили посетителей сайта формируются и обновляются «на лету», с минимальной задержкой, что необходимо для оперативной адаптации взаимодействия с клиентами.

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

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

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

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

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

Общепризнанные преимущества баз данных NoSQL — неограниченная гибкость и масштабируемость 

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

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

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

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

Тим Стефан — директор Couchbase по маркетингу продуктов. Компания Couchbase поставляет одну из наиболее производительных платформ распределенных баз данных NoSQL, широко используемую при разработке мобильных, корпоративных и веб-приложений, а также приложений Интернета вещей, которые поддерживают обработку больших масштабов данных в реальном времени.