Есть ли существующая реализация или даже имя для базы данных типа, которая позволяет несколько точек зрения? Я имею в виду, например, если один пользователь изменяет заголовок статьи, то это изменение будет видимо только для этого конкретного пользователя, и все остальные будут видеть исходный заголовок. Если несколько пользователей меняют его на один и тот же новый заголовок, новый заголовок становится «основным видом» или «нефильтрованным представлением» базы данных, инициированным либо базой данных, либо из приложения.База данных, которую каждый пользователь видит по-разному - база данных «многопользовательская»/«многопользовательская»?
Я кодируюсь на C# и знаком с SQL и начинаю с MongoDB, но вопрос о концепции и существуют ли абстракции, реализации или шаблоны проектирования.
Это тривиальное решение для изменений UPDATE, но когда вы начинаете рассматривать DELETE и конфликты в представлениях, которые они могут создать, он начинает становиться не столь тривиальным. Я могу смоделировать мою базу данных для обработки всех сложностей с несколькими точками зрения, но она будет весьма специфичной для приложения, и мне было интересно, существует ли уже существующая CRUD-абстракция модели данных с несколькими точками зрения. Другими словами, кто-то уже решил общую проблему? –
«конфликты в взглядах» - это в значительной степени то, чего вы пытаетесь достичь. Возможно, вам захочется взглянуть на неизменяемые структуры данных, используемые в функциональных языках, таких как Haskell. – geon
конфликты будут возникать в операциях, например, если пользователь удаляет статью, а другой ее переименовывает, то операция переименования может быть применена только к пользователю2 и к главному виду, но не к пользователю 1. –