Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3041 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  356  357  358  ..  486  487  488  489  490  491
Auteur Sujet :

les développeurs de forums, les 3/4 des forums sont down /o\

n°1358900
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:28:54  profilanswer
 

Reprise du message précédent :

fabien a écrit :

2 nd up :o
 
joce, si tu veux pas repondre, dis le :o


ca prend des ressources parce que y a enormement de donnee c'est tout :D
et des que tu fais des ET, tu degustes parce que t'es oublie de chopper tous les resultats avant d'appliquer les jointures.
Pour le Key Cache, les blocks sont gardes en memoire en fonction de leur utilisation (que tu peux rafiner avec MySQL >= 4.1).
Ils sont charger au fur et a mesure des besoins, sauf si tu fais explicitement un PRELOAD de l'index auquel cas il est stocke entierement en RAM.
 
 

mood
Publicité
Posté le 03-05-2006 à 17:28:54  profilanswer
 

n°1358901
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:29:58  profilanswer
 

Max Evans a écrit :

Bah il te fait le ORDER BY sur tout le champ indexé quand même :??: Il est obligé de tout parser ... Il va pas s'arrêter au 3/4 de l'index, tout ordonner, puis laisser le 1/4 restant sur carreau, non ordonné :??:


L'index permet justement de lui assurer que l'ORDER BY va etre dans le bon ordre (a condition de faire l'ORDER BY sur le bon index quoi), donc il n'aura justement pas a tout scanner.

n°1358904
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:32:58  profilanswer
 

Max Evans a écrit :

Mah, comment c'est possible :o
 
Si je fais :
SELECT machin FROM matable ORDER BY id DESC
 
J'ai bien entendu un index sur 'id'.
 
Il va pas me parser tout l'index pour m'ordonner mon champ indexé ? :??:


non, la il va faire du file sorting, parce que ca lui prenait bcp trop de temps de prendre tous les ids dans l'ordre via l'index file pour ensuite trouver leur correspondance dans le data file. Dans ce cas c'est bcp plus efficace de faire un full scan du fichier de data (donc acces sequentiel au niveau disque) pour ensuite faire le sorting en memoire, plutot que de faire un 2 seeks disque minimum (1 pour l'index et 1 pour la data correspondante) pour chaque entree dans la table.

n°1358905
Max Evans
Posté le 03-05-2006 à 17:33:00  profilanswer
 

joce a écrit :

L'index permet justement de lui assurer que l'ORDER BY va etre dans le bon ordre (a condition de faire l'ORDER BY sur le bon index quoi), donc il n'aura justement pas a tout scanner.


Je capte pas :o Comment ça l'index lui permet de s'assurer que le ORDER BY sera dans la bon ordre ? Mettons que j'ai pas fait un ALTER TABLE en ordonnant en ma table ...
 
Si j'ai des enregistrements déclassé, comment ça se passe ? :??:
 
J'ai trouve ça sinon :
 

Citation :

Dans les cas où MySQL doit trier les résultats, il utilisera l'algorithme suivant :  
 
Lit toutes les lignes en fonction d'un index ou par scan de la table. Les lignes qui ne vérifient pas la condition WHERE sont ignorées.  
 
Stocke les valeurs des clés de tri dans un buffer. La taille du buffer est la valeur de la variable système sort_buffer_size.  
 
Lorsque le buffer se remplit, fait un tri rapide et stocke le résultat dans une fichier temporaire. Sauve le pointeur dans un bloc trié. Si toutes les lignes tiennent dans le buffer de tri, aucun fichier temporaire n'est créé.  
 
Répète les étapes précédentes jusqu'à ce que toutes les lignes aient été lues.  
 
Fait une combinaison multiple jusqu'à MERGEBUFF (7) régions en un bloc, dans un autre fichier temporaire. Répête l'opération jusqu'à ce que le premier fichier soit dans le second.  
 
Répête la suite jusqu'à ce qu'il y ait moins de MERGEBUFF2 (15) bloc libres.  
 
Dans la dernière combinaison multiple, seul le pointeur de ligne (la dernière partie de la clé de tri), est écrite dans le fichier de résultat.  
 
Lit les lignes triées en utilisant les pointeurs de lignes du fichier de résultat. Pour optimiser cela, on lit un gros bloc de pointeur, on les trie, et on les utilise pour lire les lignes en ordre dans un buffer. La taille du buffer est la valeur de la variable système read_rnd_buffer_size. Le code de cette étape est dans le fichier source sql/records.cc.  
 

n°1358906
nraynaud
lol
Posté le 03-05-2006 à 17:33:57  profilanswer
 

Max Evans a écrit :

Mah, comment c'est possible :o
 
Si je fais :
SELECT machin FROM matable ORDER BY id DESC
 
J'ai bien entendu un index sur 'id'.
 
Il va pas me parser tout l'index pour m'ordonner mon champ indexé ? :??:


disons que si, il va parser tout l'index parce que tu n'a pas de where, mais les résultats seront directement dans l'ordre grace à l'index.


---------------
trainoo.com, c'est fini
n°1358907
Max Evans
Posté le 03-05-2006 à 17:34:09  profilanswer
 

joce a écrit :

non, la il va faire du file sorting, parce que ca lui prenait bcp trop de temps de prendre tous les ids dans l'ordre via l'index file pour ensuite trouver leur correspondance dans le data file. Dans ce cas c'est bcp plus efficace de faire un full scan du fichier de data (donc acces sequentiel au niveau disque) pour ensuite faire le sorting en memoire, plutot que de faire un 2 seeks disque minimum (1 pour l'index et 1 pour la data correspondante) pour chaque entree dans la table.


Comme dab, je capte rien à ton charabiat :D S'il fait un file sorting, de toutes les manières, il va scanner toute la table ? On en revient au même point nan ? :o

n°1358911
Max Evans
Posté le 03-05-2006 à 17:35:32  profilanswer
 

nraynaud a écrit :

disons que si, il va parser tout l'index parce que tu n'a pas de where, mais les résultats seront directement dans l'ordre grace à l'index.


On est dans l'histoire du bTree là donc ? :??:
 
J'aurai du trouver un autre exemple :o
 
Si je fais un ORDER BY nom_de_famille DESC ? (Sur un champ CHAR ou VARCHAR) :D [:ddr555]

n°1358918
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:38:53  profilanswer
 

Max Evans a écrit :

Je capte pas :o Comment ça l'index lui permet de s'assurer que le ORDER BY sera dans la bon ordre ? Mettons que j'ai pas fait un ALTER TABLE en ordonnant en ma table ...
 
Si j'ai des enregistrements déclassé, comment ça se passe ? :??:
 
J'ai trouve ça sinon :
 

Citation :

Dans les cas où MySQL doit trier les résultats, il utilisera l'algorithme suivant :  
 
Lit toutes les lignes en fonction d'un index ou par scan de la table. Les lignes qui ne vérifient pas la condition WHERE sont ignorées.  
 
Stocke les valeurs des clés de tri dans un buffer. La taille du buffer est la valeur de la variable système sort_buffer_size.  
 
Lorsque le buffer se remplit, fait un tri rapide et stocke le résultat dans une fichier temporaire. Sauve le pointeur dans un bloc trié. Si toutes les lignes tiennent dans le buffer de tri, aucun fichier temporaire n'est créé.  
 
Répète les étapes précédentes jusqu'à ce que toutes les lignes aient été lues.  
 
Fait une combinaison multiple jusqu'à MERGEBUFF (7) régions en un bloc, dans un autre fichier temporaire. Répête l'opération jusqu'à ce que le premier fichier soit dans le second.  
 
Répête la suite jusqu'à ce qu'il y ait moins de MERGEBUFF2 (15) bloc libres.  
 
Dans la dernière combinaison multiple, seul le pointeur de ligne (la dernière partie de la clé de tri), est écrite dans le fichier de résultat.  
 
Lit les lignes triées en utilisant les pointeurs de lignes du fichier de résultat. Pour optimiser cela, on lit un gros bloc de pointeur, on les trie, et on les utilise pour lire les lignes en ordre dans un buffer. La taille du buffer est la valeur de la variable système read_rnd_buffer_size. Le code de cette étape est dans le fichier source sql/records.cc.  
 



 
Le principe d'un index c'est de garantir que les resultats soit classes suivant cet index (dans l'index file hein, pas dans le data file).
Donc si tu ne tappes QUE dans l'index file, tu es sur que ton order by sera ultra rapide et qu'il n'aura pas besoin de faire de file sorting.
Si tu tappes dans le datafile ca sera plus lent a cause des seeks disques supplementaire, mais il ne fera pas non plus de file sorting s'il doit retourner moins de 2/3 (je crois) du total resultat de la db et que tu as un index comme il faut. Et si tu n'as pas d'index adequat, alors il fera du filesorting, et c'est la methode qui est decrite un peu plus haut.

n°1358919
nraynaud
lol
Posté le 03-05-2006 à 17:39:28  profilanswer
 

Max Evans a écrit :

On est dans l'histoire du bTree là donc ? :??:
[:ddr555]


oui, mais ce que dit joce c'est que dans les cas simples, en fait ça sert à rien.


---------------
trainoo.com, c'est fini
n°1358921
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:39:38  profilanswer
 

nraynaud a écrit :

disons que si, il va parser tout l'index parce que tu n'a pas de where, mais les résultats seront directement dans l'ordre grace à l'index.


dans son cas, vu qu'il n'a pas de WHERE, il n'utilisera jamais d'index ;)

mood
Publicité
Posté le 03-05-2006 à 17:39:38  profilanswer
 

n°1358924
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:40:29  profilanswer
 

Max Evans a écrit :

On est dans l'histoire du bTree là donc ? :??:
 
J'aurai du trouver un autre exemple :o
 
Si je fais un ORDER BY nom_de_famille DESC ? (Sur un champ CHAR ou VARCHAR) :D [:ddr555]


a partir du moment ou t'as pas de WHERE il ne touchera jamais a l'index file.

n°1358927
Max Evans
Posté le 03-05-2006 à 17:42:15  profilanswer
 

joce a écrit :

Le principe d'un index c'est de garantir que les resultats soit classes suivant cet index (dans l'index file hein, pas dans le data file).
Donc si tu ne tappes QUE dans l'index file, tu es sur que ton order by sera ultra rapide et qu'il n'aura pas besoin de faire de file sorting.
Si tu tappes dans le datafile ca sera plus lent a cause des seeks disques supplementaire, mais il ne fera pas non plus de file sorting s'il doit retourner moins de 2/3 (je crois) du total resultat de la db et que tu as un index comme il faut. Et si tu n'as pas d'index adequat, alors il fera du filesorting, et c'est la methode qui est decrite un peu plus haut.


 

nraynaud a écrit :

oui, mais ce que dit joce c'est que dans les cas simples, en fait ça sert à rien.


 

joce a écrit :

dans son cas, vu qu'il n'a pas de WHERE, il n'utilisera jamais d'index ;)


 
Hum OK ... Si j'ai un SELECT truc FROM machin WHERE key=3 ORDER BY id DESC. Là, il se passe quoi alors ? Tu places ton index (groupé) ou tes index sur quel(s) champs ?

n°1358931
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:43:39  profilanswer
 

Max Evans a écrit :

Comme dab, je capte rien à ton charabiat :D S'il fait un file sorting, de toutes les manières, il va scanner toute la table ? On en revient au même point nan ? :o


Y a une tres legere difference entre faire un scan du fichier d'index et faire un scan du fichier de donnee (le deuxieme etant generalement bcp plus gros).
Le file sorting ca veut dire qu'il doit creer une table temporaire pour stocker les resultats avant de les retourner.
Dans ton cas comme il a besoin du datafile et de l'indexfile, et que tu lui demandes tous les resultats, il n'utilisera jamais ton index, et donc utilisera du filesorting.

n°1358936
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:44:41  profilanswer
 

joce a écrit :

dans son cas, vu qu'il n'a pas de WHERE, il n'utilisera jamais d'index ;)


Petit nuance : enfin sauf si toutes les donnees demandees sont disponibles dans le fichier d'index directement, et la ca devient tres interessant.

n°1358945
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:48:50  profilanswer
 

Max Evans a écrit :

Hum OK ... Si j'ai un SELECT truc FROM machin WHERE key=3 ORDER BY id DESC. Là, il se passe quoi alors ? Tu places ton index (groupé) ou tes index sur quel(s) champs ?


si tu mets pas d'index :  
 
FULL SCAN du datafile
 
si tu mets un index sur (key)
 
utilisation de l'index pour recup les resultats dans le datafile, et file sorting (donc creation d'une temporaire) pour ordonner le tout
 
si tu mets un index sur (key, id)
 
utilisation de l'index pour recup les resultats dans le bon ordre dans le datafile, donc pas de file sorting pour ordonner le tout
 
si tu mets un index sur (key, id, truc)
 
utilisation de l'index pour recup tous les resultats dans le bon ordre. Pas besoin de passer par le datafile.
 

n°1358948
Max Evans
Posté le 03-05-2006 à 17:50:22  profilanswer
 

:jap:

n°1358954
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 17:53:13  profilanswer
 

et si tu fais un EXPLAIN tu verras respectivement (de memoire, ca doit ressembler a ca) :
 
ALL
-
 
Ref
Using Where; File sorting
 
Ref
Using Where;
 
Ref
Using Where; Using index


Message édité par joce le 03-05-2006 à 17:53:46
n°1358970
The-Shadow
Développeur
T'as été voir dans ton profil?
Posté le 03-05-2006 à 18:04:32  profilanswer
 

Vous vous prenez la tête pour pas grand chose. :o
 
Bon Joce, file nous la structure de ta table, les sources en PHP et on pourra voir de quoi tu parles, ça ira plus vite. :o
 

n°1358976
joce
Architecte / Développeur principal
"BugHunter"
Posté le 03-05-2006 à 18:07:11  profilanswer
 

The-Shadow a écrit :

Vous vous prenez la tête pour pas grand chose. :o
 
Bon Joce, file nous la structure de ta table, les sources en PHP et on pourra voir de quoi tu parles, ça ira plus vite. :o


mince alors je les ai perdu :o

n°1358989
The-Shadow
Développeur
T'as été voir dans ton profil?
Posté le 03-05-2006 à 18:19:32  profilanswer
 

Spa grave, j'vais aller faire un chèque à Caradisiac pour qu'ils me laissent regarder leur bdd, j'aurais au moins la structure de la table. :o
 
 [:amandine75011]

n°1358991
omega2
Posté le 03-05-2006 à 18:22:33  profilanswer
 

Les explications de Joce sont tentante, mais attention à ne pas abuser des index multicolones : ca serait bête d'avoir un fichier d'index 10 fois plus gros que la table correspondante rien que pour avoir dans l'index toutes les colones d'une requette exécuté une fois par mois.
 
PS : J'ai appris des trucs aujourd'hui. :)

n°1358996
Multinickn​ame
Ah bon...
Posté le 03-05-2006 à 18:37:10  profilanswer
 

omega2 a écrit :

Les explications de Joce sont tentante, mais attention à ne pas abuser des index multicolones : ca serait bête d'avoir un fichier d'index 10 fois plus gros que la table correspondante rien que pour avoir dans l'index toutes les colones d'une requette exécuté une fois par mois.

 

PS : J'ai appris des trucs aujourd'hui.  :)

 

En résumé, les index multicolonnes sont utiles sur des requetes éxecutées fréquemment?

 

Et dans les trois cas qu'a donné Joce, quel est le cas le plus avantageux sur une requete executée fréquemment?

 

n°1359000
omega2
Posté le 03-05-2006 à 18:46:50  profilanswer
 

Sur une requette exécuté fréquemment (par exemple liste des discutions d'un forum classé par date de derniére réponse), c'est le troisiéme cas (tout avoir dans l'index) qui est le plus intéressant car plus rapide que les autres.

n°1359010
Multinickn​ame
Ah bon...
Posté le 03-05-2006 à 19:11:46  profilanswer
 

omega2 a écrit :

Sur une requette exécuté fréquemment (par exemple liste des discutions d'un forum classé par date de derniére réponse), c'est le troisiéme cas (tout avoir dans l'index) qui est le plus intéressant car plus rapide que les autres.

 


Ok :jap:

 

Et pour une requete peu sollicitée, un index sur le champ indiqué dans la clause WHERE ou dans la jointure, et voila. C'est ça?

n°1359048
skylight
Made in France.
Posté le 03-05-2006 à 21:52:51  profilanswer
 

Tain, je suis à la ramasse, niveau code :D

n°1359090
Profil sup​primé
Posté le 03-05-2006 à 22:51:31  answer
 

Bonsoir,  
 
A vous les pros des SGBD, helas Mysqlla plupart, mais bon je tente quand même
 
Qqu a une idée pour appeler une procédure stockée sous SQL Serveur depuis PHP.
http://forum.hardware.fr/forum2.ph [...] w=0&nojs=0
 
MERCI a vous
 

n°1359231
THE REAL S​MILEY
The Real Résistance!
Posté le 04-05-2006 à 09:39:57  profilanswer
 


Ah oui, mais nan, c'est pas blabla ici, on parle développement de forums uniquement ici :whistle:


---------------
༼ つ ◕_◕ ༽つ
n°1359262
e-deby
Posté le 04-05-2006 à 10:02:21  profilanswer
 

The-Shadow a écrit :

Vous vous prenez la tête pour pas grand chose. :o
 
Bon Joce, file nous la structure de ta table, les sources en PHP et on pourra voir de quoi tu parles, ça ira plus vite. :o


 
attends qu'il ressorte son super éditeur de texte  :whistle:


Message édité par e-deby le 04-05-2006 à 10:02:41
n°1359343
Cyrius-c
Posté le 04-05-2006 à 11:15:46  profilanswer
 

Bonjour,
 
VOus gérez comment la selection des topics avec drapeaux et sans?(afficher tous les posts, avec sois une icone lu, sois rien avec non lu)
 
Je ne demande pas comment on fait, (j'ai une table sujet, une autre drapeaux avec auteur, topic, date..). ce qui me pose probleme cest la requete sql et l'affichage.  
 
Si je fais une jointure, je nai que les drapeaux. Comment afficher tous les posts?
 
Merci bien :jap:

n°1359353
chaced
Posté le 04-05-2006 à 11:20:32  profilanswer
 


 
CP1250 ? :D


---------------
CPU-Z | Timespy | Mes bd | Mon blog
n°1359370
FlorentP
Posté le 04-05-2006 à 11:28:46  profilanswer
 

Cyrius-c a écrit :

Bonjour,

 

VOus gérez comment la selection des topics avec drapeaux et sans?(afficher tous les posts, avec sois une icone lu, sois rien avec non lu)

 

Je ne demande pas comment on fait, (j'ai une table sujet, une autre drapeaux avec auteur, topic, date..). ce qui me pose probleme cest la requete sql et l'affichage.

 

Si je fais une jointure, je nai que les drapeaux. Comment afficher tous les posts?

 

Merci bien   :jap:  

 


 

LEFT JOIN au lieu d'une jointure de base ?

Message cité 1 fois
Message édité par FlorentP le 04-05-2006 à 11:29:00
n°1359486
ftb
Vieux sage
Posté le 04-05-2006 à 13:20:04  profilanswer
 

skylight a écrit :

Tain, je suis à la ramasse, niveau code :D


ouai ainsi que le developpement du forum v5  :whistle:


---------------
Functional Troubleshooting Bizzard
n°1359493
chaced
Posté le 04-05-2006 à 13:22:53  profilanswer
 

ftb a écrit :

ouai ainsi que le developpement du forum v5  :whistle:


 
 :cry:


---------------
CPU-Z | Timespy | Mes bd | Mon blog
n°1359764
scull
MySCULL cay bon mangez en!
Posté le 04-05-2006 à 16:13:25  profilanswer
 

héhé parlons SQL ^^
 
Je viens de faire quelques tests pour l'affichage des topics. Ma requete sans utilisation de limit ou de champs difficile à mettre à jour fonctionne nikel ^^
 
Sur un topic de 80 000 rep, en dernière page là ou il faudrais 0,9sec avec un limit, il me faut 0,03 sec (constant sur toutes les pages)^^.
 
Bon il faut savoir que je commence tout juste et que il doit y avoir moyen de largement améliorer cette requète.
 
Wait and see ^^

n°1359765
joce
Architecte / Développeur principal
"BugHunter"
Posté le 04-05-2006 à 16:15:10  profilanswer
 

scull a écrit :

héhé parlons SQL ^^

ba elle est ou la requete :??:

n°1359767
scull
MySCULL cay bon mangez en!
Posté le 04-05-2006 à 16:18:51  profilanswer
 

:lol: et c'est toi qui demande en plus lol
 
Envoie d'abord les sources de MD  :na:

Message cité 1 fois
Message édité par scull le 04-05-2006 à 16:41:41
n°1359796
antp
Super Administrateur
Champion des excuses bidons
Posté le 04-05-2006 à 16:41:12  profilanswer
 

Bah tu dis "parlons SQL" et il y a pas de SQL dans ton message :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°1359808
scull
MySCULL cay bon mangez en!
Posté le 04-05-2006 à 16:49:41  profilanswer
 

Citation :

Ce topic sert à partager meme si joce ne va te donner le code source de son forum c'est pas pour autant qu'il ne donne pas des infos, des astuces.
 
Venir ici et dire "yep j'ai trouvé une méthode qui est bien mais je viens juste ici pour vous narguer (?) vu que certains galèrent depuis plusieurs pages à trouver une méthode intéressante"
 
Que tu ne veules pas donner d'infos ok mais ne vient pas le dire dans ce topic. :??:


 
Ben là actuellement je peu rien vous montrer je ne suis pas depuis MON pc. Je peu simplement vous dire que j'utilise pas de limit ni de between. Et j'utilise du texte pour faire passer mes variables, enfin c'est surement abstrait, mais je vous fais une démo ce weekend promis, dés que je récupère le net sur mon pc :p
 
Edit: je t'ai lu limit

Message cité 1 fois
Message édité par scull le 04-05-2006 à 16:50:51

---------------
Créer son forum gratuit |  Mon beau blog phpBB caÿ le mal :o
n°1359814
Limit
Posté le 04-05-2006 à 16:53:46  profilanswer
 

ok j'avais supprimé parce que c'était none of my business mais content de voir ta réponse:)

n°1359836
joce
Architecte / Développeur principal
"BugHunter"
Posté le 04-05-2006 à 17:06:49  profilanswer
 

scull a écrit :

:lol: et c'est toi qui demande en plus lol
 
Envoie d'abord les sources de MD  :na:


C'est de la curiosite, j'ai pas besoin de tes optimisations pour mon forum :p

n°1359849
Profil sup​primé
Posté le 04-05-2006 à 17:16:19  answer
 

J'ai une petite question.
 
Les procedure stockées sont utiles dans quelles cas ? Des qu'il y a des calcul sur les resultats (SUM,MIN ... ) ?  
Dans les requetes imbriqués aussi non ?
 
Mais pour de simples select * from ma_table, ca sert pas a grand chose ? C'est bien ca ?

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  356  357  358  ..  486  487  488  489  490  491

Aller à :
Ajouter une réponse
 

Sujets relatifs
question avec les forums phpbb2[php] trouver la premier place ou inserer un enregistrement (résolu)
Forums phpBBQui connait l'algo du Passticket et sa mise en place en VB ?
[Merise] Mise en place d'un MCDFocus mal placé....
[Blabla/Prog] Les développeurs foromeurs sont-ils des feignasses?Mise en place d'un formulaire CGI
forums création de site internetJava - Mise en place d'une api (Servlet)
Plus de sujets relatifs à : les développeurs de forums, les 3/4 des forums sont down /o\


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)