CData Python Connector for Azure Cosmos DB

Build 23.0.8839

From Petl

The connector can be used to create ETL applications and pipelines for CSV data in Python using Petl.

Install Required Modules

Install the Petl modules using the pip utility.
pip install petl

Connecting

After you import the modules, including the CData Python Connector for Azure Cosmos DB, you can use the connector's connect function to create a connection using a valid Azure Cosmos DB connection string. If you prefer not to use a direct connection, you can use a SQLAlchemy engine.
import petl as etl
import cdata.cosmosdb as mod
cnxn = mod.connect("AccountEndpoint=myAccountEndpoint;AccountKey=myAccountKey;")

Extract, Transform, and Load the Azure Cosmos DB Data

Create a SQL query string and store the query results in a DataFrame.
sql = "SELECT	City, CompanyName FROM [CData].[Entities].Customers "
table1 = etl.fromdb(cnxn,sql)

Loading Data

With the query results stored in a DataFrame, you can load your data into any supported Petl destination. The following example loads the data into a CSV file.
etl.tocsv(table1,'output.csv')

Modifying Data

Insert new rows into Azure Cosmos DB tables using Petl's appenddb function.
table1 = [['City','CompanyName'],['Jon Deere','Caterpillar']]
etl.appenddb(table1,cnxn,'[CData].[Entities].Customers')

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839