Documentation

Plateforme SaaS multimodèle pour documents, graphe et fichiers

RociaDB permet de structurer des données métier en documents, de relier des entités via un graphe, puis d’associer des fichiers au même contexte. Concepts, intégration, SDKs, sécurité et bonnes pratiques d’usage.

gRPC JWT Multi-tenant Modèles : Document · Graphe · Fichier Accès : JWT + tenant_id SDKs : Python · TS · Rust

Vue d’ensemble

Comment une application SaaS dialogue avec la plateforme et organise ses données : SDK Python / TS / Rust, authentification JWT + tenant_id, puis trois services orientés document, graphe et fichier.

gRPC

DocumentService

Collections documentaires, recherches exactes, pagination et requête QueryDoc.

gRPC

GraphService

Nœuds, arêtes et traversées paginées, avec des IDs fournis par le client.

streaming

FileService

Fichiers chunkés, métadonnées et visibilité atomique via commit marker.

Modèles de données

La plateforme sépare volontairement document, graphe et fichier. Leur combinaison est explicite et portée par le client.

collection + id

Document

  • Payload JSON brut
  • tenant_id + collection + id
  • ListDoc, FindByField, QueryDoc
node + edge

Graphe

  • IDs fournis par le client
  • AddEdge échoue si une extrémité manque
  • NeighborsIn / NeighborsOut paginés
bucket + file_id

Fichier

  • Upload en streaming
  • Chunks de 1 MiB
  • size, content_type, checksum

Interactions gRPC

Des services orientés document, graphe et fichier, pensés pour des usages applicatifs et des workflows d’intégration.

Documents

Écriture, lecture, suppression et recherche avec pagination et total_count.

PutDoc · GetDoc · DeleteDoc · ListDoc

Graphes

Création de nœuds et arêtes, traversée paginée dans les deux sens.

PutNode · AddEdge · NeighborsOut · NeighborsIn

Fichiers

Upload streamé, téléchargement, lecture de métadonnées et suppression.

Upload · Download · Stat · Delete
QueryDoc v1 — requête documentaire avancée
{{ queryCode }}

Sécurité, environnements & exploitation

Les éléments publics utiles pour exploiter la plateforme proprement dans un contexte SaaS.

JWT obligatoire

Claims requis : iss, sub, tenant_id, exp, iat.

Issuer & JWKS

Validation contre un issuer configuré et un jeu de clés publiques JWKS avec rotation.

Tenant isolation

Le tenant_id structure l’isolation des données et fait partie du contrat applicatif.

Secrets

Clés et secrets hors du code applicatif, injectés par l’environnement.

Parcours recommandé

1
Créer un environnement
Isoler un tenant et configurer les accès.
2
Modéliser les données
Document, graphe et fichier selon votre cas.
3
Intégrer le client
Brancher un SDK ou client gRPC à votre backend.
4
Exploiter & observer
Suivre les flux et tracer les erreurs.

Monitoring, logging & tracing

Pensée pour s’intégrer dans une chaîne d’observabilité standard : Prometheus pour les métriques, Grafana pour les dashboards, Jaeger pour le tracing distribué.

Metrics

Prometheus

rocia_request_totalrocia_request_latency_msrocia_index_scans_totalrocia_stream_bytes_total
Tracing

Jaeger

OpenTelemetry, trace_id propagé dans les métadonnées gRPC puis corrélé avec les journaux.

Dashboards

Grafana

Dashboards SLO, latence p50/p95/p99, taux de succès, alertes & tendances.

SDKs & exemples de clients

Une base de présentation pour Python, TypeScript et Rust, alignée sur les primitives réelles du proto.

{{ sdkInstall }}
{{ sdkCode }}

Questions fréquentes

{{ f.a }}