Ingest Cosmos DB for NoSQL as JSON
Copy data from Azure Cosmos DB from NoSQL to JSON format in Azure Data Lake Storage Gen2.
Category: Ingest to Lakehouse | Tags: Ingestion
Execute query '<<ExtractQuery>>' against Azure SQL database '<<DataLakeSystemFolder>>' and ingest as json into Data Lake location 'raw/<<DataLakeSystemFolder>>/<<DataLakeDatasetFolder>>'
To use this activity within the API, use an ActivityCode of COSMOS-NOSQL-ADLS.
Available Connections
SourceConnection:
TargetConnection:
Example JSON
An example of what the Task Config would look like for a task using this activity. Some of these variables would be set at the group level to avoid duplication between tasks.
{
"SourceConnection": "MY-SOURCE-CONN",
"DatabaseContainer": "",
"ExtractQuery": "",
"DataLakeSystemFolder": "my_folder",
"DataLakeDatasetFolder": "data",
"TargetConnection": "MY-TARGET-CONN"
}
Variable Reference
The following variables are supported:
DatabaseContainer(Required) - Name of the container (collection) within the Azure Cosmos DB database.DataLakeDatasetFolder(Required) - Name of the folder in the Data Lake containing the dataset.DataLakeSystemFolder(Required) - Name of the parent (System) folder in the Data Lake containing the dataset.DIUsToUseForCopyActivity(Optional) - Specifies the powerfulness of the copy executor. Value can be between 2 and 256. When left at default, the Data Factory dynamically applies the optimal DIU setting based on the source-sink pair and data pattern.ExtractControlQuery(Optional) - For incremental loads only, a SQL query to get a 'high-water' mark for extract control. For instance, this could be the maximum value of an modified_date or an identity column. NOTE: The column returned must be aliased as ExtractControl e.g. select max(modified_date) as ExtractControl from some_table.Show more details
**Extract Control Query **
For incremental data extraction, the SQL statement that will be executed on the source database to extract the high-water mark for this data prior to extracting. This could be the maximum value of a modified date or an identity column and will be used in the next data extraction.
NOTE: The column returned must be aliased as ExtractControl. For example:
select max(modified_date) as ExtractControl
from some_table;ExtractControlVariableName(Optional) - For incremental loads only, the name to assign the Extract Control variable in State Config for the ExtractControl value derived from the Extract Control Query above.ExtractControlVariableSeedValue(Optional) - The initial value to set for the Extract Control variable in State Config - this will have no impact beyond the original seeding of the Extract Control variable in State Config.ExtractQuery(Required) - SQL query to extract data from the source database.IsFederated(Optional) - Makes task available to other Insight Factories within this organisation.Links(Optional) - NULLMaximumNumberOfAttemptsAllowed(Optional) - The total number of times the running of this Task can be attempted.MinutesToWaitBeforeNextAttempt(Optional) - If a Task run fails, the number of minutes to wait before re-attempting the Task.RetainHistory(Optional) - Should the raw files be saved to the History Container to preserve them?Show more details
**Retain History? ** By default, this flag is set to the value assigned in the Configuration item SaveRawFilesToHistory (signalled by the double triangle brackets around the Configuration item name e.g. <<SaveRawFilesToHistory>>). This default behaviour can be overridden here.
SourceConnection(Required) - Source connection to use.TargetConnection(Optional) - Target connection to use.