Skip to main content

À propos des quotas et de la complexité des requêtes

Les quotas et la complexité des requêtes sont des moyens efficaces de limiter et d’encadrer ce que les utilisateurs peuvent faire dans ClickHouse. Les quotas imposent des restrictions dans le cadre d’un intervalle de temps, tandis que la complexité des requêtes s’applique indépendamment de tout intervalle de temps. Cet article de la base de connaissances présente des exemples montrant comment mettre en œuvre ces deux approches.

Les données d’exemple

Nous utiliserons cette simple table d’exemple pour les exemples suivants :

Utilisation des quotas

Dans cet exemple, nous créons un rôle auquel nous appliquerons un quota permettant de récupérer au plus 10 lignes de résultat par intervalle de 10 secondes :
Connectez-vous maintenant avec l’utilisateur user_with_quota
Notez que l’utilisateur devra attendre encore 5 secondes avant de pouvoir obtenir une nouvelle « allowance » de jeu de résultats de 10 lignes.

Utilisation de la complexité des requêtes

Dans cet exemple, nous créons un rôle auquel nous appliquerons un SETTING de complexité des requêtes qui n’autorise le renvoi que d’une seule ligne par requête.
Connectez-vous maintenant en tant qu’utilisateur user_with_query_complexity :
Dès que vous essayez d’obtenir plus d’une ligne dans le jeu de résultats, la contrainte de complexité des requêtes entre en jeu.
Dernière modification le 3 juillet 2026