

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Ingesta de streaming a una vista materializada
<a name="materialized-view-streaming-ingestion"></a>

En este tema se describe cómo utilizar las vistas materializadas para obtener un acceso rápido a los datos de streaming.

 La ingesta de streaming proporciona una ingesta de datos de alta velocidad y baja latencia de [Amazon Kinesis Data Streams](https://aws.amazon.com//kinesis/data-streams/) o [Amazon Managed Streaming para Apache Kafka](https://aws.amazon.com//msk/) a una base de datos de Amazon Redshift aprovisionada o a una base de datos de Amazon Redshift sin servidor. Los datos llegan a una vista materializada de Redshift que está configurada para el propósito. Eso da como resultado un acceso rápido a datos externos. La ingesta de streaming reduce el tiempo de acceso a los datos y reduce el costo de almacenamiento. Puede configurarlo para el clúster de Amazon Redshift o para el grupo de trabajo de Amazon Redshift sin servidor, con una pequeña recopilación de comandos SQL. Después de la configuración, cada actualización de la vista materializada, puede ingerir cientos de megabytes de datos por segundo. 

## Cómo fluyen los datos de un servicio de streaming a Redshift
<a name="materialized-view-streaming-ingestion-data-flow"></a>

 Ayuda a entender cómo funciona la ingesta de streaming y los objetos de base de datos que se utilizan en el proceso. Los datos fluyen directamente de un proveedor de flujo de datos a un clúster aprovisionado de Amazon Redshift o a un grupo de trabajo de Amazon Redshift sin servidor. No hay una zona de aterrizaje temporal, como un bucket de Amazon S3. El clúster aprovisionado o grupo de trabajo es el consumidor de flujos. En la base de datos de Redshift, los datos leídos del flujo aterrizan en una vista materializada. Los datos se procesan a medida que llegan. Por ejemplo, los valores JSON se pueden consumir y asignar a las columnas de datos de una vista materializada, mediante SQL. Cuando la vista materializada se actualiza, Redshift consume datos de las particiones asignadas de datos de Kinesis o particiones de Kafka hasta que la vista se actualiza con el flujo. 

 Los casos de uso para la ingesta de streaming de Amazon Redshift implican datos que se generan continuamente y que se deben procesar en un periodo corto o *latencia*, desde su generación. Esto se denomina comúnmente análisis *casi en tiempo real*. Los orígenes pueden incluir dispositivos TI, dispositivos de telemetría del sistema y datos de secuencias de clics de un sitio web o una aplicación muy activos.

## Prácticas recomendadas de análisis de datos para mejorar el rendimiento
<a name="materialized-view-streaming-recommendations"></a>

Al configurar la ingesta de streaming, hay opciones sobre cómo puede analizar los datos entrantes. Las prácticas pueden incluir la lógica empresarial o el formateo a medida que llegan los datos. Sugerimos las siguientes prácticas recomendadas para ayudarle a evitar errores o la pérdida de datos. Estas se derivan de pruebas internas y ayudan a los clientes a solucionar problemas de configuración y análisis.
+ **Extracción de valores de los datos transmitidos**: si utiliza la función [JSON\$1EXTRACT\$1PATH\$1TEXT](https://docs.aws.amazon.com/redshift/latest/dg/JSON_EXTRACT_PATH_TEXT.html) en la definición de vista materializada para analizar o *destruir* JSON transmitido, puede afectar considerablemente al rendimiento y a la latencia. La explicación es que, por cada columna extraída con JSON\$1EXTRACT\$1PATH\$1TEXT, se vuelve a analizar el JSON entrante. Después de esto, se produce la conversión de tipos de datos, el filtrado y los cálculos de lógica empresarial. Esto significa, por ejemplo, que si extrae 10 columnas de los datos JSON, cada registro JSON se analiza 10 veces, lo que incluye lógica adicional. Esto se traduce en una mayor latencia de ingesta. Un enfoque alternativo que recomendamos es utilizar la [función JSON\$1PARSE](https://docs.aws.amazon.com/redshift/latest/dg/JSON_PARSE.html) para convertir los registros JSON al tipo de datos SUPER de Redshift. Una vez que los datos transmitidos lleguen a la vista materializada, use PartiQL para extraer cadenas individuales de la representación de SUPER de los datos JSON. Para obtener más información, consulte [Consulta de datos semiestructurados](https://docs.aws.amazon.com/redshift/latest/dg/query-super.html).

   Además, tenga en cuenta que JSON\$1EXTRACT\$1PATH\$1TEXT tiene un máximo de tamaño de datos de 64 KB. Por lo tanto, si algún registro JSON tiene más de 64 KB, al procesarlo con JSON\$1EXTRACT\$1PATH\$1TEXT se produce un error. 
+  **Asignación de un flujo de Amazon Kinesis Data Streams o un tema de Amazon MSK a una vista materializada múltiple**: no recomendamos crear varias vistas materializadas para ingerir datos desde un solo flujo o tema. Esto se debe a que cada vista materializada crea un consumidor para cada porción del flujo o la partición de Kinesis Data Streams en el tema de Kafka. Como resultado, puede producirse una limitación o superación del rendimiento del flujo o el tema. También puede suponer un costo mayor, ya que se ingieren los mismos datos varias veces. Cuando configure la ingesta de streaming, le recomendamos que cree una vista materializada para cada flujo o tema. 

  Si el caso de uso requiere ingerir datos de un flujo de KDS o un tema de MSK en varias vistas materializadas, antes de hacerlo, consulte el [Blog de macrodatos de AWS](https://aws.amazon.com/blogs/big-data/), específicamente la publicación [Best practices to implement near-real-time analytics using Amazon Redshift Streaming Ingestion with Amazon MSK](https://aws.amazon.com/blogs/big-data/best-practices-to-implement-near-real-time-analytics-using-amazon-redshift-streaming-ingestion-with-amazon-msk/).

## Comportamiento y tipos de datos de ingesta de streaming
<a name="materialized-view-streaming-ingestion-limitations"></a>

En la siguiente tabla se describen los detalles del comportamiento técnico y los límites de tamaño de los distintos tipos de datos. Le recomendamos que se familiarice con ellos antes de configurar una vista materializada para la ingesta de streaming.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/redshift/latest/dg/materialized-view-streaming-ingestion.html)