| Résumé | L’Explorateur de données Discourse vous permet d’exécuter des requêtes SQL sur votre base de données en direct, afin de générer des rapports statistiques à jour en temps réel. | |
| Guide d’installation | Ce plugin est intégré au cœur de Discourse. Aucune installation séparée du plugin n’est nécessaire. |
Si vous cherchez des exemples ou de l’aide pour des requêtes personnalisées, vous trouverez de nombreux sujets dans notre catégorie #data-reporting sous l’étiquette sql-query. Si aucun ne correspond à vos besoins spécifiques, n’hésitez pas à créer un nouveau sujet pour demander de l’aide à la communauté.
Aide sur les requêtes
Hébergé par nous ? Ce plugin est disponible dans nos offres Business et Entreprise. Data Explorer | Discourse - Civilized Discussion
Après avoir installé le plugin, rendez-vous sur /admin/plugins.
![]()
Cliquez sur le bouton « Paramètres » et activez data explorer enabled, puis revenez en arrière et actualisez la page.
Un nouvel onglet nommé « Explorateur de données » devrait maintenant apparaître dans la navigation empilée. Sélectionnez-le ou rendez-vous directement sur /admin/plugins/discourse-data-explorer, puis utilisez les boutons +, Importer ou Exécuter pour commencer.
Requêtes par défaut
Sur une installation fraîche, l’Explorateur de données est livré avec plusieurs requêtes permettant d’extraire des informations de l’activité de votre forum. Ouvrez n’importe quelle requête et cliquez sur Exécuter pour l’essayer.
Voici à quoi ressemblent les requêtes par défaut.
Note : Les requêtes par défaut sont extraites de ce fichier : discourse-data-explorer/lib/discourse_data_explorer/queries.rb at main · discourse/discourse-data-explorer · GitHub
Si vous avez une requête géniale que vous souhaitez partager avec tout le monde, faites une PR exactement comme celle-ci.
Les requêtes par défaut ne peuvent pas être modifiées. N’hésitez pas à copier le code SQL et à le coller dans une nouvelle requête si vous souhaitez les modifier.
Écrire des requêtes
Lorsque vous cliquez sur l’un des boutons Modifier d’une vue de requête ou que vous démarrez une nouvelle requête d’exploration, vous êtes présenté avec un écran comme celui ci-dessous :
Les deux premiers champs sont le nom et la description de la requête. Le nom est ce que vous sélectionnez dans la liste déroulante, et la description doit être utilisée pour expliquer, par exemple, quoi saisir dans les paramètres de la requête ou décrire quelles données sont interrogées.
Le volet de gauche est l’endroit où vous écrivez la requête SQL. Une coloration syntaxique et une vérification mineure sont fournies.
Exécution automatique des requêtes
Bien que vous puissiez toujours exécuter une requête en cliquant sur le bouton Exécuter, vous pouvez gagner du temps lors du chargement d’une requête en ajoutant le paramètre run à l’URL.
Par exemple : /admin/plugins/discourse-data-explorer/queries/123?run
Lorsque ce paramètre est ajouté à l’URL, la requête s’exécute dès le chargement de la page, vous n’avez donc pas besoin de cliquer sur le bouton Exécuter pour voir les résultats. Cela est particulièrement utile pour les requêtes que vous exécutez fréquemment, vous permettant de les ajouter à vos favoris ou à votre barre latérale avec le paramètre run inclus pour un rapport en un clic.
Importer des requêtes
Pour un exemple, importons-en une que j’ai écrite. Téléchargez ce fichier, puis ouvrez la boîte de dialogue d’importation et sélectionnez le fichier à télécharger ou collez la requête dans la zone de texte. Cliquez sur Importer pour l’enregistrer, puis cliquez sur Exécuter pour voir les résultats.
most-common-likers.dcquery (1).json (442 octets)
Il semble que tous les développeurs de Discourse s’apprécient beaucoup ![]()
Rechercher des requêtes
Si vous avez accumulé trop de requêtes géniales, pas de problème ! La barre de recherche peut vous aider à filtrer par titres et descriptions.
Autoriser les groupes non membres du personnel à exécuter des requêtes
Vous pouvez ajouter des groupes spécifiques (y compris les modérateurs) à une requête pour leur accorder l’accès :
Après avoir enregistré, vous pouvez le trouver sur la page des Groupes pour ce groupe particulier sous l’onglet Rapports :
Cliquez sur n’importe quelle requête pour l’ouvrir, puis sur le bouton Exécuter pour voir les résultats. Vous pouvez également ajouter aux favoris les rapports de groupe en cliquant sur le bouton Ajouter aux favoris.
Partager des requêtes avec des paramètres prédéfinis
Si vous avez inclus des paramètres définis par l’utilisateur dans votre requête, vous pouvez partager un lien vers la requête et inclure les paramètres dans l’URL afin qu’ils soient préremplis lors du chargement de la page.
Vous devez inclure les paramètres dans l’URL au format params={"nom_paramètre":"valeur"}. Séparez plusieurs paramètres par des virgules. Par exemple :
discourse.example.com/g/my-group/reports/6?params={"param1":"valeur1","param2":"valeur2"}
En combinant cela avec le paramètre run mentionné ci-dessus, vous pouvez partager un rapport avec des paramètres prédéfinis qui s’exécute automatiquement lors du chargement.
Limites des résultats et exportation des requêtes
Avec des requêtes volumineuses, vous remarquerez peut-être qu’il existe une limite au nombre de lignes affichées par l’Explorateur de données. Par défaut, cette limite est fixée à 1000 lignes. Cela vise à empêcher les requêtes excessivement volumineuses de ralentir ou de perturber les performances de votre instance Discourse.
Si vous souhaitez contourner cette limite, vous avez plusieurs options :
- Pagination : Vous pouvez paginer vos résultats. Au lieu de tenter de retourner tous les résultats d’un coup, vous pouvez écrire votre requête pour retourner une plage spécifique de résultats. Vous pouvez ensuite ajuster cette plage pour visualiser différentes sections de vos données. Cela n’augmentera pas la limite, mais vous permettra de visualiser toutes vos données par sections.
- Augmenter la limite : Si vous avez accès au serveur Discourse et que vous êtes à l’aise pour modifier les paramètres de Discourse, vous pouvez augmenter la limite. Cependant, cela doit être fait avec prudence. Augmenter la limite peut charger excessivement votre serveur si vous ne faites pas attention, surtout si plusieurs utilisateurs exécutent des requêtes volumineuses simultanément.
- Télécharger les résultats : Vous avez également la possibilité de télécharger les résultats de la requête au lieu de les visualiser directement dans Discourse en cliquant sur le bouton
JSONouCSVaprès avoir exécuté la requête. Les données téléchargées d’une requête au format JSON ou CSV auront une limite de résultats beaucoup plus élevée de 10 000 lignes. À des fins programmatiques, privilégiez le format JSON, ou si vous souhaitez travailler sur les données dans une application tableur, le format CSV pourrait être plus pratique.
Il est généralement préférable d’essayer d’écrire des requêtes plus efficaces ou de filtrer vos données afin de ne récupérer que ce dont vous avez besoin, plutôt que de tenter de contourner la limite.
Vous pouvez également exporter la requête SQL elle-même au format .JSON en cliquant sur le bouton Exporter. Les requêtes exportées de cette manière peuvent ensuite être importées dans d’autres sites Discourse ou utilisées avec des applications tierces.
Plan de requête
La case à cocher « Inclure le plan de requête » peut être utilisée pour mieux comprendre et optimiser vos requêtes SQL.
Lorsque vous cochez cette case et exécutez une requête, Discourse affiche la séquence d’opérations utilisées pour accéder aux données dans la base de données Discourse. Cela peut inclure des opérations telles que des scans, des jointures, des tris et d’autres actions de base de données. En examinant le plan de requête, vous pouvez voir exactement comment la base de données exécute votre requête.
La série de tutoriels sur l’Explorateur de données
Nous avons également une série dédiée de sql-tutorial sur l’Explorateur de données ! Si vous souhaitez en savoir plus sur l’écriture de requêtes SQL dans Discourse, nous vous recommandons vivement de parcourir les sujets de cette série :









