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