Программирование на NoSQL и Dataflow
Бывают случаи, когда данные в реляционном формате недоступны, и нам нужно поддерживать их транзакционные с помощью баз данных NoSQL.
В этой главе мы сосредоточимся на потоке данных в NoSQL. Мы также узнаем, как это работает с сочетанием гибкой разработки и анализа данных.
Одна из основных причин использовать NoSQL с гибкостью - увеличение скорости в условиях рыночной конкуренции. Следующие причины показывают, насколько NoSQL лучше всего подходит для гибкой методологии разработки программного обеспечения.
Меньше барьеров
Изменение модели, которая в настоящее время находится на промежуточном этапе, имеет реальные издержки даже в случае гибкой разработки. В NoSQL пользователи работают с агрегированными данными вместо того, чтобы тратить время на нормализацию данных. Главное - сделать что-то и работать с целью сделать модель идеальными данными.
Повышенная масштабируемость
Когда организация создает продукт, больше внимания уделяется его масштабируемости. NoSQL всегда известен своей масштабируемостью, но он работает лучше, когда спроектирован с горизонтальной масштабируемостью.
Возможность использовать данные
NoSQL - это модель данных без схемы, которая позволяет пользователю легко использовать объемы данных, которые включают несколько параметров изменчивости и скорости. При выборе технологии всегда следует учитывать ту, которая использует данные в большем масштабе.
Поток данных NoSQL
Давайте рассмотрим следующий пример, в котором мы показали, как модель данных ориентирована на создание схемы СУБД.
Ниже приведены различные требования схемы -
Должна быть указана идентификация пользователя.
У каждого пользователя обязательно должен быть хотя бы один навык.
Детали опыта каждого пользователя должны поддерживаться должным образом.
Таблица пользователей нормализована с 3 отдельными таблицами -
Users
Пользовательские навыки
Пользовательский опыт
Сложность увеличивается при запросе к базе данных, а потребление времени отмечается повышенной нормализацией, что не очень хорошо для методологии Agile. Та же схема может быть разработана с базой данных NoSQL, как указано ниже -
NoSQL поддерживает структуру в формате JSON, который имеет легкую структуру. С помощью JSON приложения могут хранить объекты с вложенными данными как отдельные документы.