Puedes filtrar los objetos que se transferirán según la fecha de la última modificación. Esto te permite transferir solo los objetos modificados:
- Antes o después de una fecha y hora específicas
- Antes o después de una cantidad especificada de tiempo transcurrido en relación con el trabajo de transferencia
Esta función es útil para configurar transferencias incrementales o para omitir objetos que no se encuentran dentro de un período.
Se admite el filtrado por hora de última modificación para las transferencias desde todas las fuentes, excepto las listas de URLs.
Filtros basados en el tiempo
El filtrado se define con los valores last modified since, last modified before, minimum time elapsed since modified y maximum time elapsed since modified. Puedes usar los filtros de forma individual o combinada para crear un período.
| Campo | Descripción |
| Última modificación desde el | Incluye los objetos de la transferencia que se modificaron por última vez en esta marca de tiempo o después de ella. |
| Última modificación antes del | Incluye los objetos en la transferencia que se modificaron por última vez antes de esta marca de tiempo. |
| Tiempo mínimo transcurrido desde la modificación | Incluye los objetos de la transferencia que se modificaron por última vez hace al menos este tiempo. Por ejemplo, este filtro se puede usar para incluir solo los objetos que se modificaron hace al menos un mes. También se transfieren los objetos sin una "fecha de última modificación". |
| Tiempo máximo transcurrido desde la modificación | Incluye los objetos de la transferencia que se modificaron por última vez hace no más de este período. Por ejemplo, este filtro se puede usar para incluir solo los objetos que se modificaron en los últimos 7 días. También se transfieren los objetos sin una "fecha de última modificación". |
Cómo especificar un filtro basado en el tiempo
Puedes especificar filtros de hora de modificación cuando crees o actualices un trabajo de transferencia.
Las marcas de tiempo deben estar en UTC y tener el formato de una cadena RFC 3339 (p.ej., 2025-10-31T10:00:00Z). Las duraciones usan el formato de duración absoluta (p.ej., 1m para 1 mes; 1h30m para 1 hora y 30 minutos).
Consola de Google Cloud
Para especificar un filtro de tiempo en la consola de Google Cloud, sigue estos pasos:
- Ve a la página Crear trabajo de transferencia o Editar trabajo de transferencia.
- En la sección Elige los datos que deseas transferir, selecciona Fechas y horas como el Tipo de filtro.
- Ingresa una fecha y hora para el Intervalo de tiempo absoluto o una duración para el Intervalo de tiempo relativo. Se pueden especificar varios filtros juntos.
gcloud CLI
Para filtrar por hora de modificación con la gcloud CLI, pasa las marcas de filtro basadas en el tiempo al comando gcloud transfer jobs create o gcloud transfer jobs update:
gcloud transfer jobs create SOURCE DESTINATION \
--include-modified-before-absolute="DATETIME" \
--include-modified-after-absolute="DATETIME" \
--include-modified-before-relative="DURATION" \
--include-modified-after-relative="DURATION"
Aquí:
--include-modified-before-absoluteincluye los objetos que se modificaron por última vez antes de una fecha y hora absolutas. Por ejemplo, si especificas2020-01-01, la transferencia incluye los objetos que se modificaron por última vez antes del 1 de enero de 2020. Usa el formato de fecha y hora%Y-%m-%dT%H:%M:%S%z.--include-modified-after-absoluteincluye los objetos que se modificaron por última vez después de una fecha y hora absolutas. Por ejemplo, si especificas "2020-01-01", la transferencia incluirá los objetos que se modificaron por última vez después del 1 de enero de 2020. Usa el formato de fecha y hora%Y-%m-%dT%H:%M:%S%z.--include-modified-before-relativeincluye objetos que se modificaron fuera de un período transcurrido especificado. Por ejemplo, especificar una duración de10dtransfiere objetos modificados por última vez más de 10 días antes de la hora de inicio de la transferencia. Usa el formato de duración absoluta. P. ej.,1mpor 1 mes y1h30mpor 1 hora y 30 minutos.--include-modified-after-relativeincluye los objetos modificados dentro de un período especificado. Por ejemplo, si especificas una duración de10d, se transfieren los objetos que se modificaron por última vez menos de 10 días antes de la hora de inicio de la transferencia. Usa el formato de duración absoluta. P. ej.,1mpor 1 mes y1h30mpor 1 hora y 30 minutos.
Ejemplo (modificado después):
El siguiente comando solo transfiere los objetos modificados a partir del 1 de octubre de 2025.
gcloud transfer jobs create gs://my-source-bucket gs://my-sink-bucket
--include-modified-after-absolute="2025-10-01T00:00:00Z"
Ejemplo (período):
El siguiente comando solo transfiere los objetos modificados durante el mes de octubre de 2025.
gcloud transfer jobs create gs://my-source-bucket gs://my-sink-bucket
--include-modified-after-absolute="2025-10-01T00:00:00Z"
--include-modified-before-absolute="2025-11-01T00:00:00Z"
Ejemplo (tiempo transcurrido):
El siguiente comando solo transfiere los objetos modificados en los últimos 7 días.
gcloud transfer jobs create gs://my-source-bucket gs://my-sink-bucket
--include-modified-after-relative="7d"
REST
Para filtrar por hora de modificación con la API de REST, especifica los campos de filtro basados en el tiempo en el objectConditions de tu transferSpec.
{
"description": "DESCRIPTION",
"status": "ENABLED",
"projectId": "PROJECT_ID",
"transferSpec": {
"gcsDataSource": {
"bucketName": "SOURCE_BUCKET"
},
"gcsDataSink": {
"bucketName": "DESTINATION_BUCKET"
},
"objectConditions": {
"lastModifiedBefore": "DATETIME",
"lastModifiedSince": "DATETIME",
"minTimeElapsedSinceLastModification": "DURATION",
"maxTimeElapsedSinceLastModification": "DURATION",
}
}
}
Aquí:
lastModifiedBeforeincluye los objetos que se modificaron por última vez antes de una fecha y hora absolutas. Por ejemplo, si especificas2020-01-01, la transferencia incluirá los objetos que se modificaron por última vez antes del 1 de enero de 2020. Usa el formato de fecha y hora%Y-%m-%dT%H:%M:%S%z.lastModifiedSinceincluye los objetos que se modificaron por última vez después de una fecha y hora absolutas. Por ejemplo, si especificas "2020-01-01", la transferencia incluirá los objetos que se modificaron por última vez después del 1 de enero de 2020. Usa el formato de fecha y hora%Y-%m-%dT%H:%M:%S%z.minTimeElapsedSinceLastModificationincluye objetos que se modificaron fuera de un período transcurrido especificado. Por ejemplo, especificar una duración de10dtransfiere objetos modificados por última vez más de 10 días antes de la hora de inicio de la transferencia. Usa el formato de duración absoluta. P. ej.,1mpor 1 mes y1h30mpor 1 hora y 30 minutos.maxTimeElapsedSinceLastModificationincluye los objetos modificados dentro de un período especificado. Por ejemplo, si especificas una duración de10d, se transfieren los objetos que se modificaron por última vez menos de 10 días antes de la hora de inicio de la transferencia. Usa el formato de duración absoluta. P. ej.,1mpor 1 mes y1h30mpor 1 hora y 30 minutos.
Ejemplo (período):
El siguiente cuerpo JSON configura un trabajo para transferir solo los objetos modificados durante octubre de 2025.
{
"description": "Transfer October 2025 data",
"status": "ENABLED",
"projectId": "PROJECT_ID",
"transferSpec": {
"gcsDataSource": {
"bucketName": "SOURCE_BUCKET"
},
"gcsDataSink": {
"bucketName": "DESTINATION_BUCKET"
},
"objectConditions": {
"lastModifiedSince": "2025-10-01T00:00:00Z",
"lastModifiedBefore": "2025-11-01T00:00:00Z"
}
}
}
Para obtener más información, consulta la referencia de ObjectConditions.
Interacción con otros filtros
Cuando usas varios filtros, el Servicio de transferencia de almacenamiento los aplica en el siguiente orden:
Incluir prefijos: Reduce la cantidad de objetos que se deben tener en cuenta.
Condiciones del objeto (patrón glob y hora de modificación): Filtra los objetos que coincidieron con el prefijo de inclusión. Un objeto debe coincidir con el filtro de glob y el filtro de última modificación para incluirse en el resultado.
Excluir prefijos: Quita objetos del resultado.
Obtén más información para filtrar por prefijo y filtrar con patrones glob.
Ejemplo: Combinación de todos los filtros
Imagina que tienes la siguiente configuración de filtro para una transferencia desde AWS S3 o Azure:
- include_prefix: "logs/"
- match_glob: "**/*.log"
- lastModifiedSince: "2025-10-31T00:00:00Z"
- exclude_prefix: "logs/temp/"
Resultado: El servicio ejecutará la transferencia de la siguiente manera:
- Primero, solo considera los objetos del directorio
logs/. - Luego, busca objetos que terminen en
.logY que se hayan modificado el 31 de octubre de 2025 o después de esa fecha. - Por último, quita de esa lista los objetos que se encuentran en el directorio
logs/temp/.