
PostgreSQL sans aucun problème
Description
Introduction au livre
Il aborde les sujets fondamentaux que les lecteurs débutants et intermédiaires de PostgreSQL doivent connaître pour la gestion des performances.
Nous abordons en détail les fonctionnalités essentielles de PostgreSQL, notamment son architecture, les transactions, MVCC, le vacuum, les verrous et les plans d'exécution SQL.
Au-delà de la simple description de la théorie, il a été rédigé pour permettre une compréhension claire des principes de fonctionnement internes grâce à divers tests et vérifications.
J’espère que cette structure vous permettra d’aborder PostgreSQL sans aucun obstacle, et c’est pourquoi j’ai intitulé le livre « PostgreSQL sans obstacles ».
En particulier, diverses images et aides visuelles ont été utilisées pour aider les lecteurs à comprendre facilement un contenu considéré comme techniquement difficile, et des exemples pratiques et des scénarios ont également été fournis afin que les lecteurs puissent expérimenter les principes de première main.
Notez que tous les tests sont configurés pour s'exécuter sur PostgreSQL version 14 ou ultérieure.
Nous abordons en détail les fonctionnalités essentielles de PostgreSQL, notamment son architecture, les transactions, MVCC, le vacuum, les verrous et les plans d'exécution SQL.
Au-delà de la simple description de la théorie, il a été rédigé pour permettre une compréhension claire des principes de fonctionnement internes grâce à divers tests et vérifications.
J’espère que cette structure vous permettra d’aborder PostgreSQL sans aucun obstacle, et c’est pourquoi j’ai intitulé le livre « PostgreSQL sans obstacles ».
En particulier, diverses images et aides visuelles ont été utilisées pour aider les lecteurs à comprendre facilement un contenu considéré comme techniquement difficile, et des exemples pratiques et des scénarios ont également été fournis afin que les lecteurs puissent expérimenter les principes de première main.
Notez que tous les tests sont configurés pour s'exécuter sur PostgreSQL version 14 ou ultérieure.
indice
CHAPITRE 01 Architecture de PostgreSQL
1.
Processus principal
1.1 Processus Postmaster
1.2 Processus backend
1.3 Processus de fond
2.
mémoire
2.1 Mémoire partagée
2.2 Mémoire locale
3.
Structure PostgreSQL
3.1 Structure logique
3.2 Structure physique
4.
Tampon partagé
4.1 Composant de mémoire tampon partagée
4.2 Lecture des données à partir d'une mémoire tampon partagée
4.3 Balayage d'horloge
4.4 Stratégies d'E/S PostgreSQL
5. WAL (Journal de bord prévisionnel)
5.1 Fichiers de segment WAL
5.2 Point de contrôle
5.3 Gestion des fichiers de segments WAL
5.4 Écriture des enregistrements WAL
5.5 Récupération de données à l'aide de fichiers WAL
CHAPITRE 02 Transactions et MVCC
1.
Niveau d'isolation des transactions
1.1 Niveaux d'isolation dans PostgreSQL
2.
structure de stockage des données
2.1 Structure de la page
2.2 ID de transaction
2.3 Structure de tuple
Version 2.4 Tuple
2.5 Indices et tuples
3.
Instantané
3.1 Qu'est-ce qu'un instantané ?
3.2 Instantanés et visibilité des tuples
3.3 Instantanés et horizon de la base de données
3.4 Exportation d'un instantané
3.5 Instantané trop ancien
4.
Nettoyage de la page unique et mises à jour importantes
4.1 Facteur de remplissage
4.2 Nettoyage d'une seule page
Mise à jour 4.3 HOT (Heap Only Tuple)
5. MVCC (Contrôle de concurrence multi-versions)
5.1 Qu'est-ce que le MVCC ?
5.2 Structure circulaire XID et XID gelé
5.3 Âge
6.
Aspirateur et aspirateur automatique
6.1 Vide
6.2 Auto-aspirateur
CHAPITRE 03 VERROUILLAGE
1.
Verrouillage au niveau de l'objet
1.1 Types d'objets
1.2 Mode de verrouillage d'objet
2.
Verrouillage au niveau de la ligne
2.1 Mode de verrouillage au niveau de la ligne
2.2 Transactions multiples
2.3 Attente du verrouillage de tuple
2.4 Blocage
3.
Verrouillage du niveau de mémoire
3.1 Cadenas légers (LWLocks)
3.2 Verrous à rotation
3.3 Verrouillage de la goupille du tampon
3.4 Verrouillage du tampon WAL
3.5 Surveillance du verrouillage de la mémoire
CHAPITRE 04 Exécution SQL
1.
Optimiseur basé sur les coûts
1.1 Coût CBO
2.
Statistiques PostgreSQL
2.1 Collecte manuelle d'informations statistiques
2.2 Gestion de l'information statistique
3.
Plan d'action
3.1 Méthode d'extraction du plan d'exécution
3.2 Analyse du plan d'exécution
4. Processus de traitement SQL
4.1 Processus de traitement SQL
4.2 Préparer l'état
5.
Méthode de numérisation
5.1 Analyse séquentielle
5.2 Analyse de l'index
5.3 Analyse de l'index bitmap
5.4 Analyse de l'index uniquement
5.5 Couverture de l'indice
6.
Méthode de jointure
6.1 Jointure de boucles imbriquées
6.2 Jointure par hachage
6.3 Jointure par tri et fusion
Appendice
1.
Anomalies selon le niveau d'isolement
1.1 Lire les engagements
1.2 Lecture répétable
1.3 Sérialisable
2.
Surveillance des ballonnements de table
3. Surveillance SQL
3.1 pg_stat_statements
3.2 pg_stat_monitor
1.
Processus principal
1.1 Processus Postmaster
1.2 Processus backend
1.3 Processus de fond
2.
mémoire
2.1 Mémoire partagée
2.2 Mémoire locale
3.
Structure PostgreSQL
3.1 Structure logique
3.2 Structure physique
4.
Tampon partagé
4.1 Composant de mémoire tampon partagée
4.2 Lecture des données à partir d'une mémoire tampon partagée
4.3 Balayage d'horloge
4.4 Stratégies d'E/S PostgreSQL
5. WAL (Journal de bord prévisionnel)
5.1 Fichiers de segment WAL
5.2 Point de contrôle
5.3 Gestion des fichiers de segments WAL
5.4 Écriture des enregistrements WAL
5.5 Récupération de données à l'aide de fichiers WAL
CHAPITRE 02 Transactions et MVCC
1.
Niveau d'isolation des transactions
1.1 Niveaux d'isolation dans PostgreSQL
2.
structure de stockage des données
2.1 Structure de la page
2.2 ID de transaction
2.3 Structure de tuple
Version 2.4 Tuple
2.5 Indices et tuples
3.
Instantané
3.1 Qu'est-ce qu'un instantané ?
3.2 Instantanés et visibilité des tuples
3.3 Instantanés et horizon de la base de données
3.4 Exportation d'un instantané
3.5 Instantané trop ancien
4.
Nettoyage de la page unique et mises à jour importantes
4.1 Facteur de remplissage
4.2 Nettoyage d'une seule page
Mise à jour 4.3 HOT (Heap Only Tuple)
5. MVCC (Contrôle de concurrence multi-versions)
5.1 Qu'est-ce que le MVCC ?
5.2 Structure circulaire XID et XID gelé
5.3 Âge
6.
Aspirateur et aspirateur automatique
6.1 Vide
6.2 Auto-aspirateur
CHAPITRE 03 VERROUILLAGE
1.
Verrouillage au niveau de l'objet
1.1 Types d'objets
1.2 Mode de verrouillage d'objet
2.
Verrouillage au niveau de la ligne
2.1 Mode de verrouillage au niveau de la ligne
2.2 Transactions multiples
2.3 Attente du verrouillage de tuple
2.4 Blocage
3.
Verrouillage du niveau de mémoire
3.1 Cadenas légers (LWLocks)
3.2 Verrous à rotation
3.3 Verrouillage de la goupille du tampon
3.4 Verrouillage du tampon WAL
3.5 Surveillance du verrouillage de la mémoire
CHAPITRE 04 Exécution SQL
1.
Optimiseur basé sur les coûts
1.1 Coût CBO
2.
Statistiques PostgreSQL
2.1 Collecte manuelle d'informations statistiques
2.2 Gestion de l'information statistique
3.
Plan d'action
3.1 Méthode d'extraction du plan d'exécution
3.2 Analyse du plan d'exécution
4. Processus de traitement SQL
4.1 Processus de traitement SQL
4.2 Préparer l'état
5.
Méthode de numérisation
5.1 Analyse séquentielle
5.2 Analyse de l'index
5.3 Analyse de l'index bitmap
5.4 Analyse de l'index uniquement
5.5 Couverture de l'indice
6.
Méthode de jointure
6.1 Jointure de boucles imbriquées
6.2 Jointure par hachage
6.3 Jointure par tri et fusion
Appendice
1.
Anomalies selon le niveau d'isolement
1.1 Lire les engagements
1.2 Lecture répétable
1.3 Sérialisable
2.
Surveillance des ballonnements de table
3. Surveillance SQL
3.1 pg_stat_statements
3.2 pg_stat_monitor
Avis de l'éditeur
Comment gère-t-on les versions des tuples pour garantir la cohérence des données lues ?
Pourquoi le Vacuum est-il nécessaire et quel est son lien avec les performances des bases de données ?
Comment les verrous sont-ils implémentés pour les tables et les tuples ?
Comment l'optimiseur calcule-t-il le coût d'exécution des requêtes SQL ?
Vous souhaitez en savoir plus sur la nouvelle méthode de jointure introduite pour optimiser les performances des requêtes ?
(introduction)
Ma première rencontre avec PostgreSQL remonte à cinq ans, lorsque je l'ai introduit comme base de données open source pour les solutions de mon entreprise.
À l'époque, nous n'examinions PostgreSQL que de manière intermittente, pour trouver des solutions lorsque des problèmes de performance survenaient.
Cependant, comme le dit le proverbe, « C’est celui qui a soif qui creuse un puits », je me suis plongé dans la résolution du problème et j’ai fini par écrire un livre.
Avec la récente prolifération des environnements cloud, l'intérêt pour PostgreSQL croît et diverses bases de données open source basées sur ce langage sont mises à disposition.
Bien qu'étant un environnement open source, PostgreSQL offre des fonctionnalités puissantes pour l'analyse et l'optimisation des performances grâce à l'utilisation de diverses statistiques de performance.
De plus, l'optimiseur est constamment amélioré grâce aux mises à jour de version, et des packs d'extension utiles pour l'analyse des performances sont également développés en permanence.
Ce livre aborde les sujets fondamentaux essentiels à la gestion des performances, et s'adresse aux utilisateurs débutants et intermédiaires de PostgreSQL.
Nous abordons en détail les fonctionnalités essentielles de PostgreSQL, notamment l'architecture, les transactions, MVCC, le vacuum, les verrous et les plans d'exécution SQL.
Au-delà de la simple description de la théorie, nous l'avons rédigée de manière à ce que vous puissiez clairement comprendre son fonctionnement interne grâce à divers tests et vérifications.
J’espère que cette structure vous permettra d’aborder PostgreSQL sans aucun obstacle, et c’est pourquoi j’ai intitulé le livre « PostgreSQL sans obstacles ».
Nous avons notamment utilisé diverses images et aides visuelles pour aider les lecteurs à comprendre facilement un contenu qui peut être considéré comme techniquement difficile, et nous avons également fourni des exemples pratiques et des scénarios afin que les lecteurs puissent expérimenter les principes par eux-mêmes.
Notez que tous les tests sont configurés pour s'exécuter sur PostgreSQL version 14 ou ultérieure.
De nombreuses personnes ont contribué à donner vie à ce livre.
Je suis profondément reconnaissant au président Cho Jong-am, qui a toujours insisté sur le principe selon lequel « les techniciens doivent partager leurs connaissances » et nous a rappelé l’importance du partage des connaissances.
Je tiens également à exprimer ma gratitude au président Koh Pyeong-seok, qui a soutenu et attendu patiemment la publication du livre, et au réalisateur Jeong Dong-gi, qui m'a encouragé à me décider à écrire.
Écrire un livre tout en faisant du conseil n'a jamais été facile.
Je tiens néanmoins à exprimer ma sincère gratitude au directeur Kim Cheol-hwan, au directeur principal Park Gwan-gyu et au directeur Kim Gyu-min, qui ont sacrifié leur sommeil et leurs week-ends pour s'acquitter discrètement de leurs responsabilités.
Je tiens également à exprimer ma plus profonde gratitude à la rédactrice en chef Song Yu-rim pour sa passion pour le design et l'édition.
Je crois que la voie vers une compétence durable dans n'importe quel domaine réside en fin de compte dans l'apprentissage.
Puisque le chemin de l'apprentissage est sans fin, j'ai écrit ce livre avec l'idée d'« apprendre et de partager ces connaissances avec les autres ».
Bien que je regrette de ne pouvoir inclure davantage de contenu, j'espère qu'il vous sera utile, à vous, les lecteurs.
Décembre 2024
Auteur représentatif Lim Gyeong-seok
Pourquoi le Vacuum est-il nécessaire et quel est son lien avec les performances des bases de données ?
Comment les verrous sont-ils implémentés pour les tables et les tuples ?
Comment l'optimiseur calcule-t-il le coût d'exécution des requêtes SQL ?
Vous souhaitez en savoir plus sur la nouvelle méthode de jointure introduite pour optimiser les performances des requêtes ?
(introduction)
Ma première rencontre avec PostgreSQL remonte à cinq ans, lorsque je l'ai introduit comme base de données open source pour les solutions de mon entreprise.
À l'époque, nous n'examinions PostgreSQL que de manière intermittente, pour trouver des solutions lorsque des problèmes de performance survenaient.
Cependant, comme le dit le proverbe, « C’est celui qui a soif qui creuse un puits », je me suis plongé dans la résolution du problème et j’ai fini par écrire un livre.
Avec la récente prolifération des environnements cloud, l'intérêt pour PostgreSQL croît et diverses bases de données open source basées sur ce langage sont mises à disposition.
Bien qu'étant un environnement open source, PostgreSQL offre des fonctionnalités puissantes pour l'analyse et l'optimisation des performances grâce à l'utilisation de diverses statistiques de performance.
De plus, l'optimiseur est constamment amélioré grâce aux mises à jour de version, et des packs d'extension utiles pour l'analyse des performances sont également développés en permanence.
Ce livre aborde les sujets fondamentaux essentiels à la gestion des performances, et s'adresse aux utilisateurs débutants et intermédiaires de PostgreSQL.
Nous abordons en détail les fonctionnalités essentielles de PostgreSQL, notamment l'architecture, les transactions, MVCC, le vacuum, les verrous et les plans d'exécution SQL.
Au-delà de la simple description de la théorie, nous l'avons rédigée de manière à ce que vous puissiez clairement comprendre son fonctionnement interne grâce à divers tests et vérifications.
J’espère que cette structure vous permettra d’aborder PostgreSQL sans aucun obstacle, et c’est pourquoi j’ai intitulé le livre « PostgreSQL sans obstacles ».
Nous avons notamment utilisé diverses images et aides visuelles pour aider les lecteurs à comprendre facilement un contenu qui peut être considéré comme techniquement difficile, et nous avons également fourni des exemples pratiques et des scénarios afin que les lecteurs puissent expérimenter les principes par eux-mêmes.
Notez que tous les tests sont configurés pour s'exécuter sur PostgreSQL version 14 ou ultérieure.
De nombreuses personnes ont contribué à donner vie à ce livre.
Je suis profondément reconnaissant au président Cho Jong-am, qui a toujours insisté sur le principe selon lequel « les techniciens doivent partager leurs connaissances » et nous a rappelé l’importance du partage des connaissances.
Je tiens également à exprimer ma gratitude au président Koh Pyeong-seok, qui a soutenu et attendu patiemment la publication du livre, et au réalisateur Jeong Dong-gi, qui m'a encouragé à me décider à écrire.
Écrire un livre tout en faisant du conseil n'a jamais été facile.
Je tiens néanmoins à exprimer ma sincère gratitude au directeur Kim Cheol-hwan, au directeur principal Park Gwan-gyu et au directeur Kim Gyu-min, qui ont sacrifié leur sommeil et leurs week-ends pour s'acquitter discrètement de leurs responsabilités.
Je tiens également à exprimer ma plus profonde gratitude à la rédactrice en chef Song Yu-rim pour sa passion pour le design et l'édition.
Je crois que la voie vers une compétence durable dans n'importe quel domaine réside en fin de compte dans l'apprentissage.
Puisque le chemin de l'apprentissage est sans fin, j'ai écrit ce livre avec l'idée d'« apprendre et de partager ces connaissances avec les autres ».
Bien que je regrette de ne pouvoir inclure davantage de contenu, j'espère qu'il vous sera utile, à vous, les lecteurs.
Décembre 2024
Auteur représentatif Lim Gyeong-seok
SPÉCIFICATIONS DES PRODUITS
- Date d'émission : 23 janvier 2025
Nombre de pages, poids, dimensions : 397 pages | 1 001 g | 183 × 258 × 20 mm
- ISBN13 : 9791188427222
- ISBN10 : 1188427229
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne