Share via


Definición de componentes por escritores

Los componentes los definen y crean instancias de escritores en su documento de metadatos del escritor en respuesta a un evento De identificación al inicio de una operación de copia de seguridad (consulte Información general sobre la inicialización de copia de seguridad) cuando se rellena el documento de metadatos del escritor.

Al crear un componente en su documento de metadatos del escritor, mediante IVssCreateWriterMetadata e IVssCreateWriterMetadata::AddComponent, un escritor debe especificar:

  • Si el componente se puede seleccionar para la copia de seguridad
  • Un tipo de componente
  • Un nombre de componente (que debe ser único no solo dentro de una instancia de escritor determinada, sino en todas las instancias de escritor)
  • Si el componente tiene algún metadato específico del escritor asociado a él
  • Si el escritor requiere una notificación después de una copia de seguridad correcta

Opcionalmente, los escritores pueden especificar:

  • Ruta de acceso lógica de un componente (que debe ser única no solo dentro de una instancia de escritor determinada, sino en todas las instancias de escritor)
  • Descripción de un componente (o subtítulo)
  • Icono que se va a usar con las INTERFACES de usuario para indicar el componente

No es necesario que un componente contenga realmente ningún archivo. Este tipo de componente vacío o "ficticio" puede ser útil para organizar componentes. Este componente se puede usar para definir un conjunto de componentes y el componente del escritor (consulte Ruta de acceso lógica de componentes).

Configuración de la organización de componentes

Establecer la capacidad de selección de un componente (su capacidad de selección para la copia de seguridad y su capacidad de selección para la restauración) y sus rutas lógicas permiten a un escritor exigir o hacer opcional la inclusión de determinados componentes en una operación de copia de seguridad o restauración, y agrupar componentes en conjuntos de componentes con un componente seleccionable que actúe como punto de entrada para todo el grupo.

La pertenencia a estas agrupaciones determina qué componentes se usarán durante las operaciones de copia de seguridad y restauración. El uso de "seleccionable" para que sea seleccionable para la operación de copia de seguridad y que se pueda seleccionar para la restauración para la operación de restauración, los desarrolladores deben entender que:

  • Si se realiza una copia de seguridad de los componentes administrados por un escritor determinado, un solicitante debe incluir explícitamente todos los componentes no seleccionables sin antecesores seleccionables en su ruta de acceso lógica al documento componentes de copia de seguridad y realizar copias de seguridad y restaurar esos componentes como un grupo.
  • Un solicitante tiene la opción de agregar explícitamente componentes seleccionables al documento componentes de copia de seguridad durante las operaciones de copia de seguridad y restauración; Una vez agregado, se debe hacer una copia de seguridad o restaurar el componente.
  • Si se puede seleccionar un componente, el componente y todos sus subcomponentes (definidos por rutas lógicas) forman un conjunto de componentes, que se puede tratar como una sola unidad que puede participar opcionalmente en las operaciones de copia de seguridad y restauración.
  • Un solicitante nunca agrega explícitamente un componente no seleccionable con antecesores seleccionables, un subcomponente en un conjunto de componentes, a su documento de componentes de copia de seguridad durante las operaciones de copia de seguridad y restauración. Estos componentes deben incluirse implícitamente si su antecesor seleccionable se agrega explícitamente, en cuyo caso se debe hacer una copia de seguridad o restaurarlos (consulte Uso de componentes por el solicitante).
  • Un componente seleccionable con un antecesor seleccionable sigue siendo un subcomponente (miembro de un conjunto de componentes) y se puede incluir implícitamente si su antecesor seleccionable se incluye explícitamente en la operación. En este caso, su información no se agrega al documento componentes de copia de seguridad. Si su antecesor seleccionable no está incluido en la operación, el componente se puede seleccionar explícitamente para su inclusión en la operación, en cuyo caso su información se incluye en el documento Componentes de copia de seguridad.
  • Un subcomponente incluido implícitamente en una copia de seguridad se puede incluir explícitamente en una operación de restauración, independientemente del estado de cualquier antecesor seleccionable, si se puede seleccionar para la restauración. Cualquier subcomponente seleccionable para restaurar incluido durante una operación de restauración debe tener su información agregada al documento Componentes de copia de seguridad.
  • Un escritor que no haya agregado ningún componente explícitamente al documento de componentes de copia de seguridad antes de la generación de eventos PrepareForBackup y PreRestore no recibirá ningún otro evento de VSS.

Para obtener más información, vea Trabajar con la capacidad de selección y las rutas de acceso lógicas.

Agregar archivos a un componente

Un componente contiene información de archivo en forma de un conjunto de archivos que contiene:

  • Directorio raíz de los archivos del componente.
  • Especificación de archivo para los archivos del componente.
  • Marca que indica si la especificación del componente es recursiva.

Dependiendo del tipo de componente, que puede ser una base de datos o un grupo de archivos, y (en el caso de los componentes de base de datos) si los archivos que se van a cargar son archivos de datos o de registro, un escritor llama a IVssCreateWriterMetadata::AddFilesToFiles, IVssCreateWriterMetadata::AddDatabaseLogFiles para agregar un conjunto de archivos.

Al usar estas funciones, debe especificar los archivos que se van a agregar al conjunto de archivos de la siguiente manera:

  • wszPath: esta es la ruta de acceso al directorio que contiene los archivos que se van a agregar al conjunto de archivos. Si el parámetro bRecursive se establece en true, el parámetro wszPath especifica una jerarquía de directorios que se recorrerán de forma recursiva y se deben volver a crear todos los directorios, incluidos los directorios vacíos.
  • wszFilespec: esta cadena especifica los archivos de cada directorio que se van a agregar al conjunto de archivos.

Por ejemplo, supongamos que existe la siguiente estructura de directorios:

C:\\Directory1\\File1.txt C:\\Directory1\\File2.txt C:\\Directory1\\Directory2\\File1.txt C:\\Directory1\\Directory2\\File2.txt C:\\Directory1\\Directory3\\

Si el escritor especifica "C:\Directory1" para wszPath, "File1.*" para wszFilespec y true para bRecursive, el solicitante debe incluir estos archivos:

C:\\Directory1\\File1.txt C:\\Directory1\\Directory2\\File1.txt

Si en su lugar el escritor especifica "C:\Directory1" para wszPath, "*" para wszFilespec y true para bRecursive, el solicitante debe incluir estos archivos:

C:\\Directory1\\File1.txt C:\\Directory1\\File2.txt C:\\Directory1\\Directory2\\File1.txt C:\\Directory1\\Directory2\\File2.txt

Si el escritor especifica "C:\Directory1" para wszPath, "*" para wszFilespec y false para bRecursive, el solicitante debe incluir estos archivos:

C:\\Directory1\\File1.txt C:\\Directory1\\File2.txt

En todos los ejemplos anteriores, siempre que el escritor especifique true para bRecursive, se debe volver a crear el directorio vacío C:\Directory1\Directory3\.

En el caso de un conjunto de archivos agregado a un componente de grupo de archivos, en los casos en los que los archivos que están actualmente en disco no están en lo que el escritor consideraría la ubicación adecuada o predeterminada, un escritor tiene la opción de agregar una ruta de acceso alternativa. En estos casos, la definición del conjunto de archivos de la ruta de acceso contiene la ubicación normal de los archivos y donde se deben restaurar los archivos, mientras que la ruta de acceso alternativa contiene la ubicación actual de los archivos de los que se va a realizar una copia de seguridad.

Todos los archivos del conjunto de archivos deben existir en el momento de la copia de seguridad. Los solicitantes deben suponer que todos los archivos enumerados en el conjunto de archivos son necesarios para la copia de seguridad y producirán un error en la copia de seguridad si faltan archivos. Tenga en cuenta que cuando se especifica "*" para el parámetro wszFilespec , puede coincidir con cero o más archivos.

Tenga en cuenta que tales atributos del documento de metadatos de escritor como asignaciones de ubicación alternativas, archivos incluidos y excluidos explícitamente, y los métodos de restauración se establecen en el nivel de escritor, no en el nivel de componente. (Para obtener más información, vea Trabajar con el documento de metadatos del escritor).

Definición de componentes para operaciones de copia de seguridad y restauración

Las operaciones de restauración y copia de seguridad generan necesariamente un evento Identify y, tanto para las copias de seguridad como para las restauraciones, se controlarán mediante el mismo método CVssWriter::OnIdentify .

Durante las operaciones de copia de seguridad, los solicitantes usan la información devuelta por los métodos CVssWriter::OnIdentify de un escritor para determinar qué escritores están presentes en el sistema y, a continuación, determinar de qué archivos se van a realizar copias de seguridad.

Durante las operaciones de restauración, la información devuelta por el evento CVssWriter::OnIdentify de un escritor solo se usa para establecer la identidad y el estado de los escritores presentes actualmente en el sistema; no se usa la información de especificación del archivo generada durante una restauración. En su lugar, los documentos de metadatos de escritor almacenados en el momento de la copia de seguridad se usan para obtener estos datos.

Una vez generada durante una operación de copia de seguridad, la información del componente de escritura, junto con el resto de la información del escritor, se guarda para recuperarse para admitir operaciones de restauración. Normalmente, es responsabilidad del solicitante almacenar esta información.