Partager via


Introduction au Common Log File System

Common Log File System (CLFS) est un service de journalisation à usage général utilisé par les clients logiciels s’exécutant en mode utilisateur ou en mode noyau. Cette documentation décrit l’interface CLFS pour les clients en mode noyau. Pour plus d’informations sur l’interface en mode utilisateur, consultez Common Log File System dans le Kit de développement logiciel (SDK) Microsoft Windows.

CLFS encapsule toutes les fonctionnalités de l'algorithme ARIES pour la récupération et l'isolation exploitant la sémantique. Toutefois, l’interface de pilote de périphérique CLFS (DDI) n’est pas limitée à la prise en charge des fichiers ARIES ; il convient parfaitement aux différents scénarios de journalisation.

Le travail principal de tout journal transactionnel hautes performances consiste à permettre aux utilisateurs du journal de répéter avec précision l'historique. CLFS effectue cette opération en marshalant les enregistrements de journal du client dans des mémoires tampons, en les forçant à un stockage stable et en lisant les enregistrements à la demande. Il est important de noter qu’une fois qu’un enregistrement a atteint un stockage stable et que le support de stockage est intact, CLFS pourra lire l’enregistrement malgré les défaillances système.

CLFS prend en charge les journaux dédiés et les journaux multiplexés. Un journal dédié a un seul flux d’enregistrements de journal qui est utilisé par tous les clients du journal. Un journal multiplexé (également appelé journal commun) a plusieurs flux. Chaque flux a ses propres clients et ses propres mémoires tampons pour l'encapsulation des enregistrements de journal, mais les enregistrements de toutes ces mémoires tampons sont multiplexés dans une file d’attente unique et transférés vers un journal unique sur un stockage stable. Le multiplexage permet de consolider les opérations d’E/S de plusieurs flux.

Lorsqu’un client écrit un enregistrement dans un flux, il récupère un numéro de séquence de journal (LSN) qui identifie l’enregistrement de journal pour référence ultérieure. Les numéros LSN affectés aux enregistrements écrits dans un flux particulier forment une séquence croissante. Autrement dit, le LSN affecté à un enregistrement écrit dans un flux est toujours supérieur au LSN affecté à l’enregistrement précédent écrit dans ce même flux.

CLFS fournit plusieurs services en plus du marshallage, du vidage et de la récupération des enregistrements de journal. La liste suivante décrit certains de ces services supplémentaires.

  • L’espace d’un ensemble d’enregistrements de journal associés peut être réservé à l’avance. Un client peut procéder à une transaction sachant que CLFS est en mesure d’ajouter au journal tous les enregistrements qui décrivent la transaction.

  • CLFS conserve un en-tête pour chaque enregistrement de journal. Les clients peuvent définir certains champs dans l’en-tête pour créer des chaînes d’enregistrements liés que vous pouvez parcourir ultérieurement dans l’ordre inverse.

  • CLFS vide les enregistrements de journal dans un stockage stable en fonction de sa stratégie, mais permet également aux clients de forcer un ensemble d’enregistrements de journal à un stockage stable.

  • CLFS gère les métadonnées d’un journal et également pour chaque flux d’un journal multiplexé. Les clients peuvent afficher les métadonnées et définir certaines parties des métadonnées.

  • Pour chaque flux, CLFS gère un LSN de base et un dernier LSN qu’un client peut utiliser pour délimiter la partie active du flux.

  • Pour les journaux dédiés, CLFS gère (à la demande du client) une queue d’archivage que le client peut utiliser pour suivre la partie du journal archivée.

Certaines fonctionnalités de CLFS (par exemple, le LSN précédent et les champs LSN d’annulation d’un en-tête d’enregistrement) peuvent être mieux comprises en étudiant ARIES. Pour plus d’informations sur ARIES, consultez les articles suivants.

  • Chapitre C. Mohan, Don Haderle, Bruce Lindsay, Hamid Pirahesh, Peter Schwarz, ARIES : Une méthode de récupération des transactions prenant en charge le verrouillage à granularité fine et les restaurations partielles à l’aide de la journalisation en avance.

  • Chapitre C. Mohan, Repeating History Beyond ARIES.

Voir aussi

clients

ruisseau