한 번 인터넷에서 이런 농담을 본 적이 있습니다.Blazor+LiteDB를 사용해 무적의 존재 프로토타입을 그리세요대략적으로 말하면, 프로토타입 도면이 좋고, 기능도 구현되었으며, 개발 효율성과 속도도 매우 빠릅니다.
LiteDB 데이터베이스
LiteDB는 작고 빠르며 가벼운 NoSQL 임베디드 데이터베이스입니다.
공식 웹사이트:하이퍼링크 로그인이 보입니다. GitHub 주소:하이퍼링크 로그인이 보입니다. LiteDB.Studio 비주얼 GUI 도구:하이퍼링크 로그인이 보입니다.
- 서버리스 NoSQL 문서 저장
- MongoDB와 유사한 간단한 API
- 100% C# 코드, .NET 3.5 / .NET 4.0 / NETStandard 1.3 / NETStandard 2.0 지원, 단일 DLL (300 kb 미만)
- 스레드 및 프로세스 보안 지원
- 문서/액션 레벨 ACID 지원
- 쓰기 실패 후 데이터 복원 지원(로그 모드)
- 데이터 파일 암호화는 DES(AES) 암호화 알고리즘을 사용하여 수행할 수 있습니다
- feature나 fluent mapping API를 사용해 POCO 클래스를 BsonDocument에 매핑할 수 있습니다
- 파일 및 스트리밍 데이터 저장 (MongoDB와 유사한 GridFS)
- 단일 데이터 파일 저장 (SQLite와 유사)
- 문서 필드 색인을 기반으로 한 빠른 검색 지원(컬렉션당 최대 16개의 인덱스)
- LINQ 쿼리 지원
- 셸 커맨드 라인 - 이 온라인 버전을 사용해 보세요
- 꽤 빠른 편입니다 - SQLite와의 비교
- 오픈 소스이며 상업용 애플리케이션을 포함한 모두에게 무료로 제공됩니다
- NuGet에서 설치할 수 있습니다: Install-Package LiteDB
LiteDB vs. SQLite
두 데이터베이스 모두 사실 작은 규모이며, 별도의 데이터베이스 서비스를 설치할 필요가 없으며, 데이터베이스는 단지 별도의 파일일 뿐입니다; 크로스 플랫폼을 지원하며 Windows, Linux, 모바일에서 사용할 수 있습니다; LiteDB는 비관계형 데이터베이스이고, SQLite는 관계형 데이터베이스입니다 성능 비교:하이퍼링크 로그인이 보입니다.
.NET 7은 LiteDB 데이터베이스를 사용합니다
먼저, 새로운 .NET 7 프로젝트를 만들고 nuget 명령어를 사용해 LiteDB 데이터베이스를 설치하세요. 명령어는 다음과 같습니다:
데모 데이터베이스를 만들고 다음 코드로 10만 개의 데이터를 삽입해 보세요:
10만 개의 데이터를 삽입하면 전체 프로그램이 2초밖에 걸리지 않는 것 같아요.디스크 크기는 30.5MB입니다LiteDB.Studio 도구를 사용하여 쿼리할 수 있으며, 아래 이미지에 나와 있습니다:
데이터베이스 연결 문자열에 대하여:하이퍼링크 로그인이 보입니다.예를 들어:
LiteDB는 두 가지 유형의 연결을 제공합니다:직접적그리고공유. 이로 인해 엔진이 데이터 파일을 여는 방식에 영향을 미칩니다.
직접적: 엔진은 독점 모드로 데이터 파일을 열고, Dispose()까지 열려 있습니다. 다른 프로세스는 데이터 파일을 열 수 없습니다.이것이 권장 모드이자 기본 모드입니다더 빠르고 캐시가 가능하기 때문입니다.
공유: 엔진은 각 작업 후 데이터 파일을 닫습니다. 자물쇠는 Mutex를 사용해 만들어졌습니다. 비용이 더 들지만, 여러 프로세스에서 같은 파일을 열 수 있습니다.
쿼리 연산을 시도하는 것도 매우 빠르며, 다음과 같습니다:
LiteDB는 파일을 저장합니다
LiteDB는 저장소 파일 작업도 지원하는데, 이는 웹사이트의 이미지, 문서, 테이블 및 기타 콘텐츠를 LiteDB 데이터베이스에 직접 저장할 수 있습니다. 코드는 다음과 같습니다:
(끝)
|