Version de développement
Cette documentation décrit la version « next » (develop), non encore publiée. Pour la version stable, basculez sur « v5 » dans l'en-tête.
Utilisation

Intégration DuckDB pour les rapports analytiques

Utiliser DuckDB pour optimiser les performances des rapports dans Dokos

Intégration DuckDB pour les rapports analytiques

Dokos intègre désormais DuckDB, une base de données analytique embarquée, pour améliorer les performances des rapports complexes et volumineux. Cette intégration permet de synchroniser les données des doctypes vers des fichiers DuckDB dédiés, optimisant ainsi les requêtes analytiques.

Activation de DuckDB

Configuration globale

  1. Allez dans Développer > Paramètres > Paramètres des rapports synchronisés.
  2. Activez l'option Activer la synchronisation DuckDB.
  3. Sauvegardez les paramètres.
Cette configuration est nécessaire pour activer la synchronisation DuckDB sur l'ensemble du site.

Configuration par rapport

  1. Ouvrez le rapport que vous souhaitez optimiser (ex: Comptabilité > Rapport > Balance générale).
  2. Dans la section Paramètres du rapport, activez l'option Rapport synchronisé.
  3. Sélectionnez les Doctypes à synchroniser (ex: Compte général, Écriture comptable).
  4. Sauvegardez le rapport.
Seuls les rapports de type Script Report peuvent être configurés comme rapports synchronisés.

Synchronisation des données

Synchronisation manuelle

  1. Une fois le rapport configuré, un bouton Synchroniser avec DuckDB apparaît dans la vue du rapport.
  2. Cliquez sur ce bouton pour lancer la synchronisation initiale.
  3. Un message de confirmation s'affiche une fois la synchronisation terminée.

Synchronisation automatique

La synchronisation automatique est déclenchée selon la fréquence définie dans les Paramètres des rapports synchronisés (par défaut : toutes les 24 heures).

Les données sont synchronisées en arrière-plan pour ne pas impacter les performances du site.

Utilisation des rapports synchronisés

Identification des rapports synchronisés

Les rapports synchronisés affichent une bannière en haut de la page indiquant :

  • Statut : Synchronisé ou Non synchronisé
  • Dernière synchronisation : Date et heure de la dernière synchronisation réussie

Exemple d'utilisation

Scénario : Générer une balance générale avec des données volumineuses.

  1. Configurez le rapport Balance générale comme rapport synchronisé avec les doctypes Compte général et Écriture comptable.
  2. Lancez la synchronisation manuelle.
  3. Exécutez le rapport. Les résultats s'affichent plus rapidement grâce à l'utilisation de DuckDB.

Bonnes pratiques

  • Sélection des doctypes : Ne synchronisez que les doctypes nécessaires au rapport pour optimiser l'espace de stockage.
  • Fréquence de synchronisation : Ajustez la fréquence en fonction de la volatilité des données (ex: toutes les heures pour les données critiques).
  • Nettoyage : Les anciennes synchronisations sont automatiquement nettoyées selon la politique de rétention définie.

Les rapports synchronisés ne reflètent pas les modifications en temps réel. Pour des données à jour, désactivez temporairement la synchronisation DuckDB.

Dépannage

Problèmes courants

ProblèmeSolution
Synchronisation échoueVérifiez les logs dans Développer > Documents > Synchronisation DuckDB
Rapport lent malgré la synchronisationVérifiez que les doctypes sélectionnés sont corrects et que la synchronisation est à jour
Erreur de verrouillage DuckDBRedémarrez le worker de fond ou attendez quelques minutes avant de relancer la synchronisation

Vérification des logs

  1. Allez dans Développer > Documents > Synchronisation DuckDB.
  2. Consultez les entrées pour identifier les erreurs de synchronisation.
  3. Pour chaque entrée, vérifiez :
    • Statut : Soumis, En cours, Terminé, Échoué
    • Logs : Détails des opérations effectuées

Limitations

  • Données en temps réel : Les rapports synchronisés ne reflètent pas les modifications apportées après la dernière synchronisation.
  • Types de rapports : Seuls les rapports de type Script Report sont compatibles.
  • Espace de stockage : Chaque synchronisation crée un fichier DuckDB, ce qui peut augmenter l'utilisation du stockage.

Diagramme de flux

Cette fonctionnalité est destinée aux développeurs et administrateurs système. Pour une utilisation optimale, assurez-vous que les workers de fond sont correctement configurés pour gérer les synchronisations en arrière-plan.