Del pasaje proporcionado, extrae los consumidores compatibles con el streaming Spark. Sepáralos con una coma.
Spark Streaming utiliza la capacidad de programación rápida de Spark Core para realizar análisis de flujo. Ingesta datos en minilotes y realiza transformaciones RDD en esos minilotes de datos. Este diseño permite que el mismo conjunto de código de aplicación escrito para el análisis por lotes se utilice en el análisis por flujo, facilitando así la implementación de la arquitectura lambda Sin embargo, esta comodidad conlleva la penalización de una latencia igual a la duración del minilote. Otros motores de streaming de datos que procesan evento por evento en lugar de en minilotes son Storm y el componente de streaming de Flink. Spark Streaming tiene soporte incorporado para consumir desde Kafka, Flume, Twitter, ZeroMQ, Kinesis y sockets TCP/IP.

En Spark 2.x, también se proporciona una tecnología independiente basada en Conjuntos de Datos, llamada Streaming Estructurado, que tiene una interfaz de nivel superior para soportar el streaming.

Spark se puede implantar tanto en un centro de datos local tradicional como en la nube.
Kafka, Flume, Twitter, ZeroMQ, Kinesis, sockets TCP/IP