40616ad3c0
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
5.9 KiB
5.9 KiB
دليل تثبيت BaraDB
المتطلبات
- مترجم Nim >= 2.2.0
- ملفات رأس OpenSSL (لدعم TLS)
- نظام التشغيل: لينكس، macOS، ويندوز
المنصات المدعومة
| نظام التشغيل | البنية | الحالة |
|---|---|---|
| لينكس | x86_64 | ✅ دعم كامل |
| لينكس | ARM64 | ✅ دعم كامل |
| macOS | x86_64 | ✅ دعم كامل |
| macOS | ARM64 | ✅ دعم كامل |
| ويندوز | x86_64 | ✅ مدعوم |
| FreeBSD | x86_64 | 🟡 اختبار المجتمع |
تثبيت Nim
لينكس
# المثبت الرسمي
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
ويندوز
# باستخدام choosenim
curl.exe -A "MSYS2_$(uname -m)" -L https://nim-lang.org/choosenim/init.ps1 | powershell -
# باستخدام winget
winget install nim
# باستخدام scoop
scoop install nim
التحقق من التثبيت
nim --version
# المتوقع: Nim Compiler Version 2.2.0 أو أحدث
تثبيت OpenSSL
لينكس
# Ubuntu/Debian
sudo apt-get install libssl-dev
# Fedora
sudo dnf install openssl-devel
# Arch Linux
sudo pacman -S openssl
macOS
OpenSSL مضمن مع النظام. إذا لزم الأمر:
brew install openssl
ويندوز
OpenSSL مضمن مع توزيع Nim ويندوز. للبناء اليدوي، قم بالتنزيل من slproweb.com.
بناء BaraDB
استنساخ المستودع
git clone https://codeberg.org/baraba/baradb
cd barabaDB
تثبيت التبعيات
nimble install -d -y
خيارات البناء
بناء التصحيح
nim c -d:ssl -o:build/baradadb src/baradadb.nim
بناء الإصدار (موصى به)
nim c -d:ssl -d:release --opt:speed -o:build/baradadb src/baradadb.nim
استخدام مهام Nimble
# بناء التصحيح
nimble build_debug
# بناء الإصدار
nimble build_release
تقليل حجم الملف الثنائي
nim c -d:ssl -d:release --opt:size -o:build/baradadb src/baradadb.nim
strip build/baradadb
التحقق من البناء
./build/baradadb --version
# المتوقع: BaraDB v1.1.0 — Multimodal Database Engine
تشغيل الاختبارات
جميع الاختبارات
nim c -d:ssl -r tests/test_all.nim
مجموعات اختبارات محددة
# اختبارات التخزين
nim c -d:ssl -r tests/test_storage.nim
# اختبارات محرك الاستعلام
nim c -d:ssl -r tests/test_query.nim
# اختبارات البروتوكول
nim c -d:ssl -r tests/test_protocol.nim
المعايير
nim c -d:ssl -d:release -r benchmarks/bench_all.nim
خيارات التثبيت
التثبيت على مستوى النظام
# بناء إصدار RELEASE
nimble build_release
# التثبيت في /usr/local/bin
sudo cp build/baradadb /usr/local/bin/
sudo chmod +x /usr/local/bin/baradadb
# إنشاء دليل البيانات
sudo mkdir -p /var/lib/baradb
sudo chmod 755 /var/lib/baradb
الملف الثنائي المبنى مسبقًا
قم بتنزيل أحدث إصدار لمنصتك:
# لينكس 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
# لينكس 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
# سحب الصورة الرسمية
docker pull barabadb/barabadb:latest
# التشغيل
docker run -d \
-p 9472:9472 \
-p 9470:9470 \
-p 9471:9471 \
-v baradb_data:/data \
barabadb/barabadb
Docker Compose
docker-compose up -d
الاستخدام المدمج (مشاريع Nim)
أضف إلى ملف .nimble الخاص بك:
requires "barabadb >= 1.1.0"
استخدم في الكود:
import barabadb/storage/lsm
var db = newLSMTree("./data")
db.put("key", cast[seq[byte]]("value"))
let (found, val) = db.get("key")
db.close()
التشغيل الأول
# بدء الخادم
./build/baradadb
# المخرجات المتوقعة:
# BaraDB v1.1.0 — Multimodal Database Engine
# BaraDB TCP listening on 127.0.0.1:9472
# الاختبار عبر HTTP API
curl http://localhost:9470/health
# الصدفة التفاعلية
./build/baradadb --shell
حل مشكلات التثبيت
"cannot open file: hunos"
nimble install -d -y
"BaraDB requires SSL support"
قم دائمًا بالبناء باستخدام -d:ssl:
nim c -d:ssl -o:build/baradadb src/baradadb.nim
البناء البطيء
استخدم البناء المتوازي:
nim c -d:ssl -d:release --parallelBuild:4 -o:build/baradadb src/baradadb.nim
حجم الملف الثنائي الكبير
استخدم تحسين الحجم:
nim c -d:ssl -d:release --opt:size --passL:-s -o:build/baradadb src/baradadb.nim