@knw @ver-003 @date-2025-10-21 @twerse
**Version :** 0.0.2
**Date :** 2025-10-21
**Tags :** `@RQL` `@Query` `@Reactive` `@Stream` `@Language` `@orix-rql`
**RQL (Reactive Query Language)** est le langage de requête natif d'OrixDB, combinant requêtes RSON, SQL et flux RSVT temps réel.
**Bibliothèques clés :** orix-rql, orix-optimizer, orix-join
> **Extension future :** **FractalQuery (FQ)** est une extension expérimentale de RQL optimisée pour les dimensions fractales auto-générées (voir [10-Orix-Fractal-Dimensions.md](./10-Orix-Fractal-Dimensions.md)). RQL reste le langage standard ; FQ ajoute des opérateurs spécifiques pour navigation multi-dimensionnelle.
| Bibliothèque | Fonction | Lignes |
| **orix-rql** | Reactive Query Language - Langage de requête mixte SQL+Graph+Spatial | ~290 |
| **orix-optimizer** | Optimiseur de requêtes | ~303 |
| **orix-join** | Opérateurs de jointure | ~300 |
| **orix-parser** | Parser SQL/RQL | ~500 |
| **orix-preparser** | Convertisseurs de formats | ~300 |
### Requête Temporelle
select * from @dim(time > now()-5m)
### Requête Spatiale
select * from @seg(SEG6.montreal.2025)
where distance(coordinates, point(45.5, -73.6)) < 1000
### Requête Réactive (Abonnement)
subscribe to users
where changes.field = 'status'
emit on_change
use orix_rql::RqlQuery;
let query = RqlQuery::parse(r#"
select name, age from users
where age > 30
order by age desc
limit 10
"#)?;
let results = orix.execute_rql(query)?;
### Router Universel
// twe-query : point d'entrée unique pour tous les formats
use twe_query::TweQuery;
let query_engine = TweQuery::new()
.with_cache_enabled(true)
.with_benchmark(true);
// Auto-détection et routage
let result = query_engine.execute("SELECT * FROM users")?; // SQL → RQL
let result = query_engine.execute("@seg(SEG6.montreal)")?; // RQL direct
### CLI twe-query
# Exécution directe
twe-query "SELECT * FROM users WHERE age > 30" # SQL → RQL → Orix
twe-query "@seg(SEG6.montreal) => select(buildings)" # RQL direct
twe-query data.geojson # GeoJSON → RSVT → Orix³
# Avec cache et métriques
twe-query --cache --stats query.sql
### Performance
| Opération | twe-query | RQL Direct | Gain |
| **Détection format** | <1µs | N/A | Auto |
| **Cache hit** | 10ms | 100ms | 10× |
| **SQL → RQL** | 200ms/1000 | N/A | Conversion |
- [01-Orix-Architecture.md](./01-Orix-Architecture.md)
- [../05-PARSERS/05-twe-query.md](../05-PARSERS/05-twe-query.md)
**Dernière mise à jour :** 2025-10-21
**Maintenu par :** Équipe Twerse Core
**Version ORIX :** 0.0.2