Jag såg en gång ett skämt på internet som saAnvänd Blazor+LiteDB för att rita prototyper av oövervinnerlig existensGrovt sett betyder det att prototypritningen är bra, funktionen också är realiserad, och sedan är utvecklingseffektiviteten och hastigheten också mycket snabb.
LiteDB-databas
LiteDB är en liten, snabb och lättviktig NoSQL-inbäddad databas.
Officiell webbplats:Inloggningen med hyperlänken är synlig. GitHub-adress:Inloggningen med hyperlänken är synlig. LiteDB.Studio Visual GUI-verktyg:Inloggningen med hyperlänken är synlig.
- Serverless NoSQL-dokumentlagring
- Enkelt API liknande MongoDB
- 100% C#-kod, stöder .NET 3.5 / .NET 4.0 / NETStandard 1.3 / NETStandard 2.0, enkel DLL (mindre än 300 kb)
- Stödtråd och processsäkerhet
- Stöd för dokumentation/handlingsnivå ACID
- Stöd för dataåterställning efter skrivfel (loggläge)
- Datafilkryptering kan göras med hjälp av DES (AES)-krypteringsalgoritmer
- Du kan använda funktionen eller fluent mapping API för att mappa din POCO-klass till BsonDocument
- Lagrar filer och strömmande data (MongoDB-liknande GridFS)
- Lagring av filer med en enda data (liknande SQLite)
- Stöd för snabb sökning baserad på dokumentfältindex (upp till 16 index per samling)
- Stöd för LINQ-frågor
- Shell-kommandoraden – Prova denna onlineversion
- Ganska snabbt – här är jämförelsen med SQLite
- Öppen källkod och gratis för alla – inklusive kommersiella applikationer
- Kan installeras från NuGet: Install-Package LiteDB
LiteDB vs. SQLite
Båda är faktiskt små databaser, och ingen av dem behöver installera en separat databastjänst, och databasen är bara en separat fil; Den stöder plattformsoberoende och kan användas på Windows, Linux och mobil; LiteDB är en icke-relationell databas, och SQLite är en relationsdatabas Prestandajämförelse:Inloggningen med hyperlänken är synlig.
.NET 7 använder LiteDB-databaser
Skapa först ett nytt .NET 7-projekt och installera LiteDB-databasen med nuget-kommandot, kommandot är följande:
Skapa en demodatabas och försök infoga 100000 databitar med följande kod:
När jag infogar 100 000 databitar känns det som att hela programmet tog 2 sekunder.Diskstorleken är 30,5 MBkan frågas med LiteDB.Studio-verktyget, som visas i följande bild:
Om databasanslutningssträngar:Inloggningen med hyperlänken är synlig.till exempel:
LiteDB erbjuder två typer av anslutningar:DirektochDelad. Detta påverkar hur motorn öppnar datafiler.
Direkt: Motorn öppnar datafilen i exklusivt läge och håller den öppen tills Dispose(). En annan process kan inte öppna datafilen.Detta är rekommenderat läge och standardlägeFör att det är snabbare och snabbare att cache.
Delad: Motorn stänger datafilen efter varje operation. Låset är tillverkat med Mutex. Detta är dyrare, men du kan öppna samma fil från flera processer.
Att försöka utföra en frågeoperation går också mycket snabbt, enligt följande:
LiteDB lagrar filer
LiteDB stöder också lagringsfiloperationer, det vill säga att du kan lagra bilder, dokument, tabeller och annat innehåll från webbplatser direkt i LiteDB-databasen, koden är följande:
(Slut)
|