Migrieren Ihrer Daten zum Azure Cosmos DB-Konto für die Tabellen-APIMigrate your data to Azure Cosmos DB Table API account

In diesem Tutorial erfahren Sie, wie Sie Daten für die Verwendung mit der Table-API von Azure Cosmos DB importieren.This tutorial provides instructions on importing data for use with the Azure Cosmos DB Table API. Wenn Sie Daten in Azure Table Storage gespeichert haben, können Sie entweder das Datenmigrationstool oder AzCopy verwenden, um Ihre Daten für die Azure Cosmos DB-Tabellen-API zu importieren.If you have data stored in Azure Table storage, you can use either the Data Migration Tool or AzCopy to import your data to Azure Cosmos DB Table API. Wenn Sie Daten in einem Konto der Tabellen-API von Azure Cosmos DB (Vorschauversion) gespeichert haben, müssen Sie Ihre Daten mit dem Datenmigrationstool migrieren.If you have data stored in an Azure Cosmos DB Table API (preview) account, you must use the Data Migration tool to migrate your data.

Dieses Tutorial enthält die folgenden Aufgaben:This tutorial covers the following tasks:

  • Importieren von Daten mit dem DatenmigrationstoolImporting data with the Data Migration tool
  • Importieren von Daten mit AzCopyImporting data with AzCopy
  • Migrieren von der Tabellen-API (Vorschauversion) zur Tabellen-APIMigrating from Table API (preview) to Table API

VoraussetzungenPrerequisites

  • Erhöhen des Durchsatzes: Die Dauer der Datenmigration richtet sich nach dem Durchsatzwert, den Sie für einen einzelnen Container oder eine Gruppe von Containern einrichten.Increase throughput: The duration of your data migration depends on the amount of throughput you set up for an individual container or a set of containers. Achten Sie darauf, dass Sie den Durchsatz für größere Datenmigrationen erhöhen.Be sure to increase the throughput for larger data migrations. Nachdem die Migration abgeschlossen ist, können Sie den Durchsatz wieder verringern, um Kosten zu sparen.After you've completed the migration, decrease the throughput to save costs. Weitere Informationen zur Erhöhung des Durchsatzes im Azure-Portal finden Sie unter „Leistungsstufen und Tarife in Azure Cosmos DB“.For more information about increasing throughput in the Azure portal, see Performance levels and pricing tiers in Azure Cosmos DB.

  • Erstellen von Azure Cosmos DB-Ressourcen: Bevor Sie mit der Migration von Daten beginnen, erstellen Sie zunächst alle Ihre Tabellen im Azure-Portal.Create Azure Cosmos DB resources: Before you start the migrating data, pre-create all your tables from the Azure portal. Wenn Sie als Migrationsziel ein Azure Cosmos DB-Konto mit Durchsatz auf Datenbankebene verwenden, geben Sie beim Erstellen der Azure Cosmos DB-Tabellen einen Partitionsschlüssel an.If you are migrating to an Azure Cosmos DB account that has database level throughput, make sure to provide a partition key when creating the Azure Cosmos DB tables.

DatenmigrationstoolData Migration tool

Das Datenmigrationstool von Azure Cosmos DB für die Befehlszeile („dt.exe“) kann verwendet werden, um Ihre vorhandenen Azure Table Storage-Daten in ein Konto der allgemein verfügbaren Tabellen-API zu importieren oder um Daten aus einem Konto der Tabellen-API (Vorschauversion) zu einem Konto der allgemein verfügbaren Version der Tabellen-API zu migrieren.The command-line Azure Cosmos DB Data Migration tool (dt.exe) can be used to import your existing Azure Table storage data to a Table API GA account, or migrate data from a Table API (preview) account into a Table API GA account. Andere Quellen werden derzeit nicht unterstützt.Other sources are not currently supported. Das UI-basierte Datenmigrationstool (dtui.exe) wird derzeit für Tabellen-API-Konten nicht unterstützt.The UI based Data Migration tool (dtui.exe) is not currently supported for Table API accounts.

Um eine Migration von Tabellendaten durchzuführen, führen Sie die folgenden Aufgaben aus:To perform a migration of table data, complete the following tasks:

  1. Laden Sie das Migrationstool von GitHub herunter.Download the migration tool from GitHub.

  2. Führen Sie dt.exe mit den Befehlszeilenargumenten für Ihr Szenario aus.Run dt.exe using the command-line arguments for your scenario. dt.exe akzeptiert einen Befehl im folgenden Format:dt.exe takes a command in the following format:

     dt.exe [/<option>:<value>] /s:<source-name> [/s.<source-option>:<value>] /t:<target-name> [/t.<target-option>:<value>] 
    

Optionen für den Befehl:Options for the command are:

/ErrorLog: Optional. Name of the CSV file to redirect data transfer failures
/OverwriteErrorLog: Optional. Overwrite error log file
/ProgressUpdateInterval: Optional, default is 00:00:01. Time interval to refresh on-screen data transfer progress
/ErrorDetails: Optional, default is None. Specifies that detailed error information should be displayed for the following errors: None, Critical, All
/EnableCosmosTableLog: Optional. Direct the log to a cosmos table account. If set, this defaults to destination account connection string unless /CosmosTableLogConnectionString is also provided. This is useful if multiple instances of DT are being run simultaneously.
/CosmosTableLogConnectionString: Optional. ConnectionString to direct the log to a remote cosmos table account. 

Befehlszeilen-QuelleinstellungenCommand-line source settings

Verwenden Sie die folgenden Quelloptionen, wenn Sie Azure Table Storage oder die Vorschauversion der Tabellen-API als Quelle für die Migration festlegen.Use the following source options when defining Azure Table Storage or Table API preview as the source of the migration.

/s:AzureTable: Reads data from Azure Table storage
/s.ConnectionString: Connection string for the table endpoint. This can be retrieved from the Azure portal
/s.LocationMode: Optional, default is PrimaryOnly. Specifies which location mode to use when connecting to Azure Table storage: PrimaryOnly, PrimaryThenSecondary, SecondaryOnly, SecondaryThenPrimary
/s.Table: Name of the Azure Table
/s.InternalFields: Set to All for table migration as RowKey and PartitionKey are required for import.
/s.Filter: Optional. Filter string to apply
/s.Projection: Optional. List of columns to select

Um die Verbindungszeichenfolge für die Quelle beim Importieren aus Azure Table Storage abzurufen, öffnen Sie das Azure-Portal, klicken Sie auf Speicherkonten > Konto > Zugriffsschlüssel, und verwenden Sie dann die Schaltfläche „Kopieren“, um die Verbindungszeichenfolge zu kopieren.To retrieve the source connection string when importing from Azure Table storage, open the Azure portal and click Storage accounts > Account > Access keys, and then use the copy button to copy the Connection string.

Screenshot der Optionen für HBase-Quellen

Um die Verbindungszeichenfolge für die Quelle beim Importieren aus der Tabellen-API von Azure Cosmos DB abzurufen, öffnen Sie das Azure-Portal, klicken Sie auf Azure Cosmos DB > Konto > Verbindungszeichenfolge, und kopieren Sie dann die Verbindungszeichenfolge über die Schaltfläche „Kopieren“.To retrieve the source connection string when importing from an Azure Cosmos DB Table API (preview) account, open the Azure portal, click Azure Cosmos DB > Account > Connection String and use the copy button to copy the Connection String.

Screenshot der Optionen für HBase-Quellen

Beispielbefehl für Azure Table StorageSample Azure Table Storage command

Beispielbefehl für Azure Cosmos DB-Tabellen-API (Vorschauversion)Sample Azure Cosmos DB Table API (preview) command

Befehlszeilen-ZieleinstellungenCommand-line target settings

Verwenden Sie die folgenden Zieloptionen, wenn Sie die Tabellen-API von Azure Cosmos DB als Ziel für die Migration festlegen.Use the following target options when defining Azure Cosmos DB Table API as the target of the migration.

/t:TableAPIBulk: Uploads data into Azure CosmosDB Table in batches
/t.ConnectionString: Connection string for the table endpoint
/t.TableName: Specifies the name of the table to write to
/t.Overwrite: Optional, default is false. Specifies if existing values should be overwritten
/t.MaxInputBufferSize: Optional, default is 1GB. Approximate estimate of input bytes to buffer before flushing data to sink
/t.Throughput: Optional, service defaults if not specified. Specifies throughput to configure for table
/t.MaxBatchSize: Optional, default is 2MB. Specify the batch size in bytes

Beispiel für einen Befehl: Quelle ist Azure Table StorageSample command: Source is Azure Table storage

Hier finden Sie ein Beispiel für eine Befehlszeile zum Importieren aus Azure Table Storage in die Tabellen-API:Here is a command-line sample showing how to import from Azure Table storage to 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.cosmosdb.azure.com:443 /t.TableName:<Table name> /t.Overwrite

Beispiel für einen Befehl: Quelle ist Azure Cosmos DB-Tabellen-API (Vorschauversion)Sample command: Source is Azure Cosmos DB Table API (preview)

Hier finden Sie ein Beispiel für eine Befehlszeile zum Importieren aus der Vorschauversion der Tabellen-API in die allgemein verfügbare Version:Here is a command-line sample to import from Table API preview to Table API GA:

dt /s:AzureTable /s.ConnectionString:DefaultEndpointsProtocol=https;AccountName=<Table API preview account name>;AccountKey=<Table API preview account key>;TableEndpoint=https://<Account Name>.documents.azure.com; /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.cosmosdb.azure.com:443 /t.TableName:<Table name> /t.Overwrite

Migrieren von Daten mithilfe von AzCopyMigrate data by using AzCopy

Die andere Option zum Migrieren von Daten aus Azure Table Storage in die Table-API von Azure Cosmos DB ist das AzCopy-Befehlszeilenprogramm.Using the AzCopy command-line utility is the other option for migrating data from Azure Table storage to the Azure Cosmos DB Table API. Bei Verwendung von AzCopy exportieren Sie Ihre Daten zunächst wie in Exportieren von Daten aus Table Storage beschrieben und importieren sie anschließend wie in Tabellen-API von Azure Cosmos DB beschrieben in Azure Cosmos DB.To use AzCopy, you first export your data as described in Export data from Table storage, then import the data to Azure Cosmos DB as described in Azure Cosmos DB Table API.

Das folgende Beispiel zeigt das Importieren in Azure Cosmos DB.When performing the import into Azure Cosmos DB, refer to the following sample. Beachten Sie, dass für „/dest“ der Wert „cosmosdb“ und nicht „core“ verwendet wird.Note that the /Dest value uses cosmosdb, not core.

Beispiel für den import-Befehl:Example import command:

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.cosmosdb.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace

Migrieren von der Tabellen-API (Vorschauversion) zur Tabellen-APIMigrate from Table API (preview) to Table API

Warnung

Wenn Sie sofort von den Vorteilen der allgemein verfügbaren Tabellen profitieren möchten, migrieren Sie Ihre vorhandenen Tabellen aus der Vorschauversion wie in diesem Abschnitt beschrieben. Andernfalls führen wir in den kommenden Wochen automatische Migrationen für bestehende Kunden der Vorschauversion durch. Beachten Sie jedoch, dass für die automatisch migrierten Tabellen aus der Vorschauversion bestimmte Einschränkungen gelten, die neu erstellte Tabellen nicht betreffen.If you want to immediately enjoy the benefits of the generally available tables then please migrate your existing preview tables as specified in this section, otherwise we will be performing auto-migrations for existing preview customers in the coming weeks, note however that auto-migrated preview tables will have certain restrictions to them that newly created tables will not.

Die Tabellen-API ist jetzt allgemein verfügbar.The Table API is now generally available (GA). Es gibt Unterschiede zwischen Tabellen der Vorschauversion und der allgemein verfügbaren Version – bei Code, der in der Cloud ausgeführt wird, ebenso wie bei Code, der auf dem Client ausgeführt wird.There are differences between the preview and GA versions of tables both in the code that runs in the cloud as well as in code that runs at the client. Es wird daher nicht empfohlen, einen Client der SDK-Vorschauversion mit einem Konto der allgemein verfügbaren Tabellen-API zu kombinieren.Therefore it is not advised to try to mix a preview SDK client with a GA Table API account, and vice versa. Benutzer der Tabellen-API, die weiterhin ihre vorhandenen Tabellen, jedoch in einer Produktionsumgebung verwenden möchten, müssen von der Vorschauversion zur allgemein verfügbaren Umgebung migrieren oder auf die automatische Migration warten.Table API preview customers who want to continue to use their existing tables but in a production environment need to migrate from the preview to the GA environment, or wait for auto-migration. Wenn Sie auf die automatische Migration warten, werden Sie über die Einschränkungen bei den migrierten Tabellen benachrichtigt.If you wait for auto-migration, you will be notified of the restrictions on the migrated tables. Nach der Migration können Sie ohne Einschränkungen neue Tabellen in Ihrem vorhandenen Konto erstellen (nur für migrierte Tabellen gelten Einschränkungen).After migration, you will be able to create new tables on your existing account without restrictions (only migrated tables will have restrictions).

So migrieren Sie von der Tabellen-API (Vorschauversion) zur allgemein verfügbaren Tabellen-APITo migrate from Table API (preview) to the generally available Table API:

  1. Erstellen Sie ein neues Azure Cosmos DB-Konto, und legen Sie den API-Typ wie in Erstellen eines Datenbankkontos beschrieben auf Azure-Tabelle fest.Create a new Azure Cosmos DB account and set its API type to Azure Table as described in Create a database account.

  2. Ändern Sie die Clients, sodass diese die allgemein verfügbare Version der Tabellen-API SDKs verwenden.Change clients to use a GA release of the Table API SDKs.

  3. Migrieren Sie die Clientdaten mit dem Datenmigrationstool aus den Tabellen der Vorschauversion zu den Tabellen der allgemein verfügbaren Version.Migrate the client data from preview tables to GA tables by using the Data Migration tool. Anweisungen zum Verwenden des Datenmigrationstools für diesen Zweck finden Sie unter Datenmigrationstool.Instructions on using the data migration tool for this purpose are described in Data Migration tool.

Nächste SchritteNext steps

In diesem Tutorial haben Sie Folgendes gelernt:In this tutorial you learned how to:

  • Importieren von Daten mit dem DatenmigrationstoolImport data with the Data Migration tool
  • Importieren von Daten mit AzCopyImport data with AzCopy
  • Migrieren von der Tabellen-API (Vorschauversion) zur Tabellen-APIMigrate from Table API (preview) to Table API

Im nächsten Tutorial erfahren Sie, wie Sie Daten mithilfe der Table-API von Azure Cosmos DB abfragen.You can now proceed to the next tutorial and learn how to query data using the Azure Cosmos DB Table API.