首页 > 解决方案 > 如何使用 MongoDB API 将 Azure Databricks 连接到 Cosmos DB?

问题描述

我使用 MongoDB API 创建了一个 azure CosmosDB 帐户。我需要将 CosmosDB(MongoDB API) 连接到 Azure Databricks 集群,以便从 cosmos 读取和写入数据。

如何将 Azure Databricks 群集连接到 CosmosDB 帐户?

标签: azureazure-cosmosdbdatabricksazure-cosmosdb-mongoapi

解决方案


这是我使用 Azure Databricks(5.2 ML Beta(包括 Apache Spark 2.4.0、Scala 2.11)和 MongoDB 连接器的 MongoDB API 连接到 CosmosDB 数据库的 pyspark 代码:org.mongodb.spark:mongo-spark-连接器_2.11:2.4.0):

from pyspark.sql import SparkSession

my_spark = SparkSession \
    .builder \
    .appName("myApp") \
    .getOrCreate()

df = my_spark.read.format("com.mongodb.spark.sql.DefaultSource") \
  .option("uri", CONNECTION_STRING) \
  .load()

使用如下所示的 CONNECTION_STRING:“mongodb://USERNAME:PASSWORD@testgp.documents.azure.com:10255/ DATABASE_NAME.COLLECTION_NAME ?ssl=true&replicaSet=globaldb”

我尝试了许多不同的其他选项(将数据库和集合名称添加为 SparkSession 的选项或配置),但均未成功。告诉我它是否适合你...


推荐阅读