Puedes filtrar los objetos que se transferirán según la hora de la última modificación. Esto te permite transferir solo los objetos modificados de las siguientes maneras:
- 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.
El filtrado por hora de última modificación es compatible con las transferencias de 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 en conjunto 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 de 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 "hora 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 tiempo. 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 "hora 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 formateadas como 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, haz lo siguiente:
- Ve a la página Crear trabajo de transferencia o Editar trabajo de transferencia.
- En la sección Elegir datos para 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 modificados por última vez antes de una fecha y hora absolutas. Por ejemplo, si especificas2020-01-01, la transferencia incluye los objetos modificados 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 modificados por última vez después de una fecha y hora absolutas. Por ejemplo, si especificas "2020-01-01", la transferencia incluye los objetos modificados 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 los objetos que se modificaron fuera de una cantidad especificada de tiempo transcurrido. Por ejemplo, si especificas una duración de10d, se transfieren los 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.,1mpara 1 mes;1h30mpara 1 hora y 30 minutos.--include-modified-after-relativeincluye los objetos modificados dentro de una cantidad especificada de tiempo. Por ejemplo, si especificas una duración de10d, se transfieren los objetos modificados 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.,1mpara 1 mes;1h30mpara 1 hora y 30 minutos.
Ejemplo (modificado después):
El siguiente comando transfiere solo los objetos modificados el 1 de octubre de 2025 o después de esa fecha.
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 transfiere solo 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 transfiere solo 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 modificados por última vez antes de una fecha y hora absolutas. Por ejemplo, si especificas2020-01-01, la transferencia incluye los objetos modificados 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 modificados por última vez después de una fecha y hora absolutas. Por ejemplo, si especificas "2020-01-01", la transferencia incluye los objetos modificados 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 los objetos que se modificaron fuera de una cantidad especificada de tiempo transcurrido. Por ejemplo, si especificas una duración de10d, se transfieren los 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.,1mpara 1 mes;1h30mpara 1 hora y 30 minutos.maxTimeElapsedSinceLastModificationincluye los objetos modificados dentro de una cantidad especificada de tiempo. Por ejemplo, si especificas una duración de10d, se transfieren los objetos modificados 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.,1mpara 1 mes;1h30mpara 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 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 los objetos que se deben tener en cuenta.
Condiciones de objeto (hora de última modificación): Filtra los objetos que coinciden con el prefijo de inclusión.
Excluir prefijos: Quita objetos del resultado.
Obtén más información sobre filtrar por prefijo.
Ejemplo: Combinación de todos los filtros
Imagina que tienes la siguiente configuración de filtro:
- include_prefix: "logs/"
- lastModifiedSince: "2025-10-31T00:00:00Z"
- exclude_prefix: "logs/temp/"
Resultado: El servicio ejecutará la transferencia de la siguiente manera:
- Primero, considera solo los objetos del directorio
logs/. - Luego, busca los objetos que se modificaron 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/.