Files
Baradb/docs/bg/performance.md
dimgigov c55d3080cf
CI / test (push) Has been cancelled
CI / verify (push) Has been cancelled
Clients CI / build-server (push) Has been cancelled
Clients CI / test-python (push) Has been cancelled
Clients CI / test-javascript (push) Has been cancelled
Clients CI / test-nim (push) Has been cancelled
Clients CI / test-rust (push) Has been cancelled
Update documentation and clients for v1.1.0
Documentation updates:
- Fix v0.1.0 → v1.1.0 version numbers in en, ru, fa, zh docs
- Add missing Window Functions, Multi-Tenant ERP, Supported Keywords sections
  to ru, fa, zh baraql.md (~105 lines each)
- Expand Turkish and Arabic baraql.md (110 → 268 lines)
- Expand Turkish and Arabic installation.md (62 → 307 lines)
- Add new Bulgarian documentation files (18 new files)

Client updates:
- Python: Full async/await rewrite with asyncio, request queueing
- Rust: Full async/await rewrite with tokio, async examples
- Nim: Update README to v1.1.0
- All clients now support async patterns consistently
2026-05-14 23:05:47 +03:00

4.1 KiB
Raw Permalink Blame History

Ръководство за Производителност

Методология на Бенчмарковете

Всички бенчмаркове са проведени с:

  • Компилатор: Nim 2.2.0 с -d:release --opt:speed
  • CPU: AMD Ryzen 9 5900X (12 ядра / 24 нишки)
  • Памет: 64 GB DDR4-3600
  • Диск: Samsung 980 Pro NVMe SSD
  • ОС: Ubuntu 24.04 LTS

Пускане на пълния бенчмарк сюит:

nim c -d:ssl -d:release -r benchmarks/bench_all.nim

Storage Engine Бенчмаркове

LSM-Tree Key-Value

Метрика Стойност
Пропускателна способност при запис ~580,000 ops/s
Пропускателна способност при четене ~720,000 ops/s
Средна латентност при запис 1.7 µs
Средна латентност при четене 1.4 µs

LSM-Tree използва 64MB MemTable, WAL fsync при всеки запис и size-tiered compaction с 6 нива.

B-Tree Индекс

Метрика Стойност
Пропускателна способност при вмъкване ~1,200,000 ops/s
Пропускателна способност при точково търсене ~1,500,000 ops/s
Range scan (1000 ключа) ~0.3 ms

Vector Engine Бенчмаркове

HNSW Индекс

Метрика Стойност
Вмъкване (dim=128) ~45,000 вектора/s
Търсене топ-10 (dim=128, n=10K) ~2 ms
Търсене топ-10 (dim=128, n=100K) ~8 ms

SIMD Функции за Разстояние

Операция dim=128 dim=768 dim=1536
Косинусово разстояние 4.2M/s 850K/s 420K/s
L2 (Евклидово) 4.5M/s 920K/s 450K/s
Скаларно произведение 4.8M/s 980K/s 480K/s

Full-Text Search Бенчмаркове

Метрика Стойност
Индексиране ~320,000 документа/s
BM25 търсене ~28,000 заявки/s
Fuzzy търсене (distance=2) ~850 заявки/s

Graph Engine Бенчмаркове

Операция Пропускателна способност
Добавяне на възел ~2.5M ops/s
Добавяне на ребро ~1.8M ops/s
BFS (1K възела, 5K ребра) ~12K обхождания/s
Dijkstra най-кратък път ~120 µs
PageRank (10 итерации) ~450 графа/s

Протоколни Бенчмаркове

Протокол Връзки Заявки/s Латентност p99
Бинарен (localhost) 1 45,000 0.4 ms
Бинарен (localhost) 100 380,000 1.2 ms
HTTP/REST 1 12,000 2.1 ms
HTTP/REST 100 95,000 5.8 ms
WebSocket 1 18,000 1.8 ms

Вертикален Мащабинг

Ядра LSM Запис LSM Четене Векторно Търсене
1 580K 720K 2.0 ms
4 1.9M 2.6M 1.1 ms
8 3.4M 4.8M 0.7 ms
16 5.8M 7.2M 0.5 ms

Ръководство за Настройка

За Write-Heavy Натоварвания

export BARADB_MEMTABLE_SIZE_MB=256
export BARADB_WAL_SYNC_INTERVAL_MS=10
export BARADB_COMPACTION_INTERVAL_MS=30000

За Read-Heavy Натоварвания

export BARADB_CACHE_SIZE_MB=1024
export BARADB_BLOOM_BITS_PER_KEY=10
export BARADB_COMPACTION_INTERVAL_MS=120000

За Векторно Търсене

export BARADB_VECTOR_EF_CONSTRUCTION=200
export BARADB_VECTOR_EF_SEARCH=128
export BARADB_VECTOR_M=32

За Графова Аналитика

export BARADB_GRAPH_PAGE_RANK_ITERATIONS=20
export BARADB_GRAPH_LOUVAIN_RESOLUTION=1.0