Я подумываю об использовании/внедрении какого-либо встроенного хранилища ключей (или документов) для моего рабочего стола Windows. Я хочу иметь возможность хранить различные типы данных (например, треки GPS), и, конечно, можно запросить эти данные. Объем данных будет таким, чтобы он не мог одновременно загружаться в память.Встраиваемый нереляционный (nosql) хранилище данных
Я думаю об использовании sqlite в качестве механизма хранения для хранилища ключей, что-то вроде y-serial, но написанного на .NET. Я также читал около FriendFeed's usage of MySQL to store schema-less data, что является хорошим указателем на использование RDBMS для нереляционных данных. sqlite кажется хорошим вариантом из-за его простоты, мобильности и размера библиотеки.
Вопрос в том, есть ли другие варианты встроенного нереляционного хранилища? Его не нужно распространять, и он не должен поддерживать транзакции, но он должен быть доступен из .NET и должен иметь небольшой размер загрузки.
ОБНОВЛЕНИЕ: Я нашел статью под названием SQLite as a Key-Value Database, которая сравнивает sqlite с DB Berkeley, которая является встроенной библиотекой хранилища ключей.
Но он хотел магазин без схемы .... –
Атор прав: Я хочу избежать реляционной модели. Я хочу иметь возможность хранить практически любые данные без предварительной подготовки схемы базы данных. Кроме того, наличие строгой реляционной модели может быть проблематичным, если структура данных изменится позже - мне нужно будет написать сценарии смены SQL для существующих данных в хранилище. –
Я знаю, что он ищет, но такие инструменты, как NHibernate с генерацией схемы, почти полностью скрывают реляционный аспект. Вам не нужно определять какую-либо схему, но только сопоставление для вас классов (что действительно прямо с Fluent NHibernate), и когда ваши классы меняются, вам нужно будет сделать какое-то обновление в любой стратегии сохранения. –