boto ElasticMapReduce estrangulamiento y limitación de velocidad

Me encontré con la limitación de frecuencia de Amazon EMR varias veces a través de la API boto con lo siguiente:

boto.exception.EmrResponseError: EmrResponseError: 400 Bad Request
<ErrorResponse xmlns="http://elasticmapreduce.amazonaws.com/doc/2009-03-31">
  <Error>
    <Type>Sender</Type>
    <Code>Throttling</Code>
    <Message>Rate exceeded</Message>
  </Error>
  <RequestId>69d74a63-7de3-11e0-aafc-2b540b1e5f42</RequestId>
</ErrorResponse>

La operación es una operación única que solicita el estado de un flujo de trabajo, por lo que no debería haber ninguna limitación de velocidad involucrada. ¿Alguien más se ha encontrado con este problema? Además, no parece haber mucha documentación sobre la limitación de velocidad / aceleración de EC2 y EMR ...

preguntado el 16 de mayo de 11 a las 17:05

1 Respuestas

Casi todas (si no todas) las API de AWS tienen una tasa limitada. Incluso leer datos supone una carga para sus servicios (algunos más que otros), por lo que se protegen al limitar la tasa de solicitudes que cada cuenta puede realizar. De acuerdo con los documentos de AWS, el enfoque recomendado para lidiar con una respuesta de aceleración es implementar un retroceso exponencial en su lógica de reintento.

contestado el 09 de mayo de 12 a las 23:05

Keith, ¿puedo saber qué es este "retroceso exponencial" y cómo se implementa? ¿Alguna implementación de muestra? Creo que tengo algo similar: stackoverflow.com/questions/23003190/… - Nicholas Key

Encontré la respuesta a mi pregunta sobre cómo obtener la lista completa de clústeres de EMR. - Nicholas Key

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.