Spark原生版本是否支持以Kinesis Stream为数据源的Structured Streaming?
Spark对Kinesis Stream作为Structured Streaming数据源的支持
- Databricks版Spark原生支持将Kinesis Stream作为Structured Streaming的数据源,无需额外依赖即可直接使用。
- 非Databricks环境的开源Spark同样支持该特性,但需要手动引入官方提供的Kinesis集成依赖:
- 针对Spark 3.x系列,依赖坐标为
org.apache.spark:spark-streaming-kinesis-asl_2.12:3.x.x(请根据你的Scala版本调整后缀,例如Scala 2.11对应_2.11) - 引入依赖后,即可通过标准的Structured Streaming API读取Kinesis流,示例代码如下:
val kinesisDF = spark.readStream .format("kinesis") .option("streamName", "your-target-stream") .option("endpointUrl", "https://kinesis.<your-region>.amazonaws.com") .option("initialPosition", "latest") // 可选:latest/trim_horizon/at_timestamp .option("awsAccessKey", "your-aws-access-key") .option("awsSecretKey", "your-aws-secret-key") .load()
- 针对Spark 3.x系列,依赖坐标为
- 额外注意:使用前需确保运行Spark的环境具备访问目标Kinesis Stream的AWS IAM权限,凭证配置需符合AWS的安全规范。
内容的提问来源于stack exchange,提问作者user16798185
相关产品推荐
相关产品推荐

