Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Crear una transmisión con la APIs

Modo de enfoque
Crear una transmisión con la APIs - Amazon Kinesis Data Streams

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Siga estos pasos para crear su flujo de datos de Kinesis.

Crear el cliente de Kinesis Data Streams

Antes de poder trabajar con flujos de datos de Kinesis, debe crear un objeto cliente. El siguiente código Java crea una instancia de un compilador de clientes y la usa para definir la región, las credenciales y la configuración del cliente. A continuación, crea un objeto cliente.

AmazonKinesisClientBuilder clientBuilder = AmazonKinesisClientBuilder.standard(); clientBuilder.setRegion(regionName); clientBuilder.setCredentials(credentialsProvider); clientBuilder.setClientConfiguration(config); AmazonKinesis client = clientBuilder.build();

Para obtener más información, consulte Regiones y puntos de conexión de Kinesis Data Streams en Referencia general de AWS.

Crear la secuencia

Ahora que ya creó su cliente de Kinesis Data Streams, puede crear un flujo mediante la consola o de forma programada. Para crear un flujo de forma programada, cree una instancia de un objeto CreateStreamRequest y especifique un nombre para el flujo. Si desea usar el modo aprovisionado, debe especificar el número de particiones del flujo que deben usarse.

  • Bajo demanda:

    CreateStreamRequest createStreamRequest = new CreateStreamRequest(); createStreamRequest.setStreamName( myStreamName );
  • Aprovisionado:

    CreateStreamRequest createStreamRequest = new CreateStreamRequest(); createStreamRequest.setStreamName( myStreamName ); createStreamRequest.setShardCount( myStreamSize );

El nombre de la secuencia identifica la secuencia. El nombre depende de la AWS cuenta utilizada por la aplicación. También se limita a la región. Es decir, dos flujos en dos AWS cuentas diferentes pueden tener el mismo nombre y dos flujos en la misma AWS cuenta pero en dos regiones diferentes pueden tener el mismo nombre, pero no dos flujos en la misma cuenta y en la misma región.

El rendimiento del flujo depende del número de particiones. Para obtener un mayor rendimiento aprovisionado, necesitará más particiones. Si hay más fragmentos, también se incrementa el AWS coste de la transmisión. Para obtener más información sobre cómo calcular un número adecuado de fragmentos para una aplicación, consulte Elegir el modo de capacidad del flujo de datos.

Tras configurar el objeto createStreamRequest, cree un flujo llamando al método createStream en el cliente. Después de llamar a createStream, espere a que la secuencia alcance el estado ACTIVE antes de realizar cualquier operación en la secuencia. Para comprobar el estado de la secuencia, llame al método describeStream. Sin embargo, describeStream arroja una excepción si la secuencia no existe. Por lo tanto, incluya la llamada a describeStream en un bloque try/catch.

client.createStream( createStreamRequest ); DescribeStreamRequest describeStreamRequest = new DescribeStreamRequest(); describeStreamRequest.setStreamName( myStreamName ); long startTime = System.currentTimeMillis(); long endTime = startTime + ( 10 * 60 * 1000 ); while ( System.currentTimeMillis() < endTime ) { try { Thread.sleep(20 * 1000); } catch ( Exception e ) {} try { DescribeStreamResult describeStreamResponse = client.describeStream( describeStreamRequest ); String streamStatus = describeStreamResponse.getStreamDescription().getStreamStatus(); if ( streamStatus.equals( "ACTIVE" ) ) { break; } // // sleep for one second // try { Thread.sleep( 1000 ); } catch ( Exception e ) {} } catch ( ResourceNotFoundException e ) {} } if ( System.currentTimeMillis() >= endTime ) { throw new RuntimeException( "Stream " + myStreamName + " never went active" ); }

En esta página

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.