Uw gegevens migreren naar een Azure Cosmos DB Table-API account
VAN TOEPASSING OP:
Table-API
In deze zelfstudie vindt u instructies voor het importeren van gegevens voor gebruik met de Azure Cosmos DB Table-API. Als u gegevens hebt opgeslagen in Azure Table Storage, kunt u het hulpprogramma voor gegevensmigratie of AzCopy gebruiken om uw gegevens te importeren in de Azure Cosmos DB Table-API.
Deze zelfstudie bestaat uit de volgende taken:
- Gegevens importeren met het hulpprogramma voor gegevensmigratie
- Gegevens importeren met AzCopy
Vereisten
Doorvoer vergroten: de duur van de gegevensmigratie is afhankelijk van de hoeveelheid doorvoer die u voor een afzonderlijke container of een reeks containers instelt. Verhoog de doorvoer voor grotere gegevensmigraties. Nadat u de migratie hebt voltooid, verlaagt u de doorvoer om kosten te besparen.
Maak Azure Cosmos DB resources: Voordat u begint met het migreren van de gegevens, moet u al uw tabellen maken op Azure Portal. Als u migreert naar een Azure Cosmos DB-account met doorvoer op databaseniveau, moet u een partitiesleutel verstrekken wanneer u de Azure Cosmos DB maakt.
Hulpprogramma voor gegevensmigratie
U kunt het opdrachtregelprogramma voor gegevensmigratie (dt.exe) in Azure Cosmos DB gebruiken om uw bestaande Azure Table Storage-gegevens te importeren in een Table-API-account.
Tabelgegevens migreren:
Download het migratieprogramma op GitHub.
Voer
dt.exeuit met behulp van de opdrachtregelargumenten voor uw scenario.dt.exewordt uitgevoerd met een opdracht in de volgende indeling:dt.exe [/<option>:<value>] /s:<source-name> [/s.<source-option>:<value>] /t:<target-name> [/t.<target-option>:<value>]
De ondersteunde opties voor deze opdracht zijn:
- /ErrorLog: Optioneel. Naam van het CSV-bestand om fouten bij de gegevensoverdracht om te leiden.
- /OverwriteErrorLog: Optioneel. Overschrijf het foutenlogboekbestand.
- /ProgressUpdateInterval: Optioneel, standaard is
00:00:01. Het tijdsinterval voor het vernieuwen van de voortgang van de gegevensoverdracht op het scherm. - /ErrorDetails: Optioneel, standaard is
None. Hiermee geeft u op dat gedetailleerde foutgegevens moeten worden weergegeven voor de volgende fouten:NoneCritical, ofAll. - /EnableCosmosTableLog: Optioneel. Het logboek om te leiden naar een Azure Cosmos DB tabelaccount. Als deze is ingesteld, wordt dit standaard ingesteld op het doelaccount connection string tenzij
/CosmosTableLogConnectionStringook wordt opgegeven. Dit is handig als er meerdere exemplaren van het hulpprogramma tegelijkertijd worden uitgevoerd. - /CosmosTableLogConnectionString: Optioneel. De connection string om het logboek door te sturen naar een extern Azure Cosmos DB tabelaccount.
Broninstellingen voor de opdrachtregel
Gebruik de volgende bronopties wanneer u Azure Table Storage als de bron van de migratie.
- /s:AzureTable: Leest gegevens uit tabel Storage.
- /s.ConnectionString: Verbindingsreeks voor het eindpunt van de tabel. U kunt deze ophalen uit de Azure Portal.
- /s.LocationMode: Optioneel, standaard is
PrimaryOnly. Hiermee geeft u op welke locatiemodus moet worden gebruikt om verbinding te maken met Table Storage:PrimaryOnlyPrimaryThenSecondary, , ,SecondaryOnlySecondaryThenPrimary. - /s.Table: Naam van de Azure-tabel.
- /s.InternalFields: Stel in
Allop voor tabelmigratie, omdatRowKeyen vereist zijn voorPartitionKeyimporteren. - /s.Filter: Optioneel. Filterreeks die moet worden toegepast.
- /s.Projection: Optioneel. Lijst met kolommen die moeten worden geselecteerd,
Als u de broncode wilt connection string u importeert uit Table Storage, opent u de Azure Portal. Selecteer Storage > accounttoegangssleutels > en kopieer de verbindingsreeks.
Doelinstellingen voor opdrachtregel
Gebruik de volgende doelopties wanneer u de Azure Cosmos DB Table-API definieert als het doel van de migratie.
- /t:TableAPIBulk: Uploadt gegevens in de Azure Cosmos DB Table-API in batches.
- /t.ConnectionString: De connection string voor het tabel-eindpunt.
- /t.TableName: Hiermee geeft u de naam op van de tabel waar u naar wilt schrijven.
- /t.Overwrite: Optioneel, standaard is
false. Hiermee geeft u op of bestaande waarden moeten worden overschreven. - /t.MaxInputBufferSize: Optioneel, standaard is
1GB. Geschatte schatting van invoer-bytes die moeten worden gebufferd voordat gegevens naar sink worden leeggetrokken. - /t.Throughput: Optioneel, standaardinstellingen van service als niet opgegeven. Hiermee geeft u de doorvoer op die moet worden geconfigureerd voor de tabel.
- /t.MaxBatchSize: Optioneel, standaard is
2MB. Geef de batchgrootte in bytes op.
Voorbeeldopdracht: Bron is Tabel Storage
Hier is een voorbeeld van een opdrachtregel die laat zien hoe u vanuit Tabelgegevens Storage naar de Table-API:
dt /s:AzureTable /s.ConnectionString:DefaultEndpointsProtocol=https;AccountName=<Azure Table storage account name>;AccountKey=<Account Key>;EndpointSuffix=core.windows.net /s.Table:<Table name> /t:TableAPIBulk /t.ConnectionString:DefaultEndpointsProtocol=https;AccountName=<Azure Cosmos DB account name>;AccountKey=<Azure Cosmos DB account key>;TableEndpoint=https://<Account name>.table.cosmos.azure.com:443 /t.TableName:<Table name> /t.Overwrite
Gegevens migreren met AzCopy
U kunt ook het AzCopy-opdrachtregelprogramma gebruiken om gegevens te migreren van Table Storage naar de Azure Cosmos DB Table-API. Als u AzCopy wilt gebruiken, exporteert u eerst uw gegevens zoals beschreven in Gegevens exporteren uit tabel Storage. Vervolgens importeert u de gegevens naar Azure Cosmos DB Table-API met de volgende opdracht. U kunt ook importeren in Azure Table Storage.
Raadpleeg het volgende voorbeeld wanneer u importeert in Azure Cosmos DB. Houd er rekening mee /Dest dat voor de waarde wordt cosmosdb gebruikt, niet core .
Voorbeeld van opdracht voor importeren:
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.cosmosdb.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace
Volgende stappen
Meer informatie over het uitvoeren van query's op gegevens met behulp van Azure Cosmos DB Table-API.