Об этом проекте
LiteDB — это небольшая, быстрая и легкая встраиваемая NoSQL-база данных для .NET, предназначенная для сценариев, требующих автономного хранилища данных. Она работает как бессерверное документохранилище с простым API, напоминающим MongoDB, позволяя разработчикам работать с BSON-документами непосредственно из кода C#.
Ключевые характеристики включают:
- **Хранение в одном файле**: Все данные находятся в одном файле, как в SQLite, что упрощает развертывание и управление.
- **Соответствие ACID**: Полная поддержка транзакций обеспечивает целостность и согласованность данных.
- **Потокобезопасность**: Библиотека безопасна для одновременного доступа из нескольких потоков.
- **Компактный размер**: Поставляется как одна DLL-библиотека объемом менее 450 КБ, поддерживая .NET Framework 4.5 и .NET Standard 1.3/2.0.
- **Восстановление данных**: Журналирование с упреждающей записью (WAL) позволяет восстанавливать данные после сбоев записи.
- **Гибкость сопоставления**: POCO-классы можно сопоставлять с BsonDocument с помощью атрибутов или плавного API-маппера, поддерживая встроенные документы и перекрестные ссылки между документами.
- **Расширенные возможности хранения**: Возможность хранить файлы и потоки (аналог GridFS), создавать индексы по полям и выполнять LINQ-запросы.
- **SQL-подобные команды**: Новая версия v5 вводит SQL-подобный синтаксис и механизм запросов, поддерживающий проекцию, сортировку, фильтрацию и запросы.
- **Частичная загрузка документов**: Загружаются только запрошенные поля корневого уровня, что повышает производительность.
Версия 5 приносит новый механизм хранения с чтением без блокировок, блокировки записи на уровне коллекций, внутренние/системные коллекции и расширенные возможности запросов.
Типичные случаи использования — это небольшие настольные/локальные приложения, форматы файлов приложений, небольшие веб-сайты и хранилища данных для каждого пользователя. Проект имеет открытый исходный код, бесплатен для коммерческого использования и доступен через NuGet (`Install-Package LiteDB`). Также предоставляется графический интерфейс LiteDB Studio для управления данными.
Плагины сообщества включают просмотрщики, редакторы, поддержку LINQPad, интеграцию F# и специализированные форки для Unity/IoT и кроссплатформенных графических интерфейсов. Полная документация поддерживается в вики-разделе GitHub, а упрощенный китайский перевод доступен отдельно.
LiteDB подходит разработчикам, ищущим быстрое, встраиваемое NoSQL-решение, требующее минимальной настройки и бесшовной интеграции с существующими .NET-приложениями.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.