适用于 Core (SQL) API 的 Azure Cosmos DB Apache Spark 2 OLTP 连接器:发行说明和资源

适用于: SQL API

可以通过使用适用于 Core (SQL) 的 Azure Cosmos DB Apache Spark 2 OLTP 连接器加速大数据分析。 利用 Spark 连接器,可以对 Azure Cosmos DB 中存储的数据运行 Spark 作业。 支持批处理和流处理。

可以将连接器用于 Azure DatabricksAzure HDInsight,它们在 Azure 上提供 Spark 托管群集。 下表显示了支持的版本:

组件 版本
Apache Spark 2.4.x、2.3.x、2.2.x 和 2.1.x
Scala 2.11
Azure Databricks(运行时版本) 晚于 3.4

警告

此连接器支持 Azure Cosmos DB 的核心 (SQL) API。 对于适用于 MongoDB 的 Cosmos DB API,请使用适用于 Spark 的 MongoDB 连接器。 对于 Cosmos DB Cassandra API,请使用 Cassandra Spark 连接器

资源

资源 链接
SDK 下载 下载最新的 .jarMaven
API 文档 Spark 连接器参考
参与编写 SDK GitHub 上适用于 Apache Spark 的 Azure Cosmos DB 连接器
入门 使用 Apache Spark 到 Azure Cosmos DB 的连接器加速大数据分析
将 Apache Spark 结构化流式处理与 Apache Kafka 和 Azure Cosmos DB 配合使用

版本历史记录

3.3.0

新增功能

  • 添加了新的配置选项 changefeedstartfromdatetime,该选项可用于指定应处理更改源的开始时间。 有关详细信息,请参阅配置选项

3.2.0

关键 bug 修复

  • 修复了一个回归,该回归导致大型结果集(例如包含数百万行的结果集)的执行器内存消耗过多,并最终导致错误 java.lang.OutOfMemoryError: GC overhead limit exceeded

3.1.1

关键 bug 修复

  • 修复了一个流式检查点边缘案例,其中 ID 包含应用了 ChangeFeedMaxPagesPerBatch 配置的管道字符 (|)。

3.1.0

新增功能

  • 添加了在使用嵌套分区键时对批量更新的支持。
  • 添加了在写入 Azure Cosmos DB 过程中对 Decimal 和 Float 数据类型的支持。
  • 添加了对 Timestamp 类型使用 Long (Unix epoch) 作为值时对这些类型的支持。

3.0.8

关键 bug 修复

  • 修复了使用 WriteThroughputBudget 配置时发生的类型转换异常。

3.0.7

新增功能

  • 将批量失败的错误信息添加到异常和日志。

3.0.6

关键 bug 修复

  • 修复了流式处理检查点问题。

3.0.5

关键 bug 修复

  • 为减少干扰,修复了无意中留下的“错误”级别消息的日志级别。

3.0.4

关键 bug 修复

  • 修复了分区拆分期间结构化流中的 bug。 该 bug 可能会导致缺少某些更改源记录或检查点写入出现 NULL 异常。

3.0.3

关键 bug 修复

  • 修复了导致为 readStream 提供的自定义架构被忽略的 bug。

3.0.2

关键 bug 修复

  • 修复了一个回归(未改装的 JAR 包括所有已改装的依赖项),该回归导致生成时间增加了 50%。

3.0.1

关键 bug 修复

  • 修复了一个依赖项问题,该问题导致通过 TCP 的直接传输失败,并出现 RequestTimeoutException。

3.0.0

新增功能

  • 改进了连接管理和连接池以减少元数据调用数。

常见问题解答

如何收到即将停用的 SDK 的通知?

Azure 会在即将停用的 SDK 的支持结束之前提前 12 个月进行通知,以便协助平稳地转换到支持的 SDK。 我们会通过以下通信通道通知你:Azure 门户、Azure 更新以及与分配的服务管理员的直接通信。

在这 12 个月期间,我是否可以使用即将停用的 Azure Cosmos DB SDK 来创作应用程序?

可以,你可以在 12 个月的宽限期内使用即将停用的 Azure Cosmos DB SDK 创作、部署和修改应用程序。 建议在 12 个月的宽限期内根据相应情况迁移到支持的较新版本 Azure Cosmos DB SDK。

停用日期之后,使用不受支持的 Azure Cosmos DB SDK 的应用程序会发生什么情况?

停用日期之后,Azure Cosmos DB 将不再进行 bug 修复、添加新功能或为已停用的 SDK 版本提供支持。 如果不想升级,从已停用的 SDK 版本发送的请求将继续由 Azure Cosmos DB 服务提供服务。

哪些 SDK 版本将包含最新功能和更新?

新功能和更新将仅添加到最新的受支持的主要 SDK 版本的最新次要版本。 建议始终使用最新版本,以充分利用新功能、性能改进和 bug 修补程序。 如果使用的是未停用的旧版本 SDK,则对 Azure Cosmos DB 进行的请求仍然有效,但是你无法访问任何新功能。

如果无法在截止日期之前更新应用程序,该怎么办?

我们建议尽早升级到最新 SDK。 SDK 标记为要停用之后,你将有 12 个月的时间来更新应用程序。 如果无法在停用日期之前更新,从已停用的 SDK 版本发送的请求将继续由 Azure Cosmos DB 提供服务,因此正在运行的应用程序将继续运行。 但 Azure Cosmos DB 将不再进行 bug 修复、添加新功能或为已停用的 SDK 版本提供支持。

如果你有支持计划并需要技术支持,请创建支持工单以联系我们

后续步骤

了解有关 Azure Cosmos DB 的详细信息。

详细了解 Apache Spark