Få åtkomst till Azure Cosmos DB för Apache Cassandra-data från Azure Databricks
GÄLLER FÖR: Kassandra
Den här artikeln beskriver hur du arbetar med Azure Cosmos DB för Apache Cassandra från Spark på Azure Databricks.
Förutsättningar
Läs grunderna för att ansluta till Azure Cosmos DB för Apache Cassandra
API för Cassandra-instanskonfiguration för Cassandra-anslutningsprogrammet:
Anslutningsappen för API för Cassandra kräver att Cassandra-anslutningsinformationen initieras som en del av Spark-kontexten. När du startar en Databricks-notebook-fil initieras spark-kontexten redan och det är inte lämpligt att stoppa och initiera den igen. En lösning är att lägga till API:et för Cassandra-instanskonfigurationen på klusternivå i kluster spark-konfigurationen. Det är engångsaktivitet per kluster. Lägg till följande kod i Spark-konfigurationen som ett blankstegsavgränsat nyckelvärdepar:
spark.cassandra.connection.host YOUR_COSMOSDB_ACCOUNT_NAME.cassandra.cosmosdb.azure.com spark.cassandra.connection.port 10350 spark.cassandra.connection.ssl.enabled true spark.cassandra.auth.username YOUR_COSMOSDB_ACCOUNT_NAME spark.cassandra.auth.password YOUR_COSMOSDB_KEY
Lägga till nödvändiga beroenden
Cassandra Spark-anslutningsprogram: – För att integrera Azure Cosmos DB för Apache Cassandra med Spark bör Cassandra-anslutningsappen kopplas till Azure Databricks-klustret. Så här kopplar du klustret:
- Granska Databricks-körningsversionen, Spark-versionen. Leta sedan reda på de maven-koordinater som är kompatibla med Cassandra Spark-anslutningsappen och koppla dem till klustret. Se artikeln "Ladda upp ett Maven-paket eller Spark-paket" för att koppla anslutningsbiblioteket till klustret. Vi rekommenderar att du väljer Databricks runtime version 10.4 LTS, som stöder Spark 3.2.1. Om du vill lägga till Apache Spark Cassandra Connector, ditt kluster, väljer du Bibliotek>Installera ny>Maven och lägger sedan till
com.datastax.spark:spark-cassandra-connector-assembly_2.12:3.2.0
i Maven-koordinater. Om du använder Spark 2.x rekommenderar vi en miljö med Spark version 2.4.5 med spark-anslutningsappen vid maven-koordinaternacom.datastax.spark:spark-cassandra-connector_2.11:2.4.3
.
- Granska Databricks-körningsversionen, Spark-versionen. Leta sedan reda på de maven-koordinater som är kompatibla med Cassandra Spark-anslutningsappen och koppla dem till klustret. Se artikeln "Ladda upp ett Maven-paket eller Spark-paket" för att koppla anslutningsbiblioteket till klustret. Vi rekommenderar att du väljer Databricks runtime version 10.4 LTS, som stöder Spark 3.2.1. Om du vill lägga till Apache Spark Cassandra Connector, ditt kluster, väljer du Bibliotek>Installera ny>Maven och lägger sedan till
Azure Cosmos DB för Apache Cassandra-specifikt bibliotek: – Om du använder Spark 2.x krävs en anpassad anslutningsfabrik för att konfigurera återförsöksprincipen från Cassandra Spark-anslutningsappen till Azure Cosmos DB för Apache Cassandra.
com.microsoft.azure.cosmosdb:azure-cosmos-cassandra-spark-helper:1.2.0
Lägg till maven-koordinaterna för att koppla biblioteket till klustret.
Kommentar
Om du använder Spark 3.x behöver du inte installera Azure Cosmos DB för Apache Cassandra-specifikt bibliotek som nämns ovan.
Varning
Spark 3-exemplen som visas i den här artikeln har testats med Spark version 3.2.1 och motsvarande Cassandra Spark Connector com.datastax.spark:spark-cassandra-connector-assembly_2.12:3.2.0. Senare versioner av Spark och/eller Cassandra-anslutningsappen kanske inte fungerar som förväntat.
Exempel på notebook-filer
En lista över Azure Databricks-exempelanteckningsböcker finns i GitHub-lagringsplatsen som du kan ladda ned. De här exemplen omfattar hur du ansluter till Azure Cosmos DB för Apache Cassandra från Spark och utför olika CRUD-åtgärder på data. Du kan också importera alla notebook-filer till databricks-klusterarbetsytan och köra den.
Åtkomst till Azure Cosmos DB för Apache Cassandra från Spark Scala-program
Spark-program som ska köras som automatiserade processer i Azure Databricks skickas till klustret med spark-submit) och schemaläggs för att köras via Azure Databricks-jobben.
Följande är länkar som hjälper dig att komma igång med att skapa Spark Scala-program för att interagera med Azure Cosmos DB för Apache Cassandra.
- Så här ansluter du till Azure Cosmos DB för Apache Cassandra från ett Spark Scala-program
- Så här kör du ett Spark Scala-program som ett automatiserat jobb på Azure Databricks
- Fullständig lista över kodexempel för att arbeta med API för Cassandra
Nästa steg
Kom igång med att skapa ett API för Cassandra-konto, databas och en tabell med hjälp av ett Java-program.