8c29e700c7
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
This reverts commit 956066631e.
5.1 KiB
5.1 KiB
BaraDB - Kurulum Rehberi
Gereksinimler
- Nim Derleyici >= 2.2.0
- OpenSSL geliştirme başlıkları (TLS desteği için)
- İşletim Sistemi: Linux, macOS, Windows
Desteklenen Platformlar
| OS | Mimari | Durum |
|---|---|---|
| Linux | x86_64 | ✅ Tam destek |
| Linux | ARM64 | ✅ Tam destek |
| macOS | x86_64 | ✅ Tam destek |
| macOS | ARM64 (Apple Silicon) | ✅ Tam destek |
| Windows | x86_64 | ✅ Destekleniyor |
| FreeBSD | x86_64 | 🟡 Topluluk testli |
Nim Kurulumu
Linux
# Resmi kurulum scripti
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install nim
# Fedora
sudo dnf install nim
# Arch Linux
sudo pacman -S nim
macOS
# Homebrew
brew install nim
# MacPorts
sudo port install nim
Windows
# choosenim ile
curl.exe -A "MSYS2_$(uname -m)" -L https://nim-lang.org/choosenim/init.ps1 | powershell -
# winget ile
winget install nim
# scoop ile
scoop install nim
Kurulumu Doğrulama
nim --version
# Beklenen: Nim Compiler Version 2.2.0 veya daha yeni
OpenSSL Kurulumu
Linux
# Ubuntu/Debian
sudo apt-get install libssl-dev
# Fedora
sudo dnf install openssl-devel
# Arch Linux
sudo pacman -S openssl
macOS
OpenSSL sistemle birlikte gelir. Gerekirse:
brew install openssl
Windows
OpenSSL, Nim Windows dağıtımıyla birlikte gelir. Manuel derlemeler için slproweb.com adresinden indirin.
BaraDB Derleme
Depoyu Klonlama
git clone https://github.com/katehonz/barabaDB.git
cd barabaDB
Bağımlılıkları Kurma
nimble install -d -y
Derleme Seçenekleri
Debug Derleme
nim c -d:ssl -o:build/baradadb src/baradadb.nim
Release Derleme (Önerilen)
nim c -d:ssl -d:release --opt:speed -o:build/baradadb src/baradadb.nim
Nimble Tasks Kullanma
# Debug derleme
nimble build_debug
# Release derleme
nimble build_release
Binary Boyutunu Küçültme
nim c -d:ssl -d:release --opt:size -o:build/baradadb src/baradadb.nim
strip build/baradadb
Derlemeyi Doğrulama
./build/baradadb --version
# Beklenen: BaraDB v1.1.0 — Multimodal Database Engine
Testleri Çalıştırma
Tüm Testler
nim c -d:ssl -r tests/test_all.nim
Belirli Test Süitleri
# Depolama testleri
nim c -d:ssl -r tests/test_storage.nim
# Sorgu motoru testleri
nim c -d:ssl -r tests/test_query.nim
# Protokol testleri
nim c -d:ssl -r tests/test_protocol.nim
Benchmarklar
nim c -d:ssl -d:release -r benchmarks/bench_all.nim
Kurulum Seçenekleri
Sistem Geneli Kurulum
# Release binary derle
nimble build_release
# /usr/local/bin'e kur
sudo cp build/baradadb /usr/local/bin/
sudo chmod +x /usr/local/bin/baradadb
# Veri dizini oluştur
sudo mkdir -p /var/lib/baradb
sudo chmod 755 /var/lib/baradb
Ön Derlenmiş Binary
En son sürümü platformunuz için indirin:
# Linux x86_64
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-linux-amd64
chmod +x baradadb-linux-amd64
mv baradadb-linux-amd64 /usr/local/bin/baradadb
# Linux ARM64
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-linux-arm64
chmod +x baradadb-linux-arm64
mv baradadb-linux-arm64 /usr/local/bin/baradadb
# macOS
wget https://github.com/katehonz/barabaDB/releases/latest/download/baradadb-darwin-amd64
chmod +x baradadb-darwin-amd64
mv baradadb-darwin-amd64 /usr/local/bin/baradadb
Docker
# Resmi image'i çek
docker pull barabadb/barabadb:latest
# Çalıştır
docker run -d \
-p 9472:9472 \
-p 9470:9470 \
-p 9471:9471 \
-v baradb_data:/data \
barabadb/barabadb
Docker Compose
docker-compose up -d
Gömülü Kullanım (Nim Projeleri)
.nimble dosyanıza ekleyin:
requires "barabadb >= 1.1.0"
Kodunuzda kullanın:
import barabadb/storage/lsm
var db = newLSMTree("./data")
db.put("key", cast[seq[byte]]("value"))
let (found, val) = db.get("key")
db.close()
İlk Çalıştırma
# Sunucuyu başlat
./build/baradadb
# Beklenen çıktı:
# BaraDB v1.1.0 — Multimodal Database Engine
# BaraDB TCP listening on 127.0.0.1:9472
# HTTP API ile test et
curl http://localhost:9470/health
# İnteraktif shell
./build/baradadb --shell
Kurulum Sorunlarını Giderme
"cannot open file: hunos"
nimble install -d -y
"BaraDB requires SSL support"
Her zaman -d:ssl ile derleyin:
nim c -d:ssl -o:build/baradadb src/baradadb.nim
Yavaş derleme
Paralel derleme kullanın:
nim c -d:ssl -d:release --parallelBuild:4 -o:build/baradadb src/baradadb.nim
Büyük binary boyutu
Boyut optimizasyonu kullanın:
nim c -d:ssl -d:release --opt:size --passL:-s -o:build/baradadb src/baradadb.nim