Bienvenue, Visiteur ! S'enregistrer Accueil Club911.Net Recherche Liste des membres Calendrier Aide

Aller à :


Poster une réponse 
erreurs connection base de données => changement de serveur
Auteur Message
difparis Hors ligne
Posteur Confirmé
**


Messages : 26 176
Inscription : Jun 2008
Lieu : ici et là
Humeur : work in progress
Message : #101
Envoyé le 23-09-2010 à 20:43
 

Citation :Message original : whinpo
Citation :Message original : difparis
C'est la m... ce soir!
Je peux vous étudier une archi High Availability avec un uptime de 99.999% garanti sur contrat Wink


Mais ce ne sera pas le coût de 2 sata en R1 Bigsmile Bigsmile Bigsmile

si il suffisait de mettre du matos pour avoir de la disponibilité, ça se saurait...
faut avant tout des hommes Wink
Mais qui te parle de matos!
Je te parle de solution avec un SGBD multi-instances réparti sur plusieurs noeuds...mais t'as raison il faut des experts Wink
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
Mascotte Hors ligne
Posteur Confirmé
**


Messages : 6 038
Inscription : Jun 2010
Message : #102
Envoyé le 23-09-2010 à 20:48
 

whinpo, au vue de la requête ça ne m'étonnes pas du tout que ça rame, c'est super violent comme requête ShockedShockedShocked

Grosso modo, sélectionner l'ensemble des posts dans tous les sous-forums non "protégés" (administratif, club, hors-sujets), pour _seulement ensuite_ les trier par date et ne garder que les 15 premiers, ça ne doit pas l'aider, que fid et le timestamp de post soit indexés ou non.

Une autre solution possible serait peut-être de sous-requêter ta table (une première pour récupérer les X threads dernièrement updatée, puis filtrage sur les forums id), qu'en penses-tu?
Je pensais à un truc du genre (à la syntaxe près, ou l'optim sur le filtrage des N premiers)

Code :
SELECT tid, subject, icon FROM
(select tid, subject, icon from forum911net_threads ORDER BY lastpost DESC LIMIT 0, 50)
WHERE fid <> 71 AND fid <> 53 AND (fid < 110 OR fid > 128) AND fid <> 132 AND fid <> 136 AND fid IN(1,2,3,4,5,6,7,8,12,11,13,51,18,16,33,23,24,25,26,27,28,29,30,31,32,35,38,41,6​3,42,40,49,45,44,46,47,48,50,58,66,69,74,88,133,141,139,142) ORDER BY lastpost DESC LIMIT 0, 15;

Autre question/voie à tester serait les champs fid: le "IN" et les autres tests semblent redondants à première lecture. Est-ce une optimisation? L'index ne va pas pouvoir fonctionner "à plein", si?

[Édite le 23-9-2010 par Mascotte]
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
steph42360 Hors ligne
Posteur Confirmé
**


Messages : 18 929
Inscription : Nov 2006
Message : #103
Envoyé le 23-09-2010 à 20:51
 

Citation :Message original : Mascotte
whinpo, au vue de la requête ça ne m'étonnes pas du tout que ça rame, c'est super violent comme requête ShockedShockedShocked

Grosso modo, sélectionner l'ensemble des posts dans tous les sous-forums non "protégés" (administratif, club, hors-sujets), pour _seulement ensuite_ les trier par date et ne garder que les 15 premiers, ça ne doit pas l'aider, que fid et le timestamp de post soit indexés ou non.

Une autre solution possible serait peut-être de sous-requêter ta table (une première pour récupérer les X threads dernièrement updatée, puis filtrage sur les forums id), qu'en penses-tu?
Je pensais à un truc du genre (à la syntaxe près, ou l'optim sur le filtrage des N premiers)

Code :
SELECT tid, subject, icon FROM
(select tid, subject, icon from forum911net_threads ORDER BY lastpost DESC LIMIT 0, 50)
WHERE fid <> 71 AND fid <> 53 AND (fid < 110 OR fid > 128) AND fid <> 132 AND fid <> 136 AND fid IN(1,2,3,4,5,6,7,8,12,11,13,51,18,16,33,23,24,25,26,27,28,29,30,31,32,35,38,41,6​3,42,40,49,45,44,46,47,48,50,58,66,69,74,88,133,141,139,142) ORDER BY lastpost DESC LIMIT 0, 15;

ptain j'étais en train d'écrire la même chose CoolBigsmileBigsmile
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
chris-91 Hors ligne
Posteur Confirmé
**


Messages : 16 104
Inscription : Apr 2006
Message : #104
Envoyé le 23-09-2010 à 20:57
 

les citations fonctionnent pas bien ?
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
Mascotte Hors ligne
Posteur Confirmé
**


Messages : 6 038
Inscription : Jun 2010
Message : #105
Envoyé le 23-09-2010 à 21:20
 

Citation :Message original : steph42360

ptain j'étais en train d'écrire la même chose CoolBigsmileBigsmile
Thumbup

Citation :Message original : difparis
Mais qui te parle de matos!
Je te parle de solution avec un SGBD multi-instances réparti sur plusieurs noeuds...mais t'as raison il faut des experts Wink

Plusieurs instances "slaves" pour la lecture, une master pour l'écriture et zou! TongueTongue Ca marche bien pour facebook, alors... Bigsmile



Private joke: et puis la marge est meilleure sur le soft, faut pas parler matos BigsmileBigsmileBigsmile

[Édite le 23-9-2010 par Mascotte]

[Édite le 23-9-2010 par Mascotte]
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
tinga Hors ligne
Posteur Confirmé
**


Messages : 7 188
Inscription : Feb 2007
Message : #106
Envoyé le 23-09-2010 à 21:25
 

Citation :Message original : difparis
Je te parle de solution avec un SGBD multi-instances réparti sur plusieurs noeuds..

il s'agit peut etre effectivement d'une piste mais tout dépend alors de ne pas trop avoir de noeuds à gerer
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
LOOI911 Hors ligne
Posteur Confirmé
**


Messages : 25 789
Inscription : Jan 2010
Lieu : 28 - Chartres
Message : #107
Envoyé le 23-09-2010 à 21:27
 

Citation :Message original : Julien
Peut être qu'avec un intérieur vidé et un arceau dans le serveur, ça permettrai d'alléger la base de donnée et de renforcer le serveur ExclamationQuestion Cool


J'aime beaucoup ! Bigsmile

Pattes de support rabaissées à filetage réglable, ventilo inox avec filtre sport et optimisation RSO pour compléter ta config Wink
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
difparis Hors ligne
Posteur Confirmé
**


Messages : 26 176
Inscription : Jun 2008
Lieu : ici et là
Humeur : work in progress
Message : #108
Envoyé le 23-09-2010 à 21:31
 

Citation :Message original : tinga
Citation :Message original : difparis
Je te parle de solution avec un SGBD multi-instances réparti sur plusieurs noeuds..

il s'agit peut etre effectivement d'une piste mais tout dépend alors de ne pas trop avoir de noeuds à gerer
Un juste équilibre entre scale up et scale out Wink

[Édite le 23-9-2010 par difparis]
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
excelsior Hors ligne
Posteur Confirmé
**


Messages : 1 759
Inscription : Mar 2009
Message : #109
Envoyé le 23-09-2010 à 21:33
 

Citation :Message original : steph42360
Citation :Message original : Mascotte
whinpo, au vue de la requête ça ne m'étonnes pas du tout que ça rame, c'est super violent comme requête ShockedShockedShocked

Grosso modo, sélectionner l'ensemble des posts dans tous les sous-forums non "protégés" (administratif, club, hors-sujets), pour _seulement ensuite_ les trier par date et ne garder que les 15 premiers, ça ne doit pas l'aider, que fid et le timestamp de post soit indexés ou non.

Une autre solution possible serait peut-être de sous-requêter ta table (une première pour récupérer les X threads dernièrement updatée, puis filtrage sur les forums id), qu'en penses-tu?
Je pensais à un truc du genre (à la syntaxe près, ou l'optim sur le filtrage des N premiers)

Code :
SELECT tid, subject, icon FROM
(select tid, subject, icon from forum911net_threads ORDER BY lastpost DESC LIMIT 0, 50)
WHERE fid <> 71 AND fid <> 53 AND (fid < 110 OR fid > 128) AND fid <> 132 AND fid <> 136 AND fid IN(1,2,3,4,5,6,7,8,12,11,13,51,18,16,33,23,24,25,26,27,28,29,30,31,32,35,38,41,6​3,42,40,49,45,44,46,47,48,50,58,66,69,74,88,133,141,139,142) ORDER BY lastpost DESC LIMIT 0, 15;

ptain j'étais en train d'écrire la même chose CoolBigsmileBigsmile

BigsmileBigsmile
j'en étais qu'au SELECT moi....
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
gentleman69 Hors ligne
Posteur Confirmé
**


Messages : 18 716
Inscription : Aug 2005
Lieu : LYON
Message : #110
Envoyé le 23-09-2010 à 21:33
 

Si en virant des posts ta requête marche mieux c'est que tu fais des accès en lecture complète "table scans" sans accès par des index.

Une raison possible est un problème de type de données. Par exemple un char au lieu d'un number.
Quand tu fais char > 3 par exemple, il t'applique une fonction de conversion en number sur le char et du coup il te flingue l'usage de ton index...

L'autre raison ce sont des tables statistiques pas à jour. Je ne connais pas mySQL mais Oracle donc je ne peux pas t'aider sur ce coup là...
Trouver tous les messages de cet utilisateur Citer ce message dans une réponse
Poster une réponse 


Aller à :

Ce site n'est pas un site officiel du groupe Porsche, site/forum personnel à but non lucratif / Association Loi 1901, copyright Club911.net 2024
Tous les noms et marques de produits ou autres marques cités dans ce site sont déposés par leurs propriétaires respectifs.
Porsche®, 911®, 964®, 993®, 996®, 997®, 991®, 356®, 718®, 992®, Boxster®, Carrera®, Cayman®, Cayenne®, Targa®, Tiptronic®, Tequipment®, Panamera®, Macan®, Taycan® sont des marques déposées de : Dr.Ing.h.c.F.Porsche AG.

Moteur MyBB 1.6.11, © 2002-2024 MyBB Group. Theme created by Justin S. Adaptation for Club911.Net by Indienestmonnom & whinpo. Hébergement et maintenance par LOKRIS.