mongodb и sql для системы контроля версий документов - PullRequest
0 голосов
/ 30 сентября 2011

Я студент-компьютерщик, и у меня есть простое задание, но я бы хотел сделать его немного интереснее :).По сути, мне нужно создать простую многопользовательскую онлайновую систему управления версиями документов с использованием Java или .NET.Поскольку я больше. NET парень, я собираюсь использовать ASP.NET или Silverlight (это еще не решено).

В любом случае интересная часть: я хочу использовать MongoDB для хранения документов (они могутпрактически все, видео, аудио, простые файлы MSOffice, простой текст), каждую их версию и соответствующие метаданные (в какой библиотеке, в какой папке они находятся и т. д.).Я хотел бы добавить что-нибудь еще, например, пользователей, разрешения и т. Д. (Спецификации еще не завершены) в обычную реляционную базу данных.Вопрос в том, что вы думаете об этом?Как вы думаете, это имеет какой-то смысл, или я просто пытаюсь все усложнить?Будет ли проще использовать только mongodb для всего или оставить nosql в полном объеме?Есть ли какие-либо соглашения для такого рода вещей?:)

Кстати.при любых других обстоятельствах я бы использовал какое-нибудь бесплатное, проверенное в бою решение для версионирования документов, но я должен сам разработать и реализовать это, и я пытаюсь сделать это хотя бы немного нетрадиционно:).Спасибо за каждый комментарий :), любая помощь приветствуется :) Привет

Ответы [ 2 ]

0 голосов
/ 01 октября 2011

Если бы вы использовали что-то вроде Mongoid на Rails, это было бы тривиально. http://mongoid.org/docs/extras.html Поиск версий. В ODM это встроено для вас. Я еще не использовал Mongo в мире .NET, он всегда был чем-то вроде Raven, поэтому я не уверен, что библиотеки для него легко работают, как Mongoid.

Mongo также обрабатывает реляционные данные. Вещи, которые вы хотите нормализовать (например, записи пользователя), могут иметь ссылки на другие документы в БД. И, конечно же, любой волшебный документ, который вы хотите сохранить, также работает.

0 голосов
/ 01 октября 2011

Нетрадиционное поведение - это, как правило, хороший способ открыть для себя новые пути (лучшие способы?), Поэтому это хорошая идея.

Использование mongodb также является хорошей идеей благодаря свойству без схемы.

Использование реляционной базы данных для хранения дополнительной информации довольно странно и увеличит сложность без каких-либо преимуществ (IMO)

...