Источник данных Spark Structured Streaming Kinesis

Можно ли использовать потоки Kinesis в качестве источника данных для структурированной потоковой передачи Spark? Я не могу найти ни одного доступного разъема.


person Sherif Hamdy    schedule 26.08.2018    source источник


Ответы (1)


У Qubole есть библиотека kinesis-sql именно для этого.

https://github.com/qubole/kinesis-sql

Затем вы можете использовать источник, аналогичный любому другому источнику структурированной потоковой передачи Spark:

val source = spark
   .readStream
   .format("kinesis")
   .option("streamName", "spark-source-stream")
   .option("endpointUrl", "https://kinesis.us-east-1.amazonaws.com")
   .option("awsAccessKeyId", [YOUR_AWS_ACCESS_KEY_ID])
   .option("awsSecretKey", [YOUR_AWS_SECRET_KEY])
   .option("startingPosition", "TRIM_HORIZON")
   .load
person bp2010    schedule 28.08.2018
comment
Это все еще не в производстве, но вы можете его использовать. Также я бы посоветовал использовать поток кинезиса через KCL, как только вы получите тип Dstreams [ArrayByte], преобразовать его в кадр данных и загрузить во временное представление или таблицу. Затем вы можете легко применять sql-запросы поверх этой таблицы. - person Aman Mundra; 11.01.2019
comment
@AmanMundra вы успешно пробовали подход kcl? У нас возникают проблемы с кавычкой, поскольку она постоянно записывает пустые файлы - person Vish; 22.02.2019