Directrices sobre cómo añadir soporte para la compresión de datos para las columnas

Puede habilitar la compresión de datos para las columnas nuevas y existentes de las tablas estándar, personalizadas y descolgadas. La compresión de datos permite una reducción del tamaño de las tablas cuando se implementa.

Habilitación de la compresión de datos

Puede habilitar la compresión de datos utilizando métodos de personalización o de configuración.

Habilitación de la compresión de datos utilizando la personalización
  • Para las columnas personalizadas, puede habilitar la compresión de datos añadiendo CompressionSupported="true" y UseCompression="true" en el XML de entidad.
  • En el caso de las columnas existentes en una tabla estándar, puede habilitar la compresión de datos sustituyendo el valor del atributo UseCompression.
    Nota: Puede habilitar la compresión de datos sólo para las columnas existentes que tienen el atributo CompressionSupported establecido en True.

    Para ver la lista de columnas de tablas estándar disponibles para la compresión, consulte Columnas disponibles para la compresión.

Habilitación de la compresión de datos utilizando la configuración
  • La compresión se puede habilitar configurando las siguientes propiedades de compresión, de modo que los datos de la columna se puedan comprimir en cualquier momento sin tener que personalizar, reconstruir ni volver a implementar el software del sistem Sterling™ Order Management.
    • db.force.compression.tables: Configure esta propiedad para especificar los nombres de tabla a los que pertenecen las columnas que se van a comprimir.
    • db.force.compression.<table name>.columns: Para habilitar la compresión de datos, para cada uno de los nombres de tabla especificados en db.force.compression.tables, utilice db.force.compression.<table name>.columns para construir propiedades y establecer los nombres de columna de las tablas respectivas. Por ejemplo, para comprimir la columna AUDIT_XML de la tabla YFS_ORDER_AUDIT_DETAIL, establezca las propiedades como:
      • db.force.compression.tables=YFS_ORDER_AUDIT_DETAIL
      • db.force.compression.YFS_ORDER_AUDIT_DETAIL.columns=AUDIT_XML
  • Puede utilizar la propiedad db.force.compression.history.records para habilitar la compresión de datos en todas las columnas soportadas de compresión al grabar datos en tablas de historial. La propiedad garantiza que los datos escritos en las tablas de historial se compriman incluso si la compresión no está habilitada para las columnas soportadas de compresión en la tabla de transacciones.
Para obtener más información sobre cómo configurar las propiedades de compresión, consulte propiedades de compresión.

Consideraciones sobre la compresión de datos

Cuando añada soporte para la compresión de datos a las columnas de tablas estándar, tenga en cuenta las siguientes consideraciones:
  • La compresión de datos sólo se debe utilizar para las columnas que contienen una gran cantidad de datos de texto que normalmente no se consultan directamente, como registros de auditoría, rastreos de pila de errores y datos de plantilla XML. La naturaleza de estos registros puede consumir una cantidad significativa de espacio en la base de datos.
  • Las columnas que utilizan CompressionSupported="true" no admiten las operaciones de consulta de las API list. Esto se puede sustituir estableciendo el atributo QueryAllowed en True en el XML de entidad.
  • De forma predeterminada, las columnas que utilizan CompressionSupported="true" no se pueden utilizar como parte de un índice o restricción de unicidad. Esto se puede sustituir estableciendo el atributo AllowCompressedColumns en True en el elemento de índice en el XML de entidad.
  • No se puede marcar como columnas comprimibles las columnas de clave primaria.
  • La compresión de datos sólo debe estar habilitada si el tamaño máximo de la columna es > = 500 bytes. Cualquier columna marcada para la compresión de datos con menos de 500 bytes da como resultado avisos.
  • De forma predeterminada, la compresión de datos se realiza utilizando el algoritmo GZip. Puede sustituir esta lógica predeterminada de compresión de datos estableciendo la propiedad yfs.db.compression.class=nombre de clase en el archivo customer_overrides.properties. En el nombre de clase, especifique el nombre de la clase personalizada, que contiene la lógica de compresión de datos.

Columnas disponibles para compresión

La tabla siguiente lista las tablas y columnas que dan soporte a la compresión.
Tabla 1. Tablas y columnas para la compresión
Nombre de tabla Nombre de columna
ENVIAR_ERROR_INTEROP Mensaje
CONFIGURACIÓN_ACTIVIDAD_PLT CONFIG_XML
METADATOS de PLT_ACTIVITY_CONFIG_METADATA CONFIG_METADATOS_XML
PLT_EOF_STATUS Mensaje
PT_FILE_DATA OBJETO_FECHA
YCS_MANIFIESTO_UPS_DTL ENTRADA_XML
YFS_ASYNC_REQ Mensaje
YFS_ASYNC_REQ_ERROR MENSAJE_ERROR
YFS_AUDITORÍA XML AUDIT_
YFS_BATCH REQ_BATCH_COMPLETION_XML
YFS_CATÁLOGO_AUDITORÍA_MASIVA CAMBIO_XML
YFS_EXPORT Mensaje
YFS_GRÁFICO_INTERFAZ_USUARIO XML
YFS_HM_UMBRALES INFORMACIÓN_ADICIONAL
YFS_IMPORT Mensaje
YFS_INBOX INBOX_ADDNL_DATA
YFS_INBOX_NOTES TEXTO_NOTA
YFS_INBOX_REFERENCES VALOR
YFS_INSTRUCTION_DETAIL TEXTO_INSTRUCCIÓN
YFS_INVENTORY_ALERTS INFORMACIÓN_DISPONIBILIDAD
YFS_NOTES TEXTO_NOTA
YFS_ORDER_AUDIT_DETAIL XML AUDIT_
YFS_PERSON_INFO ERROR_TXT
RECURSOS_YF INPUT
RECURSOS_YF PLANTILLA
YFS_REPROCESAR_ERROR REFERENCIA_ERROR
YFS_REPROCESAR_ERROR CADENA DE ERRORES
YFS_REPROCESAR_ERROR ErrorMessage
YFS_REPROCESAR_ERROR Mensaje
YFS_BÚSQUEDA_GUARDADA DATOS DE ARCHIVO
YFS_SUB_FLUJO CONFIG_XML
YPM_AUDITORÍA MASIVA CRITERIO_BÚSQUEDA_XML

Lógica de compresión de datos

Los datos de las columnas comprimibles se comprimen utilizando el algoritmo GZip. Puede sustituir la lógica predeterminada de compresión de datos y proporcionar una lógica de compresión personalizada mediante la implementación de la interfaz SCICustomDataCompressor.

Debe especificar el nombre de la clase personalizada que implementa la interfaz SCICustomDataCompressor en la propiedad yfs.db.compression.class=nombre de clase en el archivo customer_overrides.properties.