Skip to content

Commit 0d7e3ce

Browse files
author
MPCoreDeveloper
committed
huidige stand
1 parent 777445d commit 0d7e3ce

29 files changed

+8689
-1471
lines changed

README.md

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,94 @@ See the comprehensive test suite:
336336

337337
## Performance Benchmarks - Comprehensive Comparison 📊
338338

339+
**See Full Benchmark Report**: [📊 Database Comparison Benchmarks](docs/benchmarks/DATABASE_COMPARISON.md)
340+
341+
SharpCoreDB has been extensively benchmarked against SQLite and LiteDB across all major operations. Here's a quick summary:
342+
343+
### 🎯 Quick Summary
344+
345+
| Scenario | Winner | Performance |
346+
|----------|--------|-------------|
347+
| **Sequential Insert** | SQLite 🥇 | SharpCore: 21x slower |
348+
| **Batch Insert** | SQLite 🥇 | SharpCore: 36x slower |
349+
| **Indexed Lookups** | **SharpCoreDB 🥇** | **46% faster than SQLite!** |
350+
| **Aggregate (SUM)** | **SharpCoreDB 🥇** | **10x faster than SQLite!** |
351+
| **Aggregate (MIN/MAX)** | **SharpCoreDB 🥇** | **8x faster than SQLite!** |
352+
| **Update** | SQLite 🥇 | SharpCore: 3.4x slower |
353+
| **Delete** | SQLite 🥇 | SharpCore: 2.4x slower |
354+
| **Full Table Scan** | SQLite 🥇 | SharpCore: 2x slower |
355+
356+
### 🏆 Where SharpCoreDB Excels
357+
358+
#### 1. Indexed Lookups - **FASTER than SQLite!**
359+
```
360+
SELECT * FROM users WHERE id = ? (1,000 queries)
361+
┌──────────────────────┬──────────┬──────────┐
362+
│ Database │ Time │ vs SQLite│
363+
├──────────────────────┼──────────┼──────────┤
364+
│ SharpCoreDB (Hash) │ 28 ms 🥇 │ BASELINE │
365+
│ SQLite (B-tree) │ 52 ms │ -46% ❌ │
366+
│ SharpCoreDB (Enc) │ 45 ms │ -37% ✅ │
367+
│ LiteDB │ 68 ms │ -59% ❌ │
368+
└──────────────────────┴──────────┴──────────┘
369+
```
370+
371+
**Why**: O(1) hash index vs O(log n) B-tree
372+
373+
#### 2. Aggregate Queries - **DOMINATES!**
374+
```
375+
SUM(revenue) on 100,000 rows
376+
┌──────────────────────────┬─────────┬──────────┐
377+
│ Database │ Time │ vs SQLite│
378+
├──────────────────────────┼─────────┼──────────┤
379+
│ SharpCoreDB (SIMD) │ 1.2 ms 🥇│ -90% ⚡ │
380+
│ SQLite │ 12 ms │ BASELINE │
381+
│ LiteDB (LINQ) │ 45 ms │ +275% ❌ │
382+
└──────────────────────────┴─────────┴──────────┘
383+
```
384+
385+
**Why**: AVX-512 SIMD (Vector512) processes 16 integers per cycle
386+
387+
### ⚠️ Where SQLite Excels
388+
389+
#### Sequential/Batch Inserts
390+
```
391+
10,000 INSERT operations
392+
┌──────────────────────┬──────────┬──────────┐
393+
│ Database │ Time │ vs SQLite│
394+
├──────────────────────┼──────────┼──────────┤
395+
│ SQLite (Transaction) │ 85 ms 🥇 │ BASELINE │
396+
│ LiteDB (Bulk) │ 450 ms │ +430% │
397+
│ SharpCoreDB (WAL) │ 3,100 ms │ +3,547% ❌│
398+
└──────────────────────┴──────────┴──────────┘
399+
```
400+
401+
**Why**: 20+ years of C-level optimization, mature WAL implementation
402+
403+
### 📈 Use Case Recommendations
404+
405+
**✅ Choose SharpCoreDB for:**
406+
- Analytics & BI workloads (SUM, AVG, MIN, MAX)
407+
- Key-value lookups with hash indexes
408+
- .NET-native applications requiring encryption
409+
- Scenarios where indexed lookups dominate
410+
- SIMD-accelerated aggregates
411+
412+
**✅ Choose SQLite for:**
413+
- Write-heavy workloads
414+
- SQL standard compliance
415+
- Cross-platform compatibility
416+
- Mature ecosystem requirements
417+
- General-purpose embedded database
418+
419+
**Full Benchmark Report**: [📊 Database Comparison](docs/benchmarks/DATABASE_COMPARISON.md)
420+
- Complete methodology
421+
- All benchmark results
422+
- Fair comparison analysis
423+
- Performance tuning tips
424+
425+
---
426+
339427
**Test Environment**: Windows 11, Intel i7-10850H (6 cores), .NET 10, SSD
340428
**Date**: December 2025 | **Framework**: BenchmarkDotNet v0.14.0
341429

0 commit comments

Comments
 (0)