Azure Synapse Link voor Azure Cosmos DB configureren en gebruiken
VAN TOEPASSING OP: NoSQL MongoDB Gremlin
Azure Synapse Link voor Azure Cosmos DB is een cloudeigen HTAP-mogelijkheid (Hybrid Transactional and Analytical Processing) waarmee u bijna realtime analyses kunt uitvoeren op operationele gegevens in Azure Cosmos DB. Synapse Link maakt een nauwe naadloze integratie tussen Azure Cosmos DB en Azure Synapse Analytics.
Belangrijk
Spiegeling in Microsoft Fabric is nu beschikbaar in preview voor NoSql-API. Deze functie biedt alle mogelijkheden van Azure Synapse Link met betere analytische prestaties, de mogelijkheid om uw gegevensdomein te combineren met Fabric OneLake en toegang tot uw gegevens in OneLake te openen met de Delta Parquet-indeling. Als u Azure Synapse Link overweegt, raden we u aan om spiegeling uit te voeren om de algehele geschiktheid voor uw organisatie te beoordelen. Klik hier om aan de slag te gaan met spiegelen.
Azure Synapse Link is beschikbaar voor Azure Cosmos DB SQL API of voor Azure Cosmos DB-API voor Mongo DB-accounts. En het is in preview voor Gremlin-API, met activering via CLI-opdrachten. Gebruik de volgende stappen om analytische query's uit te voeren met de Azure Synapse Link voor Azure Cosmos DB:
- Azure Synapse Link inschakelen voor uw Azure Cosmos DB-accounts
- Azure Synapse Link inschakelen voor uw containers
- Uw Azure Cosmos DB-database verbinden met een Azure Synapse-werkruimte
- Query's uitvoeren op analytische opslag met behulp van Azure Synapse Analytics
- Prestaties verbeteren met aanbevolen procedures
- Serverloze SQL-pool van Azure Synapse gebruiken om gegevens te analyseren en visualiseren in Power BI
U kunt ook de trainingsmodule controleren over het configureren van Azure Synapse Link voor Azure Cosmos DB.
Azure Synapse Link inschakelen voor Azure Cosmos DB-accounts
De eerste stap voor het gebruik van Synapse Link is het inschakelen voor uw Azure Cosmos DB-databaseaccount.
Notitie
Als u door de klant beheerde sleutels wilt gebruiken met Azure Synapse Link, moet u de beheerde identiteit van uw account configureren in uw Azure Key Vault-toegangsbeleid voordat u Synapse Link inschakelt voor uw account. Zie voor meer informatie hoe u door de klant beheerde sleutels configureert met behulp van het artikel beheerde identiteiten van Azure Cosmos DB-accounts.
Notitie
Als u Full Fidelity Schema voor API voor NoSQL-accounts wilt gebruiken, kunt u Azure Portal niet gebruiken om Synapse Link in te schakelen. Deze optie kan niet worden gewijzigd nadat Synapse Link is ingeschakeld in uw account en om deze in te stellen, moet u Azure CLI of PowerShell gebruiken. Raadpleeg de documentatie voor schemaweergave van analytische opslag voor meer informatie.
Notitie
U hebt de rol Inzender nodig om Synapse Link op accountniveau in te schakelen. En u hebt ten minste Operator nodig om Synapse Link in te schakelen in uw containers of verzamelingen.
Azure Portal
Meld u aan bij het Azure-portaal.
Maak een nieuw Azure Cosmos DB-account of selecteer een bestaand Azure Cosmos DB account.
Navigeer naar uw Azure Cosmos DB-account en open de Azure Synapse Link onder Integraties in het linkerdeelvenster.
Selecteer Inschakelen. Dit proces kan 1 tot 5 minuten duren.
Uw account is nu ingeschakeld voor het gebruik van Synapse Link. Bekijk vervolgens hoe u containers met analytische opslag maakt om automatisch te beginnen met het repliceren van uw operationele gegevens van de transactionele opslag naar de analytische opslag.
Notitie
Als u Synapse Link inschakelt, wordt de analytische opslag niet automatisch ingeschakeld. Zodra u Synapse Link voor het Cosmos DB-account hebt ingeschakeld, schakelt u analytische opslag in containers in om Synapse Link te gebruiken.
Notitie
U kunt Synapse Link ook inschakelen voor uw account met behulp van het deelvenster Power BI en Synapse Link in de sectie Integraties van het linkernavigatiemenu.
Opdrachtregelprogramma's
Schakel Synapse Link in uw Azure Cosmos DB-API voor NoSQL- of MongoDB-account in met behulp van Azure CLI of PowerShell.
Azure-CLI
Gebruik --enable-analytical-storage true
deze bewerkingen voor het maken of bijwerken van bewerkingen. U moet ook het type weergaveschema kiezen. Voor API voor NoSQL-accounts kunt u deze gebruiken --analytical-storage-schema-type
met de waarden FullFidelity
of WellDefined
. Gebruik altijd --analytical-storage-schema-type FullFidelity
voor API voor MongoDB-accounts.
- Een nieuw Azure Cosmos DB-account maken waarvoor Synapse Link is ingeschakeld
- Een bestaand Azure Cosmos DB-account bijwerken om Synapse Link in te schakelen
Gebruik Azure CLI om Synapse Link in te schakelen voor een Azure Synapse Link-account voor gremlin-API-account.
Synapse Link voor Gremlin-API is nu in preview. U kunt Synapse Link inschakelen in uw nieuwe of bestaande grafieken met behulp van Azure CLI. Gebruik de onderstaande CLI-opdracht om Synapse Link in te schakelen voor uw Gremlin-API-account:
az cosmosdb create --capabilities EnableGremlin --name MyCosmosDBGremlinDatabaseAccount --resource-group MyResourceGroup --enable-analytical-storage true
Vervang voor bestaande Gremlin-API-accounts door create
update
.
Powershell
Gebruik EnableAnalyticalStorage true
deze bewerkingen voor het maken of bijwerken van bewerkingen. U moet ook het type weergaveschema kiezen. Voor API voor NoSQL-accounts kunt u deze gebruiken --analytical-storage-schema-type
met de waarden FullFidelity
of WellDefined
. Gebruik altijd -AnalyticalStorageSchemaType FullFidelity
voor API voor MongoDB-accounts.
- Een nieuw Azure Cosmos DB-account maken waarvoor Synapse Link is ingeschakeld
- Een bestaand Azure Cosmos DB-account bijwerken om Synapse Link in te schakelen
Azure Resource Manager-sjabloon
Met deze Azure Resource Manager-sjabloon maakt u een Azure Cosmos DB-account met Synapse Link voor SQL API. Met deze sjabloon maakt u een Core-API-account (SQL) in één regio met een container die is geconfigureerd met analytische TTL en een optie voor het gebruik van handmatige of automatische schaalaanpassing van doorvoer. Als u deze sjabloon wilt implementeren, klikt u op Implementeren in Azure op de leesmij-pagina.
Azure Synapse Link inschakelen voor uw containers
De tweede stap is het inschakelen van Synapse Link voor uw containers of verzamelingen. Dit wordt bereikt door de analytical TTL
eigenschap in te -1
stellen op oneindige retentie of op een positief geheel getal, dat het aantal seconden is dat u in de analytische opslag wilt bewaren. Deze instelling kan later worden gewijzigd. Zie het artikel met ondersteunde waarden voor analytische TTL voor meer informatie.
Let op de volgende details bij het inschakelen van Azure Synapse Link in uw bestaande SQL API-containers:
- Dezelfde prestatie-isolatie van het proces voor automatische synchronisatie van analytische opslag is van toepassing op de eerste synchronisatie en er is geen invloed op de prestaties van uw OLTP-workload.
- De initiële synchronisatie van een container met de totale tijd van de analytische opslag varieert, afhankelijk van het gegevensvolume en de complexiteit van de documenten. Dit proces kan een paar seconden tot meerdere dagen duren. Gebruik Azure Portal om de migratievoortgang te controleren.
- De doorvoer van uw container of databaseaccount heeft ook invloed op de totale initiële synchronisatietijd. Hoewel RU/s niet worden gebruikt in deze migratie, heeft de totale beschikbare RU/s invloed op de prestaties van het proces. U kunt de beschikbare RU's van uw omgeving tijdelijk verhogen om het proces te versnellen.
- U kunt geen query's uitvoeren op analytische opslag van een bestaande container terwijl Synapse Link wordt ingeschakeld voor die container. Uw OLTP-werkbelasting wordt niet beïnvloed en u kunt gegevens normaal blijven lezen. Gegevens die na het begin van de eerste synchronisatie worden opgenomen, worden samengevoegd in de analytische opslag door het normale proces voor automatische synchronisatie van analytische opslag.
Notitie
Nu kunt u Synapse Link inschakelen voor uw bestaande MongoDB-API-verzamelingen, met behulp van Azure CLI of PowerShell.
Azure Portal
Nieuwe container
Meld u aan bij Azure Portal of De Azure Cosmos DB Explorer.
Navigeer naar uw Azure Cosmos DB-account en open het tabblad Data Explorer .
Selecteer Nieuwe container en voer een naam in voor uw database, container, partitiesleutel en doorvoergegevens. Schakel de optie Analytische opslag in. Nadat u de analytische opslag hebt ingeschakeld, wordt er een container gemaakt met
analytical TTL
de eigenschap ingesteld op de standaardwaarde -1 (oneindige retentie). Deze analytische opslag die alle historische versies van records bewaart en later kan worden gewijzigd.Als u Synapse Link eerder niet hebt ingeschakeld voor dit account, wordt u gevraagd dit te doen omdat het een vereiste is om een container met analytische opslag te maken. Als u hierom wordt gevraagd, selecteert u Synapse Link inschakelen. Dit proces kan 1 tot 5 minuten duren.
Selecteer OK om een azure Cosmos DB-container met analytische opslag te maken.
Nadat de container is gemaakt, controleert u of analytische opslag is ingeschakeld door te klikken op Instellingen, direct onder Documenten in Data Explorer en te controleren of de optie Time to Live van analytische opslag is ingeschakeld.
Bestaande container
Meld u aan bij Azure Portal of De Azure Cosmos DB Explorer.
Navigeer naar uw Azure Cosmos DB-account en open het tabblad Azure Synapse Link .
Selecteer de container in de sectie Azure Synapse Link inschakelen voor uw containers .
Nadat de container is ingeschakeld, controleert u of analytische opslag is ingeschakeld door te klikken op Instellingen, direct onder Documenten in Data Explorer en te controleren of de optie Time to Live voor analytische opslag is ingeschakeld.
Notitie
U kunt Synapse Link ook inschakelen voor uw account met behulp van het deelvenster Power BI en Synapse Link in de sectie Integraties van het linkernavigatiemenu.
Opdrachtregelprogramma's
Azure-CLI
Met de volgende opties schakelt u Synapse Link in een container in met behulp van Azure CLI door de eigenschap in te --analytical-storage-ttl
stellen.
- Een Azure Cosmos DB MongoDB-verzameling maken of bijwerken
- Een Azure Cosmos DB SQL API-container maken of bijwerken
Azure CLI gebruiken om Synapse Link in te schakelen voor Azure Synapse Link voor Gremlin API Graphs
Synapse Link voor Gremlin-API is nu in preview. U kunt Synapse Link inschakelen in uw nieuwe of bestaande grafieken met behulp van Azure CLI. Gebruik de ONDERSTAANDe CLI-opdracht om Synapse Link in te schakelen voor uw Gremlin API-grafieken:
az cosmosdb gremlin graph create --g MyResourceGroup --a MyCosmosDBGremlinDatabaseAccount --d MyGremlinDB --n MyGraph --analytical-storage-ttl –1
Vervang voor bestaande grafieken door create
update
.
Powershell
Met de volgende opties schakelt u Synapse Link in een container in met behulp van Azure CLI door de eigenschap in te -AnalyticalStorageTtl
stellen.
- Een Azure Cosmos DB MongoDB-verzameling maken of bijwerken
- Een Azure Cosmos DB SQL API-container maken of bijwerken
Azure Cosmos DB SDK's - alleen SQL-API
.NET SDK
Met de volgende .NET-code wordt een container met Synapse Link gemaakt door de AnalyticalStoreTimeToLiveInSeconds
eigenschap in te stellen. Als u een bestaande container wilt bijwerken, gebruikt u de Container.ReplaceContainerAsync
methode.
CosmosClient cosmosClient = new CosmosClient(
accountEndpoint: "<nosql-account-endpoint>",
tokenCredential: new DefaultAzureCredential()
);
// Create a container with a partition key, and analytical TTL configured to -1 (infinite retention)
ContainerProperties properties = new ContainerProperties()
{
Id = "myContainerId",
PartitionKeyPath = "/id",
AnalyticalStoreTimeToLiveInSeconds = -1,
};
await cosmosClient.GetDatabase("myDatabase").CreateContainerAsync(properties);
Java V4 SDK
Met de volgende Java-code wordt een container met Synapse Link gemaakt door de setAnalyticalStoreTimeToLiveInSeconds
eigenschap in te stellen. Als u een bestaande container wilt bijwerken, gebruikt u de container.replace
klasse.
// Create a container with a partition key and analytical TTL configured to -1 (infinite retention)
CosmosContainerProperties containerProperties = new CosmosContainerProperties("myContainer", "/myPartitionKey");
containerProperties.setAnalyticalStoreTimeToLiveInSeconds(-1);
container = database.createContainerIfNotExists(containerProperties, 400).block().getContainer();
Python V4 SDK
Met de volgende Python-code wordt een container met Synapse Link gemaakt door de analytical_storage_ttl
eigenschap in te stellen. Als u een bestaande container wilt bijwerken, gebruikt u de replace_container
methode.
# Client
client = cosmos_client.CosmosClient(HOST, KEY )
# Database client
try:
db = client.create_database(DATABASE)
except exceptions.CosmosResourceExistsError:
db = client.get_database_client(DATABASE)
# Creating the container with analytical store enabled
try:
container = db.create_container(
id=CONTAINER,
partition_key=PartitionKey(path='/id', kind='Hash'),analytical_storage_ttl=-1
)
properties = container.read()
print('Container with id \'{0}\' created'.format(container.id))
print('Partition Key - \'{0}\''.format(properties['partitionKey']))
except exceptions.CosmosResourceExistsError:
print('A container with already exists')
Verbinding maken met een Synapse-werkruimte
Gebruik de instructies in Verbinding maken met Azure Synapse Link voor toegang tot een Azure Cosmos DB-database vanuit Azure Synapse Analytics Studio met Azure Synapse Link.
Query's uitvoeren op analytische opslag met behulp van Azure Synapse Analytics
Analytische opslag opvragen met Apache Spark voor Azure Synapse Analytics
Gebruik de instructies in de analytische opslag van Azure Cosmos DB query's met behulp van Spark 3 over het uitvoeren van query's met Synapse Spark 3. Dit artikel bevat enkele voorbeelden van hoe u met de analytische opslag kunt werken vanuit Synapse-gebaren. Deze bewegingen zijn zichtbaar wanneer u met de rechtermuisknop op een container klikt. Met bewegingen kunt u snel code genereren en aanpassen aan uw behoeften. Ze zijn ook perfect voor het detecteren van gegevens met één klik.
Voor Spark 2-integratie gebruikt u de instructie in de analytische opslag van Query in Azure Cosmos DB met behulp van spark 2 .
Query's uitvoeren op de analytische opslag met behulp van een serverloze SQL-pool in Azure Synapse Analytics
Met een serverloze SQL-pool kunt u gegevens opvragen en analyseren in uw Azure Cosmos DB-containers die zijn ingeschakeld met Azure Synapse Link. U kunt gegevens in bijna realtime analyseren zonder dat dit van invloed is op de prestaties van uw transactionele workloads. Het biedt een vertrouwde T-SQL-syntaxis voor het opvragen van gegevens uit de analytische opslag en geïntegreerde connectiviteit met een breed scala aan BI- en ad-hoc queryhulpprogramma's via de T-SQL-interface. Zie het artikel Query analytical store met behulp van een serverloze SQL-pool voor meer informatie.
Serverloze SQL-pool gebruiken om gegevens te analyseren en te visualiseren in Power BI
U kunt de geïntegreerde BI-ervaring in de Azure Cosmos DB-portal gebruiken om BI-dashboards te bouwen met behulp van Synapse Link met slechts een paar klikken. Zie voor meer informatie hoe u BI-dashboards bouwt met behulp van Synapse Link. Met deze geïntegreerde ervaring maakt u eenvoudige T-SQL-weergaven in serverloze Synapse SQL-pools voor uw Azure Cosmos DB-containers. U kunt BI-dashboards maken via deze weergaven, waarmee in realtime query's worden uitgevoerd op uw Azure Cosmos DB-containers, met behulp van Direct Query, waarin de meest recente wijzigingen in uw gegevens worden weergegeven. Er is geen invloed op prestaties of kosten voor uw transactionele workloads en geen complexiteit van het beheren van ETL-pijplijnen.
Als u geavanceerde T-SQL-weergaven wilt gebruiken met joins in uw containers of Power BI-dashboards wilt bouwen in de importmodus, raadpleegt u Serverloze SQL-pool gebruiken om Azure Cosmos DB-gegevens te analyseren met Synapse Link.
Prestaties verbeteren met aanbevolen procedures
Aangepaste partitionering
Met aangepaste partitionering kunt u analytische opslaggegevens partitioneren op velden die vaak worden gebruikt als filters in analytische query's, wat resulteert in verbeterde queryprestaties. Zie de inleiding tot aangepaste partitionering en het configureren van artikelen over aangepaste partitionering voor meer informatie.
Aanbevolen procedures voor Synapse SQL Serverless voor Azure Synapse Link voor Cosmos DB
Gebruik deze verplichte aanbevolen procedures voor uw serverloze SQL-query's.
Aan de slag met Azure Synapse Link - Voorbeelden
U vindt voorbeelden om aan de slag te gaan met Azure Synapse Link op GitHub. Deze laten end-to-end-oplossingen zien met IoT- en retailscenario's. U kunt ook de voorbeelden vinden die overeenkomen met Azure Cosmos DB voor MongoDB in dezelfde opslagplaats onder de MongoDB-map .
Volgende stappen
Zie de volgende documenten voor meer informatie:
- Raadpleeg de trainingsmodule voor het configureren van Azure Synapse Link voor Azure Cosmos DB.
- Overzicht van analytische opslag in Azure Cosmos DB.
- Veelgestelde vragen over Synapse Link voor Azure Cosmos DB.
- Apache Spark in Azure Synapse Analytics.
- Ondersteuning voor runtime voor serverloze SQL-pools in Azure Synapse Analytics.