-
Notifications
You must be signed in to change notification settings - Fork 1
QUICK_START
Get ThemisDB up and running in 5 minutes
- ✨ Features & Highlights
- 🚀 Schnellstart
- 📖 Installation & Setup
- 💡 Erste Schritte
- 🔧 Konfiguration
- 🛠️ Troubleshooting
- 📚 Siehe auch
- 📝 Changelog
ThemisDB bietet:
- 🐳 Docker-Support - Schnellste Installation
- 📦 Multi-Plattform - Windows, Linux, macOS
- ⚡ Zero-Config - Start in seconds
- 🔗 REST API - Einfache Integration
- 📊 Multi-Model - Relational, Document, Graph, Vector
- Docker (empfohlen) ODER
- Linux/macOS/Windows mit Build-Tools
Fastest way to get started:
# Pull the latest image
docker pull themisdb/themisdb:latest
# Run ThemisDB
docker run -d \
--name themisdb \
-p 8765:8765 \
-p 8080:8080 \
-v themis_data:/data \
themisdb/themisdb:latest
# Check if it's running
curl http://localhost:8765/healthExpected response:
{"status":"ok","uptime":5}Debian/Ubuntu:
wget https://github.com/makr-code/ThemisDB/releases/latest/download/themisdb_1.2.0-1_amd64.deb
sudo apt install ./themisdb_1.2.0-1_amd64.deb
sudo systemctl start themisdbmacOS (Homebrew):
brew install themisdb
brew services start themisdbWindows (Chocolatey):
choco install themisdbClone and build:
git clone https://github.com/makr-code/ThemisDB.git
cd ThemisDB
# Linux/macOS
./scripts/setup.sh
./scripts/build.sh
# Windows
.\scripts\setup.ps1
.\build.ps1
# Start server
./build/themis_server --config config.yamlcurl http://localhost:8765/healthcurl -X PUT http://localhost:8765/entities/users:alice \
-H "Content-Type: application/json" \
-d '{
"blob": "{\"name\":\"Alice\",\"age\":30,\"city\":\"Berlin\",\"role\":\"developer\"}"
}'Response:
{"status":"success","key":"users:alice"}curl http://localhost:8765/entities/users:aliceResponse:
{
"key": "users:alice",
"blob": "{\"name\":\"Alice\",\"age\":30,\"city\":\"Berlin\",\"role\":\"developer\"}"
}# Create Bob
curl -X PUT http://localhost:8765/entities/users:bob \
-H "Content-Type: application/json" \
-d '{"blob":"{\"name\":\"Bob\",\"age\":35,\"city\":\"Berlin\",\"role\":\"manager\"}"}'
# Create Charlie
curl -X PUT http://localhost:8765/entities/users:charlie \
-H "Content-Type: application/json" \
-d '{"blob":"{\"name\":\"Charlie\",\"age\":28,\"city\":\"Munich\",\"role\":\"developer\"}"}'
# Create David
curl -X PUT http://localhost:8765/entities/users:david \
-H "Content-Type: application/json" \
-d '{"blob":"{\"name\":\"David\",\"age\":32,\"city\":\"Hamburg\",\"role\":\"designer\"}"}'curl -X POST http://localhost:8765/index/create \
-H "Content-Type: application/json" \
-d '{"table":"users","column":"city"}'Response:
{"status":"success","index":"users.city"}Find all users in Berlin:
curl -X POST http://localhost:8765/query \
-H "Content-Type: application/json" \
-d '{
"table": "users",
"predicates": [{"column": "city", "value": "Berlin"}],
"return": "entities"
}'Response:
{
"table": "users",
"count": 2,
"entities": [
"{\"name\":\"Alice\",\"age\":30,\"city\":\"Berlin\",\"role\":\"developer\"}",
"{\"name\":\"Bob\",\"age\":35,\"city\":\"Berlin\",\"role\":\"manager\"}"
]
}curl -X POST http://localhost:8765/index/create \
-H "Content-Type: application/json" \
-d '{"table":"users","column":"age","type":"range"}'Find users aged 28-33, sorted by age:
curl -X POST http://localhost:8765/query \
-H "Content-Type: application/json" \
-d '{
"table": "users",
"range": [{"column": "age", "gte": "28", "lte": "33"}],
"order_by": {"column": "age", "desc": false},
"return": "entities"
}'AQL provides SQL-like syntax with graph and vector support:
curl -X POST http://localhost:8765/query/aql \
-H "Content-Type: application/json" \
-d '{
"query": "FOR u IN users FILTER u.city == \"Berlin\" AND u.age >= 30 RETURN u"
}'# JSON statistics
curl http://localhost:8765/stats
# Prometheus metrics
curl http://localhost:8765/metricsCreate edges (relationships):
# Alice knows Bob
curl -X PUT http://localhost:8765/entities/edge:e1 \
-H "Content-Type: application/json" \
-d '{
"blob": "{\"id\":\"e1\",\"_from\":\"users:alice\",\"_to\":\"users:bob\",\"type\":\"knows\"}"
}'
# Bob knows Charlie
curl -X PUT http://localhost:8765/entities/edge:e2 \
-H "Content-Type: application/json" \
-d '{
"blob": "{\"id\":\"e2\",\"_from\":\"users:bob\",\"_to\":\"users:charlie\",\"type\":\"knows\"}"
}'
# Graph traversal (BFS)
curl -X POST http://localhost:8765/graph/traverse \
-H "Content-Type: application/json" \
-d '{"start_vertex":"users:alice","max_depth":2}'Create vector index:
curl -X POST http://localhost:8765/vector/create-index \
-H "Content-Type: application/json" \
-d '{
"table": "documents",
"dimension": 128,
"metric": "l2"
}'Add vector embeddings:
curl -X PUT http://localhost:8765/entities/documents:doc1 \
-H "Content-Type: application/json" \
-d '{
"blob": "{\"title\":\"Introduction\",\"embedding\":[0.1,0.2,...]}"
}'Vector similarity search:
curl -X POST http://localhost:8765/vector/search \
-H "Content-Type: application/json" \
-d '{
"table": "documents",
"vector": [0.1, 0.2, ...],
"k": 10
}'curl -X PUT http://localhost:8765/entities/users:alice \
-H "Content-Type: application/json" \
-d '{"blob":"{\"name\":\"Alice\",\"age\":31,\"city\":\"Berlin\",\"role\":\"senior developer\"}"}'curl -X DELETE http://localhost:8765/entities/users:alicecurl -X POST http://localhost:8765/entities/batch \
-H "Content-Type: application/json" \
-d '{
"operations": [
{"op":"PUT","key":"users:eve","blob":"{\"name\":\"Eve\"}"},
{"op":"PUT","key":"users:frank","blob":"{\"name\":\"Frank\"}"},
{"op":"DELETE","key":"users:old_user"}
]
}'curl -X POST http://localhost:8765/admin/backup \
-H "Content-Type: application/json" \
-d '{"path":"/backups/backup-2025-12-15"}'Basic config.yaml:
storage:
rocksdb_path: ./data/themis_server
memtable_size_mb: 256
block_cache_size_mb: 1024
server:
host: 0.0.0.0
port: 8765
worker_threads: 8
vector_index:
engine: hnsw
hnsw_m: 16
hnsw_ef_construction: 200See: Configuration Guide
Check logs:
# Docker
docker logs themisdb
# Package installation
sudo journalctl -u themisdb
# From source
./build/themis_server --log-level debugCheck if server is running:
# Health check
curl http://localhost:8765/health
# Process check
ps aux | grep themis_server
# Docker check
docker ps | grep themisdbChange port in config.yaml:
server:
port: 8766 # Use different portCheck data directory permissions:
# Linux/macOS
chmod 755 ./data
chown $USER:$USER ./data
# Docker - use volumes
docker run -v themis_data:/data themisdb/themisdb:latest- Installation Guide - Detailed installation instructions
- Configuration Guide - All configuration options
- AQL Documentation - Learn the query language
- REST API Reference - Complete API documentation
- Client SDKs - Use ThemisDB from your favorite language
- Documentation: https://makr-code.github.io/ThemisDB/
- GitHub Issues: Report a bug
- Discussions: Ask questions
- Security: Security policy
Congratulations! You've completed the quick start guide. You now know how to:
- ✅ Install and run ThemisDB
- ✅ Create, read, update, and delete entities
- ✅ Create indexes and query data
- ✅ Work with graphs and vectors
- ✅ Monitor your database
Next: Explore the full documentation to learn about advanced features like transactions, sharding, replication, and GPU acceleration.
ThemisDB v1.3.4 | GitHub | Documentation | Discussions | License
Last synced: January 02, 2026 | Commit: 6add659
Version: 1.3.0 | Stand: Dezember 2025
- Übersicht
- Home
- Dokumentations-Index
- Quick Reference
- Sachstandsbericht 2025
- Features
- Roadmap
- Ecosystem Overview
- Strategische Übersicht
- Geo/Relational Storage
- RocksDB Storage
- MVCC Design
- Transaktionen
- Time-Series
- Memory Tuning
- Chain of Thought Storage
- Query Engine & AQL
- AQL Syntax
- Explain & Profile
- Rekursive Pfadabfragen
- Temporale Graphen
- Zeitbereichs-Abfragen
- Semantischer Cache
- Hybrid Queries (Phase 1.5)
- AQL Hybrid Queries
- Hybrid Queries README
- Hybrid Query Benchmarks
- Subquery Quick Reference
- Subquery Implementation
- Content Pipeline
- Architektur-Details
- Ingestion
- JSON Ingestion Spec
- Enterprise Ingestion Interface
- Geo-Processor Design
- Image-Processor Design
- Hybrid Search Design
- Fulltext API
- Hybrid Fusion API
- Stemming
- Performance Tuning
- Migration Guide
- Future Work
- Pagination Benchmarks
- Enterprise README
- Scalability Features
- HTTP Client Pool
- Build Guide
- Implementation Status
- Final Report
- Integration Analysis
- Enterprise Strategy
- Verschlüsselungsstrategie
- Verschlüsselungsdeployment
- Spaltenverschlüsselung
- Encryption Next Steps
- Multi-Party Encryption
- Key Rotation Strategy
- Security Encryption Gap Analysis
- Audit Logging
- Audit & Retention
- Compliance Audit
- Compliance
- Extended Compliance Features
- Governance-Strategie
- Compliance-Integration
- Governance Usage
- Security/Compliance Review
- Threat Model
- Security Hardening Guide
- Security Audit Checklist
- Security Audit Report
- Security Implementation
- Development README
- Code Quality Pipeline
- Developers Guide
- Cost Models
- Todo Liste
- Tool Todo
- Core Feature Todo
- Priorities
- Implementation Status
- Roadmap
- Future Work
- Next Steps Analysis
- AQL LET Implementation
- Development Audit
- Sprint Summary (2025-11-17)
- WAL Archiving
- Search Gap Analysis
- Source Documentation Plan
- Changefeed README
- Changefeed CMake Patch
- Changefeed OpenAPI
- Changefeed OpenAPI Auth
- Changefeed SSE Examples
- Changefeed Test Harness
- Changefeed Tests
- Dokumentations-Inventar
- Documentation Summary
- Documentation TODO
- Documentation Gap Analysis
- Documentation Consolidation
- Documentation Final Status
- Documentation Phase 3
- Documentation Cleanup Validation
- API
- Authentication
- Cache
- CDC
- Content
- Geo
- Governance
- Index
- LLM
- Query
- Security
- Server
- Storage
- Time Series
- Transaction
- Utils
Vollständige Dokumentation: https://makr-code.github.io/ThemisDB/