← Retour aux articles
Performance5 juillet 2026

Le format BRICKS : Diviser pour streamer en temps réel

Analyse du format de partitionnement BRICKS pour le chargement paresseux et la visualisation interactive de milliards de valeurs.

L’un des défis majeurs de la visualisation 3D dans le navigateur web est le transfert des données. Une simulation fluide complète (CFD) ou magnétique (MHD) peut peser plusieurs dizaines de gigaoctets. Télécharger un tel volume avant de commencer l’analyse est impossible dans un navigateur.

Le découpage spatial (Spatial Partitioning)

Le format BRICKS développé pour aiXplore résout cette limitation en découpant le volume de simulation en briques de données indépendantes et indexées. Chaque brique contient :

  • Une sous-grille locale de valeurs physiques.
  • Ses propres métadonnées d’échelle et de limites (bounding box).
  • Un index permettant l’accès direct via des requêtes HTTP Range.

HTTP Range Requests & Chargement Paresseux

Lorsqu’un ingénieur inspecte une simulation :

  1. Le navigateur n’interroge que l’index global du fichier.
  2. Selon la position de la caméra et le plan de coupe actif, seules les briques intersectées sont demandées au serveur.
  3. Le serveur renvoie uniquement les octets ciblés via des requêtes partielles standard (GET avec en-tête Range).
<!-- Requête réseau générée par aiXplore pour charger la brique #482 -->
GET /simulations/turbine.bricks HTTP/1.1
Range: bytes=4820000-4980000

Cette architecture évite le chargement global de la simulation en mémoire vive et permet de naviguer dans des modèles de plusieurs milliards de valeurs avec une réactivité instantanée, même avec une connexion réseau standard.