Migrera data till ett Azure Cosmos DB Tabell-API konto
GÄLLER för:
tabell-API
Den här självstudien innehåller instruktioner om hur du importerar data för användning med Azure Cosmos DB Tabell-API. Om du har data som lagras i Azure Table Storage kan du använda datamigreringsverktyget eller AzCopy för att importera dina data till Azure Cosmos DB Tabell-API.
Den här självstudien omfattar följande uppgifter:
- Importera data med datamigreringsverktyget
- Importera data med AzCopy
Förutsättningar
Öka dataflödet: Hur lång tid datamigrering tar beror på hur stort dataflöde du ställer in för en enskild container eller en uppsättning containrar. Vi rekommenderar att du ökar dataflödet för större datamigreringar. När du har slutfört migreringen minskar du dataflödet för att spara kostnader.
Skapa Azure Cosmos DB resurser: Innan du börjar migrera data skapar du alla dina tabeller från Azure Portal. Om du migrerar till ett Azure Cosmos DB-konto som har dataflöde på databasnivå måste du ange en partitionsnyckel när du skapar de Azure Cosmos DB tabellerna.
Datamigreringsverktyg
Du kan använda datamigreringsverktyget (dt.exe) i Azure Cosmos DB för att importera dina befintliga Azure Table-Storage till ett Tabell-API konto.
Så här migrerar du tabelldata:
Ladda ned migreringsverktyget från GitHub.
Kör
dt.exemed hjälp av kommandoradsargumenten för ditt scenario.dt.exestöder kommandon i följande format:dt.exe [/<option>:<value>] /s:<source-name> [/s.<source-option>:<value>] /t:<target-name> [/t.<target-option>:<value>]
De alternativ som stöds för det här kommandot är:
- /ErrorLog: Valfri. Namnet på CSV-filen för att omdirigera dataöverföringsfel.
- /OverwriteErrorLog: Valfri. Skriva över felloggfilen.
- /ProgressUpdateInterval: Valfritt, standardvärdet är
00:00:01. Tidsintervallet för att uppdatera dataöverföringsförloppet på skärmen. - /ErrorDetails: Valfritt, standardvärdet är
None. Anger att detaljerad felinformation ska visas för följande fel:None,CriticalellerAll. - /EnableCosmosTableLog: Valfri. Dirigera loggen till ett Azure Cosmos DB-tabellkonto. Om detta anges används som standard anslutningssträngen för målkontot om
/CosmosTableLogConnectionStringinte också anges. Detta är användbart om flera instanser av verktyget körs samtidigt. - /CosmosTableLogConnectionString: Valfri. Anslutningssträngen för att dirigera loggen till ett Azure Cosmos DB-tabellkonto.
Kommandoradsinställningar för källan
Använd följande källalternativ när du definierar Azure Table Storage som källa för migreringen.
- /s:AzureTable: Läser data från Table Storage.
- /s.ConnectionString: Anslutningssträng för tabellslutpunkten. Du kan hämta detta från Azure Portal.
- /s.LocationMode: Valfritt, standardvärdet är
PrimaryOnly. Anger vilket platsläge som ska användas vid anslutning till Table Storage:PrimaryOnly,PrimaryThenSecondary, ,SecondaryOnlySecondaryThenPrimary. - /s.Table: Namnet på Azure-tabellen.
- /s.InternalFields: Ange till
Allför tabellmigrering eftersomRowKeyoch krävs förPartitionKeyimport. - /s.Filter: Valfri. Filtersträng som ska tillämpas.
- /s.Projection: Valfri. Lista över kolumner som ska väljas,
Om du vill hämta källanslutningssträngen när du importerar från Table Storage öppnar du Azure Portal. Välj Storage > kontoåtkomstnycklar > och kopiera anslutningssträngen.
Kommandoradsinställningar för målet
Använd följande målalternativ när du definierar Azure Cosmos DB Tabell-API som mål för migreringen.
- /t:TableAPIBulk: Laddar upp data till Azure Cosmos DB Tabell-API i batchar.
- /t.ConnectionString: Anslutningssträngen för tabellslutpunkten.
- /t.TableName: Anger namnet på tabellen som den ska skrivas till.
- /t.Overwrite: Valfritt, standardvärdet är
false. Anger om befintliga värden ska skrivas över. - /t.MaxInputBufferSize: Valfritt, standardvärdet är
1GB. Ungefärlig uppskattning av indatabyte som ska buffra innan data rensas till mottagare. - /t.Throughput: Valfritt, tjänstens standardvärden om inget annat anges. Anger dataflöde som ska konfigureras för tabellen.
- /t.MaxBatchSize: Valfritt, standardvärdet är
2MB. Ange batchstorleken i byte.
Exempelkommando: Källan är Table Storage
Här är ett kommandoradsexempel som visar hur du importerar från Table Storage till Tabell-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
Migrera data med AzCopy
Du kan också använda kommandoradsverktyget AzCopy för att migrera data från Table Storage till Azure Cosmos DB Tabell-API. Om du vill använda AzCopy exporterar du först dina data enligt beskrivningeni Exportera data från Table Storage . Sedan importerar du data till Azure Cosmos DB Tabell-API med följande kommando. Du kan också importera till Azure Table Storage.
Se följande exempel när du importerar till Azure Cosmos DB. Observera att /Dest värdet använder , inte cosmosdb core .
Exempel på importkommando:
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.cosmosdb.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace
Nästa steg
Lär dig hur du frågar efter data med hjälp av Azure Cosmos DB Tabell-API.