Агрегированная модель данных в NoSQL
Опубликовано: 28 Августа, 2022
Мы знаем, что NoSQL — это базы данных, которые хранят данные в другом формате, отличном от реляционных баз данных. В настоящее время NoSQL работает практически во всех отраслях. Людям, взаимодействующим с данными в базах данных, модель Aggregate Data поможет в этом взаимодействии.
Особенности баз данных NoSQL:
- Независимость от схемы: Базы данных NoSQL не требуют какой-либо конкретной схемы или структуры хранения, чем традиционные СУБД.
- Масштабируемость: базы данных NoSQL масштабируются по горизонтали по мере быстрого роста данных. Можно добавить определенное стандартное оборудование, а функции масштабируемости можно сохранить для NoSQL.
- Производительность: для повышения производительности системы NoSQL можно добавить другой товарный сервер, чем надежный и быстрый доступ к передаче базы данных с минимальными накладными расходами.
- Высокая доступность: в традиционных СУБД для извлечения данных используются первичные и вторичные узлы. Некоторые базы данных NoSQL используют архитектуру главного места.
- Глобальная доступность: поскольку данные реплицируются между несколькими серверами и облаками, данные доступны для всех, что сводит к минимуму период задержки.
Совокупные модели данных:
Термин агрегат означает набор объектов, которые мы рассматриваем как единое целое. Агрегат — это набор данных, с которыми мы взаимодействуем как с единым целым. Эти единицы данных или агрегаты формируют границы для операции ACID.
Пример сводной модели данных:
Здесь на схеме есть два агрегата:
- Связь между Клиентом и Заказами представляет собой совокупность.
- Ромб показывает, как данные вписываются в совокупную структуру.
- Клиент содержит список платежных адресов
- Платеж также содержит платежный адрес
- Адрес появляется три раза и каждый раз копируется
- Домен подходит там, где мы не хотим менять адрес доставки и платежный адрес.
Последствия совокупной ориентации:
- Агрегация не является логическим свойством данных. Все дело в том, как данные используются приложениями.
- Агрегированная структура может быть препятствием для других, но помогает при взаимодействии с некоторыми данными.
- Это имеет важное значение для транзакций.
- Базы данных NoSQL не поддерживают транзакции ACID, что снижает согласованность.
- базы данных, ориентированные на агрегаты, поддерживают атомарные манипуляции с одним агрегатом за раз.
Преимущество:
- Его можно использовать в качестве основного источника данных для онлайн-приложений.
- Легкая репликация.
- Отсутствие единой точки отказа.
- Он обеспечивает высокую производительность и горизонтальную масштабируемость.
- Он может обрабатывать структурированные полуструктурированные и неструктурированные данные с одинаковыми усилиями.
Недостаток:
- Нет стандартных правил.
- Ограниченные возможности запросов.
- Плохо работает с реляционными данными.
- Не так популярен на предприятии.
- Когда ценность данных увеличивается, трудно поддерживать уникальные значения.