SFTP genérico

El servidor SFTP de feed genérico permite subir varios tipos de feeds a un solo servidor SFTP por entorno. En esta guía, se explica cómo usar el servidor SFTP genérico y se proporcionan vínculos a la guía adecuada para el respectivo feed que planeas usar.

(Consulta la sección Exportación de feeds (de extremo a extremo) o Feeds (para principiantes) de la documentación).

El servidor SFTP genérico se basa en dos cargas separadas:

  1. Archivo descriptor: Describe el tipo de feed que subirás.
  2. Archivos de feed: Es el contenido del feed real.

Estructura del campo descriptor

El archivo descriptor se sube para informar a nuestro sistema qué tipo de feed subirás. Esto nos permite validar y procesar el feed correctamente. El archivo descriptor se debe subir antes del contenido del feed y debe cumplir con los siguientes requisitos de nomenclatura:

  • Debes usar la extensión de archivo .filesetdesc.json para el archivo descriptor.
  • Cada nombre de archivo descriptor debe ser único y no se puede volver a usar en las cargas. Te recomendamos que incluyas la marca de tiempo de generación y el nombre del feed en el nombre de archivo.
    • Ejemplo: offers_1524606581.filesetdesc.json
  • Cada archivo descriptor debe enumerar todos los archivos de datos en el feed más reciente para el nombre de feed pertinente.
message FilesetDescriptor {
  // The timestamp at which this feed was generated, in Unix time format
  // (seconds since the epoch). (required)
  int64 generation_timestamp = 1;

  // Identifies the name of this feed. (required)
  string name = 2;

  // Paths (relative to the dropbox root) specifying data files included in this
  // feed. (required)
  repeated string data_file = 3;
}

Los valores posibles para el campo name incluyen los siguientes:

  • reservewithgoogle.entity
  • google.offer

A continuación, se muestra un ejemplo de archivo descriptor JSON para un feed de ofertas con dos Shards:

{
  "generation_timestamp": 1524606581,
  "name": "google.offer",
  "data_file": [
    "offers_1524606581_1.json",
    "offers_1524606581_2.json"
  ]
}

Estructura del contenido del feed

Después de subir el archivo descriptor, subirás todos los archivos de feed para el tipo de datos de feed correspondiente al archivo de configuración de feed que nombra tu archivo descriptor. Los nombres de archivo y las ubicaciones de ruta (relativas dentro del servidor SFTP) deben coincidir exactamente con lo que se incluyó en el data_file campo. Si falta algún archivo, tiene un nombre incorrecto o se sube a una ubicación diferente, no se procesará todo el feed.

El contenido de estos archivos de datos de feed debe cumplir con la especificación pertinente de la fuente que se especificó en el archivo descriptor.

Cada nombre de archivo de feed debe ser único y no se puede volver a usar en las cargas. Te recomendamos que incluyas la marca de tiempo de generación y el número de Shard (ID incremental) en el nombre de archivo.

  • Ejemplo: offers_1524606581_1.json

Tamaños de archivos de feed y frecuencia de carga

  • El tamaño de cada archivo de feed debe ser inferior a los 200 MB (después de la compresión).
  • El tamaño de cada archivo de datos descomprimido debe ser inferior a 2 GB.
  • La mayoría de las integraciones solo necesitarán usar un solo Shard. Debes usar la menor cantidad de Shards posible. Existe un máximo de 1,000 Shards por feed.
  • No es necesario que los registros individuales que se envían en un Shard se envíen en el mismo número de Shard en feeds futuros.
  • Para obtener un mejor rendimiento, divide los datos de manera uniforme entre los Shards a fin de que todos tengan un tamaño similar.
  • Si es necesario, usa gzip para comprimir los feeds. Pero hazlo para cada Shard de feed por separado.

Solución de problemas y depuración

Después de subir los archivos (descriptor y archivos de feed), ve al Visor de transferencia (documentación) en el Portal para socios (navega a Transferencia > Historial) para seguir el progreso de la transferencia de tu feed.

Busca el name que ingresaste en el archivo descriptor en la columna "Nombre del feed" para encontrar tu feed.

Una vez que se transfiera el feed (el estado es Success o Fail), puedes hacer clic en su fila para ver los detalles de los errores y las advertencias.