La fédération de bases de données

Interroger plusieurs bases comme une seule : serveur distant, correspondance d'utilisateur, table étrangère, ce qui s'exécute à distance ou en local, validation en deux phases, fédérer ou copier dans un entrepôt.

  • 27 cartes
  • 7 thèmes
  • Gratuit

Le programme, thème par thème

Le poids de chaque thème suit celui que lui donne l'examen.

  1. Notions
  2. Questions
  3. Ranger et relier
  4. Les chiffres
  5. Sur le schéma
  6. Mises en situation
  7. Comprendre

Quelques cartes du deck

  • Base fédérée : de quoi s'agit-il ?

    Voir la réponse

    Ensemble de bases indépendantes que l'on interroge par une même interface comme si elles n'en formaient qu'une, sans déplacer leurs données.

    Les données restent chez leur propriétaire et toujours à jour, mais chaque requête dépend du réseau et de la disponibilité de toutes les bases touchées.

  • Dans ce plan EXPLAIN VERBOSE, où le filtre pays = 'FR' est-il appliqué ?

    ```text
    Foreign Scan on public.clients_distants (cost=100.00..128.45 rows=7 width=68)
    Output: id, nom, pays
    Remote SQL: SELECT id, nom, pays FROM public.clients WHERE ((pays = 'FR'::text))
    `

    • À distance : la ligne Remote SQL contient le WHERE
    • En local, après le rapatriement de toute la table, comme tout filtre sur une table étrangère
    • Des deux côtés : la base distante filtre, puis la base locale refiltre chaque ligne reçue
    • Nulle part : le plan ne montre aucun nœud Filter, donc la condition n'est pas appliquée
    Voir la réponse

    À distance : la ligne Remote SQL contient le WHERE

    Remote SQL est la requête réellement envoyée à l'autre base. Elle contient le WHERE, donc seules les lignes françaises voyagent. Un filtre appliqué en local apparaîtrait sur une ligne Filter:.

  • La partie … de la norme SQL décrit l'accès à des données externes par des tables étrangères.

    Voir la réponse

    La partie SQL/MED de la norme SQL décrit l'accès à des données externes par des tables étrangères.

    Son nom signifie gestion des données externes. PostgreSQL en reprend les commandes (CREATE SERVER, CREATE FOREIGN TABLE) avec des modules comme postgres_fdw ; Oracle répond au même besoin par ses liens de base, une syntaxe propre hors de cette norme.