Variable Table ou Table Temporaire. que préconiser ?
6 réponses
Extra
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu
et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une
table temporaire et est ce qu'il existe une limitation(mémoire je suppose
que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une
une faible quantité d'enregistrement ou mes connaissance sql serveur sont à
mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce
sujet.
J'aimerais avoir votre avis sur ce sujet.
merci pour vos réponses.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sylvain Lafontaine
Les tables temporaires sont d'authentiques tables SQL stockées dans la base tempdb; il est donc évident que pour de petites tables, genre 2 ou 3 enregistrements, les variables de type Table sont beaucoup moins dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de millions d'enregistrements et plus, il est probable que l'utilisation de tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à même d'évaluer la solution la plus propice.
S. L.
"Extra" wrote in message news:
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une table temporaire et est ce qu'il existe une limitation(mémoire je suppose que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une une faible quantité d'enregistrement ou mes connaissance sql serveur sont à mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce sujet.
J'aimerais avoir votre avis sur ce sujet. merci pour vos réponses.
Les tables temporaires sont d'authentiques tables SQL stockées dans la base
tempdb; il est donc évident que pour de petites tables, genre 2 ou 3
enregistrements, les variables de type Table sont beaucoup moins
dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de
millions d'enregistrements et plus, il est probable que l'utilisation de
tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à
même d'évaluer la solution la plus propice.
S. L.
"Extra" <Extra@discussions.microsoft.com> wrote in message
news:6A1E149A-6B89-4BEC-B01C-A1D6B24B8950@microsoft.com...
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu
et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une
table temporaire et est ce qu'il existe une limitation(mémoire je suppose
que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une
une faible quantité d'enregistrement ou mes connaissance sql serveur sont
à
mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à
ce
sujet.
J'aimerais avoir votre avis sur ce sujet.
merci pour vos réponses.
Les tables temporaires sont d'authentiques tables SQL stockées dans la base tempdb; il est donc évident que pour de petites tables, genre 2 ou 3 enregistrements, les variables de type Table sont beaucoup moins dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de millions d'enregistrements et plus, il est probable que l'utilisation de tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à même d'évaluer la solution la plus propice.
S. L.
"Extra" wrote in message news:
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une table temporaire et est ce qu'il existe une limitation(mémoire je suppose que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une une faible quantité d'enregistrement ou mes connaissance sql serveur sont à mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce sujet.
J'aimerais avoir votre avis sur ce sujet. merci pour vos réponses.
Extra
la réponse me rassure sur mes préconisations et suis tout a fait d'accord. Je pensais pouvoir utiliser une variable table a concurrence maxi de 50 à 100 enregistrements (en tenant compte de la structure de la table).
merci pour la réponse.
"Sylvain Lafontaine" a écrit :
Les tables temporaires sont d'authentiques tables SQL stockées dans la base tempdb; il est donc évident que pour de petites tables, genre 2 ou 3 enregistrements, les variables de type Table sont beaucoup moins dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de millions d'enregistrements et plus, il est probable que l'utilisation de tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à même d'évaluer la solution la plus propice.
S. L.
"Extra" wrote in message news: > Bonjour à tous, > > une petite question, concernant l'utilisation d'une variable table en lieu > et place d'une table temporaire. > > Est ce que la variable table est bien moins couteuse en ressource qu'une > table temporaire et est ce qu'il existe une limitation(mémoire je suppose > que oui). > > Est ce que je suis dans le vrai en préconisant une variable table pour une > une faible quantité d'enregistrement ou mes connaissance sql serveur sont > à > mettre à jour au plus vite ? > > J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à > ce > sujet. > > J'aimerais avoir votre avis sur ce sujet. > merci pour vos réponses. > >
la réponse me rassure sur mes préconisations et suis tout a fait d'accord.
Je pensais pouvoir utiliser une variable table a concurrence maxi de 50 à
100 enregistrements (en tenant compte de la structure de la table).
merci pour la réponse.
"Sylvain Lafontaine" a écrit :
Les tables temporaires sont d'authentiques tables SQL stockées dans la base
tempdb; il est donc évident que pour de petites tables, genre 2 ou 3
enregistrements, les variables de type Table sont beaucoup moins
dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de
millions d'enregistrements et plus, il est probable que l'utilisation de
tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à
même d'évaluer la solution la plus propice.
S. L.
"Extra" <Extra@discussions.microsoft.com> wrote in message
news:6A1E149A-6B89-4BEC-B01C-A1D6B24B8950@microsoft.com...
> Bonjour à tous,
>
> une petite question, concernant l'utilisation d'une variable table en lieu
> et place d'une table temporaire.
>
> Est ce que la variable table est bien moins couteuse en ressource qu'une
> table temporaire et est ce qu'il existe une limitation(mémoire je suppose
> que oui).
>
> Est ce que je suis dans le vrai en préconisant une variable table pour une
> une faible quantité d'enregistrement ou mes connaissance sql serveur sont
> à
> mettre à jour au plus vite ?
>
> J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à
> ce
> sujet.
>
> J'aimerais avoir votre avis sur ce sujet.
> merci pour vos réponses.
>
>
la réponse me rassure sur mes préconisations et suis tout a fait d'accord. Je pensais pouvoir utiliser une variable table a concurrence maxi de 50 à 100 enregistrements (en tenant compte de la structure de la table).
merci pour la réponse.
"Sylvain Lafontaine" a écrit :
Les tables temporaires sont d'authentiques tables SQL stockées dans la base tempdb; il est donc évident que pour de petites tables, genre 2 ou 3 enregistrements, les variables de type Table sont beaucoup moins dispendieuses en ressources; sinon MS ne les aurait pas créées.
Cependant, si vos résultats intermédiaires couvrent des centaines de millions d'enregistrements et plus, il est probable que l'utilisation de tables temporaires soit mieux.
Pour les nombres intermédiaires d'enregistrements, j'imagine que vous êtes à même d'évaluer la solution la plus propice.
S. L.
"Extra" wrote in message news: > Bonjour à tous, > > une petite question, concernant l'utilisation d'une variable table en lieu > et place d'une table temporaire. > > Est ce que la variable table est bien moins couteuse en ressource qu'une > table temporaire et est ce qu'il existe une limitation(mémoire je suppose > que oui). > > Est ce que je suis dans le vrai en préconisant une variable table pour une > une faible quantité d'enregistrement ou mes connaissance sql serveur sont > à > mettre à jour au plus vite ? > > J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à > ce > sujet. > > J'aimerais avoir votre avis sur ce sujet. > merci pour vos réponses. > >
lionelp
Bonjour,
Tout à fait, les cardinalités sur table variable = 1 donc on privilégie leur utilisation à des volumes <0.
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou elles sont créées) sur un disque différent, donc paralléliser facilement les traitements pour de grands volumes.
A +
Extra a écrit:
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une table temporaire et est ce qu'il existe une limitation(mémoire je suppose que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une une faible quantité d'enregistrement ou mes connaissance sql serveur sont à mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce sujet.
J'aimerais avoir votre avis sur ce sujet. merci pour vos réponses.
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou
elles sont créées) sur un disque différent, donc paralléliser facilement les
traitements pour de grands volumes.
A +
Extra a écrit:
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu
et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une
table temporaire et est ce qu'il existe une limitation(mémoire je suppose
que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une
une faible quantité d'enregistrement ou mes connaissance sql serveur sont à
mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce
sujet.
J'aimerais avoir votre avis sur ce sujet.
merci pour vos réponses.
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou elles sont créées) sur un disque différent, donc paralléliser facilement les traitements pour de grands volumes.
A +
Extra a écrit:
Bonjour à tous,
une petite question, concernant l'utilisation d'une variable table en lieu et place d'une table temporaire.
Est ce que la variable table est bien moins couteuse en ressource qu'une table temporaire et est ce qu'il existe une limitation(mémoire je suppose que oui).
Est ce que je suis dans le vrai en préconisant une variable table pour une une faible quantité d'enregistrement ou mes connaissance sql serveur sont à mettre à jour au plus vite ?
J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce sujet.
J'aimerais avoir votre avis sur ce sujet. merci pour vos réponses.
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
Extra
Vos réponses me rassure sur mes préconisations. merci à tous
"Fred BROUARD" a écrit :
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou elles sont créées) sur un disque différent, donc paralléliser facilement les traitements pour de grands volumes.
A +
Extra a écrit: > Bonjour à tous, > > une petite question, concernant l'utilisation d'une variable table en lieu > et place d'une table temporaire. > > Est ce que la variable table est bien moins couteuse en ressource qu'une > table temporaire et est ce qu'il existe une limitation(mémoire je suppose > que oui). > > Est ce que je suis dans le vrai en préconisant une variable table pour une > une faible quantité d'enregistrement ou mes connaissance sql serveur sont à > mettre à jour au plus vite ? > > J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce > sujet. > > J'aimerais avoir votre avis sur ce sujet. > merci pour vos réponses. > >
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
Vos réponses me rassure sur mes préconisations.
merci à tous
"Fred BROUARD" a écrit :
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou
elles sont créées) sur un disque différent, donc paralléliser facilement les
traitements pour de grands volumes.
A +
Extra a écrit:
> Bonjour à tous,
>
> une petite question, concernant l'utilisation d'une variable table en lieu
> et place d'une table temporaire.
>
> Est ce que la variable table est bien moins couteuse en ressource qu'une
> table temporaire et est ce qu'il existe une limitation(mémoire je suppose
> que oui).
>
> Est ce que je suis dans le vrai en préconisant une variable table pour une
> une faible quantité d'enregistrement ou mes connaissance sql serveur sont à
> mettre à jour au plus vite ?
>
> J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce
> sujet.
>
> J'aimerais avoir votre avis sur ce sujet.
> merci pour vos réponses.
>
>
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Vos réponses me rassure sur mes préconisations. merci à tous
"Fred BROUARD" a écrit :
l'avantage des tables temporaires est que l'on peut placer la tempdb (base ou elles sont créées) sur un disque différent, donc paralléliser facilement les traitements pour de grands volumes.
A +
Extra a écrit: > Bonjour à tous, > > une petite question, concernant l'utilisation d'une variable table en lieu > et place d'une table temporaire. > > Est ce que la variable table est bien moins couteuse en ressource qu'une > table temporaire et est ce qu'il existe une limitation(mémoire je suppose > que oui). > > Est ce que je suis dans le vrai en préconisant une variable table pour une > une faible quantité d'enregistrement ou mes connaissance sql serveur sont à > mettre à jour au plus vite ? > > J'ai cherché dans la documentation SQL SERVER mais je n'ai rien trouvé à ce > sujet. > > J'aimerais avoir votre avis sur ce sujet. > merci pour vos réponses. > >
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
Philippe [MS]
Attention, lorsque l'on utilise des variables de type table dans des environnements nécessitant des performances accrues, il est important éventuellement de bien localiser la table TempDB sur un espace disque différent de celui de la base. Il est également important de s'assurer que la taille de la table TempDB soit suffisament grande pour éviter d'avoir un phénomène de tables redimensionnée lors de l'utilisation de cette variable de type table.
Phil.
"lionelp" wrote in message news:176201c4ad4f$9c37a2d0$ Bonjour,
Tout à fait, les cardinalités sur table variable = 1 donc on privilégie leur utilisation à des volumes <0.
Attention, lorsque l'on utilise des variables de type table dans des
environnements nécessitant des performances accrues, il est important
éventuellement de bien localiser la table TempDB sur un espace disque
différent de celui de la base. Il est également important de s'assurer que
la taille de la table TempDB soit suffisament grande pour éviter d'avoir un
phénomène de tables redimensionnée lors de l'utilisation de cette variable
de type table.
Phil.
"lionelp" <lionelp@online.microsoft.com> wrote in message
news:176201c4ad4f$9c37a2d0$a301280a@phx.gbl...
Bonjour,
Tout à fait, les cardinalités sur table variable = 1 donc
on privilégie leur utilisation à des volumes <0.
Attention, lorsque l'on utilise des variables de type table dans des environnements nécessitant des performances accrues, il est important éventuellement de bien localiser la table TempDB sur un espace disque différent de celui de la base. Il est également important de s'assurer que la taille de la table TempDB soit suffisament grande pour éviter d'avoir un phénomène de tables redimensionnée lors de l'utilisation de cette variable de type table.
Phil.
"lionelp" wrote in message news:176201c4ad4f$9c37a2d0$ Bonjour,
Tout à fait, les cardinalités sur table variable = 1 donc on privilégie leur utilisation à des volumes <0.