Hy guys, I'm working in LiteDB almost 3 year from now and I meet a lot of people here. And thats really awesome. But how about we share some experences? I'd like to know how do you use LiteDB, what kind of project did you do use LiteDB. It's private or open source? Do you want share with others? Which .NET version do you use?
I'm planning next version about LiteDB and these answers can help me any way I should go.
And thanks for using LiteDB 😃
MaurÃcio David
@mbdavid You are doing an awesome job here. I have lately evaluated many different in-process databases and LiteDB is pure gold.
Regarding project usage I would prefer some private communication channel here.
I mostly use low-level LiteEngine and a bit of LiteDatabase it's superb.
I use global async SemaphoreSlim for synchronization to avoid threads waiting for I/O.
I do not use FileStorage wrapper anymore directly due to performance/locking implications, however I have implemented efficient async storage wrapper with my own locking on top. I cannot share it today as it highly depends on the async SemaphoreSlim and is non-portable.
Evergreen .NET version 4.6, .NET Standard 2.0 ASAP.
Top priorities:
Future ideas (for research):
Don't get me wrong: LiteDB is already awesome and these are only ideas.
Thanks for creating and maintaining this great project.
I'm using this to store lots of historical data on mobile and desktop devices. Making this be documents instead of SQL is much nicer.
Xamarin support is a must along side .NET Standard targets.
I'm not sure how much more in the way of features are needed. I wouldn't want to bloat a great file-based document db like this :)
When I say features I meant big user facing things. Async and locking mentioned above are good things to keep up with the new platforms.
Thanks for the work!
Hi Mauricio.
I met your work through a Facebook group and found it to be great. This made me redesign a project I'm developing in which I was using SQLite. It's a very simple project, nothing so advanced, because it's a test I'm doing.
I am very happy that the mentor of this project is a compatriot.
Soon I intend to share my experience in LiteDb articles on my blog.
Congratulations!
Best regards
Raphael Cardoso
www.raphaelcardoso.com.br
Hi @mbdavid ,
We already talked about some liteDB "issues" that weren't issues at all but basically lack of my own knowledge on using this excellent tool.
I think that's the time to share about the project that I'm using with LiteDB so, let's begin...
To start this talking, I'm the author of Eiko Finanças Pessoais (https://sourceforge.net/projects/eikofp/).
The Eiko project was a small project that I made while I was without nothing to do at a company many years ago.
It's written on Visual Basic 6 and SQLite and I published on sourceforge on November, 27th, 2010. I thought at that time that it wasn't make any difference for me publishing it but, some time later, something very strange happened.
I googled my name and I saw that there was many sites talking about my little Eiko. Very strange for me because I never used any marketing campaign or something about to spread the word about it.
Then, between 2012 and 2013 I had 3k users. So I thought, why not port Eiko to a new technology?
Needless to say, I didn't had the time for that. I had depression between 2013 and 2014, got divorced of my ex wife and many things happened those times that made me totally unable to rewrite Eiko.
So, now that I'm better and have a lot of free time, I was doing a lot of research to port the app. And then, I found liteDB.
Basically, the old Eiko version used "two" databases. One where users are registered and then, one for each user individually. For a desktop app, it was ok but, how to do that on a small web app?
So, the Eiko research was finished and now I'm porting little by little. I don't know if this information it's useful for @mbdavid but, I'll share anyway.
I'm using on this project:
.NET 4.5,2
C#
LiteDB
AutoMapper
Ninject
I'm testing with .NETCore too, but, instead of Ninject, I'm using AutoFac.
I also have a test version using SQLite instead of LiteDB although is just a test. The final version will be written using LiteDB and I have no plans of using SQLite in this project anymore.
The architecture is Domain Driven Design (DDD). I'm using the same architecture for Windows Forms, WebAPI and ASP.NET MVC technologies.
Thanks for listening.
[],
Regards,
@rmszc81
Hi guys, thanks for all comments. It's nice to know how litedb are been used by others. I'm now thinking about how will be next major release to start coding soon.
@rmszc81 nice app about personal finance. I made one too :) (but for companies) www.faturin.com.br (it's a saas application - it's quite abandoned for now).
@mbdavid,
Thank you. BTW, Eiko was born to be simple and many complained about the lack of this and that, hehehe. I'll take a look on faturin. Thanks for sharing.
Keep it up the good work.
[],
Regards,
@rmszc81
I am using LiteDB to keep track and visualize data for migrants in the Middle East for the International Organization for Migration.
Maybe one day you'll find my name there, my girlfriend is from Hanoi,
Vietnam. Hehe. I'm wondering about migration it's been some months already.
On Apr 7, 2017 06:09, "Dody Gunawinata" notifications@github.com wrote:
I am using LiteDB to keep track and visualize data for migrants in the
Middle East for the International Organization for Migration.—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mbdavid/LiteDB/issues/526#issuecomment-292483912, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AK63rjt16QanbBe8KWGV-JgDqOzjQ6Kxks5rtf1kgaJpZM4MaLtK
.
Fun project which makes me happy to try something not bloated with deployment and impedance mismatch. Managed type first databases are cool stuff. And I can debug them!
Add button to tip you or organization your care!
Please async/await API all the way down!
I use it as a first take on adding persistence to my hierarchical key value store I'm creating just to satisfy my personal curiosity. I like LiteDB because it is pure .Net and simple to use compared to MongoDB: no server installation, just embed it and start using :-)
Hi Devs
Lately I have been very pleased to use LiteDb that I decided to create a titled article, Knowing and using LiteDb. Unfortunately this article is in Portuguese because my initial plan was to help spread the project in Brazil since there is nothing on the subject in Portuguese.
The article was posted on my personal blog.
http://raphaelcardoso.com.br/conhecendo-e-usando-o-litedb/
Soon I intend to share a project that I started with the objective of helping other developers to use LiteDb.
Greetings to all and a compliment to those involved in the development of LiteDb.
Ps: Sorry for my Google English :)
Best Regards
Raphael Cardoso
www.raphaelcardoso.com.br
could litedb be a good database for and asp.net saas application for invoicing and works management instead of sql?. you compare it to mongo db but how close to mongo db is it?
Litedb is a small database and that's not the intention to replace big database engines such as mongodb. It was designed for small applications. In my case, a personal finances project, each user has its own database. The comparison is simple, both are document oriented databases and have similar syntax on code but no much more than that.
MockServer is a mini mock server that basically, when started, responds to a predefined HTTP port delivering fake data. HttpListener and Threads. Developed in C# and using LiteDb as NoSql database (Serveless).
https://github.com/ferronicardoso/MockServer
Best Regards
Raphael Cardoso
www.raphaelcardoso.com.br
Hi @mbdabid,
I am using LiteDB in a Machine Learnig API. LiteDB allows me to have schema-less datasets that can be easily load and transform based on complex IA algorithms.
My main concern now is performance because I am implementing heavy algorithms.
You can find the API here:
https://github.com/lvemil/FluentML
Regards.
Hi @mbdavid,
I am right now planning to use LiteDb in my project as compared to SqLite. I am having hierarchical data to be stored into the db which will be pulled to display, edit and update. Data will be of following format:
var sourcedata = {
WorkId,
WorkName,
NodeId,
Name,
Drawing,
__children: {
Id,
Description,
__children: {
Id,
Description,
__children: {
Id,
Description,
__children: {
SafeId,
Description,
RecId,
Description
}
}
}
}
}
Just wanted to understand will above data setup work with LiteDb
Hi @vanivk, you can use this same JSON data in LiteDB. You can can create your POCO classes and database will serialize as json/bson data.
But remember: there is no circular reference support. If you need circular reference, use DbRef or mark as [BsonIgnore] and manual populate when load data.
I really need a NoSQL DB for a Church Management System using Visual Basic and I fell like given up cause every NoSQL DB I came across used only C# and I don't know how to use it for a VB project. Some samples on CRUD with Queries will be greatly appreciated
I really need a NoSQL DB for a Church Management System using Visual Basic and I fell like given up cause every NoSQL DB I came across used only C# and I don't know how to use it for a VB project. Some samples on CRUD with Queries will be greatly appreciated
You should be able to follow the C# examples and implement it in vb. Most things could probably even be translated using an online code converter. @Parables
Hi! With the objective of organizing our issues, we are closing old unsolved issues. Please check the latest version of LiteDB and open a new issue if your problem/question/suggestion still applies. Thanks!
Most helpful comment
Hi @mbdavid ,
We already talked about some liteDB "issues" that weren't issues at all but basically lack of my own knowledge on using this excellent tool.
I think that's the time to share about the project that I'm using with LiteDB so, let's begin...
To start this talking, I'm the author of Eiko Finanças Pessoais (https://sourceforge.net/projects/eikofp/).
The Eiko project was a small project that I made while I was without nothing to do at a company many years ago.
It's written on Visual Basic 6 and SQLite and I published on sourceforge on November, 27th, 2010. I thought at that time that it wasn't make any difference for me publishing it but, some time later, something very strange happened.
I googled my name and I saw that there was many sites talking about my little Eiko. Very strange for me because I never used any marketing campaign or something about to spread the word about it.
Then, between 2012 and 2013 I had 3k users. So I thought, why not port Eiko to a new technology?
Needless to say, I didn't had the time for that. I had depression between 2013 and 2014, got divorced of my ex wife and many things happened those times that made me totally unable to rewrite Eiko.
So, now that I'm better and have a lot of free time, I was doing a lot of research to port the app. And then, I found liteDB.
Basically, the old Eiko version used "two" databases. One where users are registered and then, one for each user individually. For a desktop app, it was ok but, how to do that on a small web app?
So, the Eiko research was finished and now I'm porting little by little. I don't know if this information it's useful for @mbdavid but, I'll share anyway.
I'm using on this project:
.NET 4.5,2
C#
LiteDB
AutoMapper
Ninject
I'm testing with .NETCore too, but, instead of Ninject, I'm using AutoFac.
I also have a test version using SQLite instead of LiteDB although is just a test. The final version will be written using LiteDB and I have no plans of using SQLite in this project anymore.
The architecture is Domain Driven Design (DDD). I'm using the same architecture for Windows Forms, WebAPI and ASP.NET MVC technologies.
Thanks for listening.
[],
Regards,
@rmszc81