Présentation de Strata
Strata se positionne comme une plateforme de Business Intelligence qui combine un semantic layer et des agents d’IA capables de générer automatiquement le modèle de données. Le produit s’installe en local, ne nécessite aucune carte bancaire et fonctionne dès la première exécution grâce à un modèle d’exemple TPC‑DS préchargé. L’interface propose des tableaux de bord « beautiful by default » et un mode self‑service destiné à tous les profils.
Architecture et déploiement
Le serveur Strata s’exécute dans un conteneur Docker unique. L’image officielle ghcr.io/stratasite/server:latest inclut une base de données intégrée, ce qui élimine toute configuration externe. Le lancement se fait en une ligne de commande :
docker run -d -p 8080:80 -v strata_data:/data --name strata ghcr.io/stratasite/server:latestAprès 30 à 60 secondes, le conteneur signale son état « healthy » et l’interface web devient accessible à http://localhost:8080. L’installation du serveur peut également être automatisée avec le script curl :
curl -fsSL https://strata.do/server/install.sh | bashLe client en ligne de commande, strata-cli, s’installe via le même script ou avec gem install strata-cli. Il requiert Ruby 3.4.4 ou supérieur, Git et un accès en lecture à un entrepôt de données.
Modélisation assistée par IA
Strata exploite des agents de codage tels que Claude Code ou Codex. L’agent lit le fichier AGENTS.md qui décrit le schéma YAML, les règles de nommage et les contraintes de jointure. En interrogeant le catalogue de l’entrepôt, il propose automatiquement les tables de faits, les dimensions, les mesures et les relations. L’utilisateur valide chaque proposition avant que les fichiers *.yml ne soient écrits, puis le système exécute strata audit pour vérifier la cohérence.
Le modèle repose sur cinq types de mesures et impose une règle de « grain safe blending » : un même nom de champ partagé entre deux tables indique une même entité, ce qui autorise le mélange des mesures tant que les grains restent compatibles. Une jointure unique par paire de tables est requise ; les scénarios de rôle‑playing nécessitent une table de dimension supplémentaire.
Gestion des sources de données et limites
Le CLI supporte plus d’une dizaine d’adaptateurs : Snowflake, Databricks, PostgreSQL, Redshift, MySQL, SQL Server, ClickHouse, Athena, Trino, Druid, DuckDB et SQLite. Chaque connexion se configure via strata datasource add et les informations d’authentification sont stockées dans le fichier .strata, qui est exclu du suivi Git. Les modes d’authentification incluent le token d’accès personnel, les paires de clés et OAuth.
Le processus d’initialisation exige que Docker soit opérationnel ; sur macOS ou Windows, il faut démarrer Docker Desktop, tandis que sous Linux la commande sudo systemctl start docker suffit. En cas d’erreur de permission, le script d’installation doit être exécuté avec sudo. Le premier démarrage du conteneur initialise la base de données interne, ce qui explique le délai initial de 30 à 60 secondes.
Strata ne verrouille aucun composant : l’image Docker peut être remplacée, le moteur OLAP sous‑jacent est interchangeable et le modèle YAML reste portable vers d’autres systèmes comme dbt MetricFlow, Cube ou LookML grâce à une transpilation directe.