J'utilise un grand nombre de tables temporaires globales pour générer des rapports énormes par rapport à une base de données Oracle 10g. Chaque rapport se compose de 4 à 5 tables temporaires globales (GTT) par exemple. Mais dans la mesure où je comprends le concept de GTT, les données sont créées à la volée pour chaque session pour différents ensembles de paramètres. Par exemple, dans mon scénario, 20 utilisateurs génèrent le rapport pour, disons le mois dernier, des données sur les ventes et peuvent générer jusqu'à 1000 exécutions au total par jour. Mais si nous supposons que l'utilisateur interroge plus fréquemment les données de ventes les plus récentes, alors comment pouvons-nous utiliser une mémoire cache pour stocker une gamme de données de ventes qui sont interrogées plus fréquemment comme un navigateur Internet? De plus, d'autres suggestions pour affiner les GTT seraient très utiles.Efficacité de performance dans les tables temporaires globales par rapport aux tables normales - oracle 10g
0
A
Répondre
1
Il semble que vous utilisiez trop de GTT. Ils ne sont généralement pas nécessaires très souvent dans les requêtes Oracle - contrairement à SQL Server où (j'ai lu) il est plus commun et approprié d'utiliser des tables temporaires. Sans connaître vos besoins en détail, il est difficile de recommander une approche, mais materialized views est une façon de «mettre en cache» les résultats de la requête une seule fois et de les utiliser plusieurs fois.
Questions connexes
- 1. Oracle tables temporaires globales - nombre maximal d'enregistrements?
- 2. tables temporaires globales dans SQL Server
- 3. ORACLE: pouvons-nous créer des tables temporaires globales ou des tables dans proc stocké?
- 4. Suppression de tables temporaires globales (## tempTable) dans SQL Server
- 5. Tables temporaires locales et globales - Quand utiliser quoi?
- 6. SQL Server/Oracle: tables temporaires privées
- 7. Tables temporaires globales récupérant des données de différentes sessions dans Oracle
- 8. Avec CTE est identique aux tables temporaires?
- 9. Comment faire une requête dans Oracle 10g sur plusieurs tables?
- 10. Tables temporaires persistantes dans SQL?
- 11. Rechercher dans toutes les tables Oracle DB
- 12. Comment utiliser les tables temporaires dans SQL
- 13. Configuration de tables temporaires (tables de mémoire) MySQL optimales?
- 14. PHP, MySQL et les tables temporaires
- 15. Efficacité des boucles écrites manuellement par rapport aux surcharges d'opérateur
- 16. Tables temporaires et réplication SQL Server
- 17. Lesquelles ont de meilleures performances: Tables dérivées ou tables temporaires
- 18. Performances XAConnection dans Oracle (10g)
- 19. Tables et transactions temporaires en SQL 2005
- 20. Tables temporaires dans le serveur sql?
- 21. Performance des colonnes supplémentaires par rapport aux lignes supplémentaires
- 22. Utilisation des tables temporaires dans SSIS
- 23. Comment supprimer les données de toutes mes tables dans ORACLE 10g
- 24. Interrogation d'une vue par rapport aux tables dans le jeu de données SSRS
- 25. Création de tables temporaires perl cgi dbi
- 26. Nombre élevé de tables de disques temporaires MySQL
- 27. Comment créer des tables temporaires uniques dans les procédures MySQL?
- 28. Combien d'extensions temporaires ma session Oracle 10g utilise-t-elle?
- 29. Tables de réglage/analyse Oracle
- 30. Tables temporaires et performances SQL SELECT
+1. Le plus souvent, je trouve qu'un GTT utilisé pour piloter un rapport ne contient que des identifiants (par exemple sélectionnés par l'utilisateur), que le rapport rejoint ensuite dans les tables de données source. –
Ou pour conserver temporairement un ensemble de données coûteux à construire, mais référencé par plusieurs sous-rapports. –