次の方法で共有


Azure Managed Redis でのデータのインポートとエクスポート

データ管理操作として、Azure の Managed Redis のインポートおよびエクスポート機能を使用します。 Redis データベース (RDB) スナップショットを使用して、キャッシュ インスタンスにデータをインポートするか、キャッシュ インスタンスからデータをエクスポートします。 スナップショットは、Azure Storage アカウントの BLOB を使用してインポートまたはエクスポートされます。

  • Export - Azure Managed Redis RDB スナップショットをブロック BLOB にエクスポートできます。
  • Import - ページ BLOB またはブロック BLOB からAzure Managed Redis RDB スナップショットをインポートできます。

Import/Export を使用して、異なる Azure Managed Redis インスタンス間で移行したり、使用する前にキャッシュにデータを設定したりできます。 古いAzure Cache for Redis インスタンスからデータをエクスポートして、Azure Managed Redis インスタンスにデータを移行することもできます。

この記事では、Azure Managed Redis を使用してデータをインポートおよびエクスポートするためのガイドと、よく寄せられる質問に対する回答を示します。

利用可能範囲

レベル メモリ最適化、バランス、コンピューティング最適化 フラッシュ最適化
在庫有り イエス イエス

互換性

  • データは、.gz ブロック BLOB としてエクスポートされます。
  • Redis 7.2 を実行しているインスタンスでは、RDB バージョン 11 以下がサポートされています。
  • 新しいバージョンの Redis (Redis 7.2 など) からエクスポートされたバックアップを、古いバージョンの Redis (Redis 6.0 など) にインポートすることはできません
  • Premium 層Azure Cache for Redisインスタンスからの RDB ファイルは、Azure Managed Redis にインポートできますが、その逆はインポートできません。
  • Enterprise または Enterprise Flash 層の RDB ファイルは、Azure Cache for Redis インスタンスAzure Managed Redis にインポートできます。 Enterprise 層キャッシュが同じ Redis バージョン (Redis 7.2 など) を実行している場合、Azure Managed Redis の RDB ファイルをこれらの層にインポートし直すことができます

要求事項

  • インポート操作を開始する前に、Redis Database (RDB) ファイルが、Azure Managed Redis インスタンスと同じリージョンとサブスクリプションで、Azure storageのページ BLOB またはブロック BLOB にアップロードされていることを確認します。 認証にマネージド ID を使用している場合は、storage アカウントが別のサブスクリプションに存在する可能性があります。 詳細については、Azure Blob storage を使ってみようを参照してください。 エクスポート機能を使用して RDB ファイルを エクスポート した場合、RDB ファイルは既にブロック BLOB に格納されており、インポートの準備ができています。

輸入

Import を使用して、Redis と互換性のある RDB ファイルを、任意のクラウドまたは環境で稼働している任意の Redis サーバー (Linux や Windows のほか、アマゾン ウェブ サービスをはじめとする各種クラウド プロバイダーで稼働している Redis など) から取り込みます。 データをインポートすると、あらかじめデータが入力されたキャッシュを簡単に作成できます。 インポート プロセス中に、Azure Managed Redis は、Azure storageからメモリに RDB ファイルを読み込み、キーをキャッシュに挿入します。

  1. 1つ以上のエクスポートされたキャッシュ BLOB をインポートするには、Azure portal でキャッシュに移動し、リソース メニューからデータのインポートを選択します。 作業ウィンドウに [BLOB の選択] が表示されます。ここで RDB ファイルを見つけることができます。

  2. Blob を選択し、インポートするデータを含むストレージ アカウントを選択します。

  3. インポートするデータが含まれているコンテナーを選択します。

  4. BLOB 名の左側の領域を選択し、インポートする 1 つ以上の BLOB、[選択] の順に選択します。

  5. [インポート] を選択してインポート処理を開始します。

    Von Bedeutung

    インポート処理中は、キャッシュ クライアントからキャッシュにアクセスすることはできません。また、キャッシュ内の既存データはすべて削除されます。

    インポート操作の進行状況は、Azure portalからの通知に従うか、activity ログでイベントを表示することで監視できます。

    Von Bedeutung

    アクティビティ ログのサポートは、Azure Managed Redis ではまだ利用できません。

輸出

エクスポートを使用すると、Azure Managed Redis に格納されているデータをエクスポートすることができます。 この機能を使用すると、1 つのAzure Managed Redis インスタンスから別の Redis サーバーにデータを移動できます。 エクスポート プロセス中に、Azure Managed Redis サーバー インスタンスをホストする一時ファイルが VM 上に作成されます。 その後、選択したstorage アカウントにファイルがアップロードされます。 エクスポート処理が完了したら、処理の成否にかかわらず、この一時ファイルは削除されます。

  1. キャッシュの現在の内容をストレージにエクスポートするには、Azure ポータルでキャッシュに移動し、リソース メニューからデータをエクスポートを選択します。 作業ウィンドウに Choose Storage Container が表示されます。

  2. [Choose Storage Container を選択し>使用可能なstorage アカウントの一覧を表示します。 目的のstorage アカウントを選択します。 storage アカウントは、キャッシュと同じリージョンに存在する必要があります。 認証にマネージド ID を使用している場合は、storage アカウントが別のサブスクリプションに存在する可能性があります。 それ以外の場合、storage アカウントはキャッシュと同じサブスクリプションに存在する必要があります。

  3. エクスポートを保持するstorage コンテナーを選択し、Selectします。 新しいコンテナーが必要な場合は、まず [コンテナーの追加] を選んで新しいコンテナーを追加し、リストからそれを選びます。

  4. BLOB 名のプレフィックスを入力し、[エクスポート] を選択して、エクスポート処理を開始します。 BLOB 名のプレフィックスは、このエクスポート操作によって生成されるファイル名のプレフィックスとして使用されます。

    エクスポート操作の進行状況は、Azure portalからの通知に従うか、audit ログでイベントを表示することで監視できます。

    エクスポート処理中でも、キャッシュは使用可能な状態のままです。

Import/Export の FAQ

このセクションでは、Import/Export 機能についてよく寄せられる質問を掲載しています。

インポート/エクスポートをサポートするレベルはどれですか?

import および export 機能は、Azure Managed Redis のすべてのレベルで使用できます。

どの Redis サーバーからでもデータをインポートできるのでしょうか?

はい。Azure Managed Redis インスタンスから、または任意のクラウドまたは環境で実行されている任意の Redis サーバーからエクスポートされたデータをインポートできます。 この環境には、Linux や Windows のほか、アマゾン ウェブ サービスなどのクラウド プロバイダーが含まれます。 このデータをインポートするには、必要な Redis サーバーから Azure Storage アカウントのページまたはブロック BLOB に RDB ファイルをアップロードします。 次に、Azure Managed Redis インスタンスにインポートします。

たとえば、次のようなことをしたいかもしれません:

  1. 運用キャッシュからデータをエクスポートします。

  2. その後、テストや移行のためのステージング環境の一部として使用されるキャッシュにインポートします。

Von Bedeutung

ページ BLOB を使用するときに、Azure Managed Redis 以外の Redis サーバーからエクスポートされたデータを正常にインポートするには、ページ BLOB のサイズを 512 バイトの境界に配置する必要があります。 必要なバイト埋め込みを実行するサンプル コードについては、「Sample ページ BLOB のアップロードを参照してください。

RDB のどのバージョンをインポートできますか?

インポートで使用されるサポートされている RDB バージョンの詳細については、互換性に関するセクションをご覧ください。

Import/Export 操作中にキャッシュを使うことはできますか?

  • エクスポート - キャッシュは使用可能な状態のままです。エクスポート操作中もキャッシュの使用を続行できます。
  • インポート - インポート処理が開始されると、キャッシュは使用できなくなります。インポート処理が終了すると、キャッシュは使用可能になります。

Import/Export と Redis の永続化にはどのような違いがありますか?

Azure Managed Redis persistence 機能は、主にデータ持続性機能です。 一方、インポート/エクスポート機能は、特定の時点の復旧のために定期的なデータ バックアップを作成する方法として設計されています。

永続化を構成すると、構成可能なバックアップ頻度に基づいて、キャッシュはデータのスナップショットをディスクに保持します。 この永続化ファイルには、ユーザーがアクセスすることはできません。 プライマリ キャッシュとレプリカ キャッシュの両方が無効になるような致命的なイベントが発生した場合、最新のスナップショットを使用してキャッシュ データが自動的に復元されます。

データ永続化は、ディザスター リカバリー用に設計されています。 これは、特定の時点の復旧メカニズムとして意図されていません。

特定の時点の復旧のために定期的なデータ バックアップを作成する場合は、インポート/エクスポート機能を使用することをお勧めします。 詳細については、「 Managed Redis のデータ永続化を構成する方法Azureを参照してください。

PowerShell、CLI、またはその他の管理クライアントを使って Import/Export を自動化することはできますか?

はい。次の手順を実行してください。

Import/Export 操作中にタイムアウト エラーが発生しました。 これはどういうことですか?

[データのインポート] または [データのエクスポート] に、操作を開始しないまま留まっている時間が 15 分を超えると、次の例のようなエラー メッセージのエラーが発生します。

The request to import data into cache 'contoso55' failed with status 'error' and error 'One of the SAS URIs provided could not be used for the following reason: The SAS token end time (se) must be at least 1 hour from now and the start time (st), if given, must be at least 15 minutes in the past.

このエラーを解決するには、インポート操作またはエクスポート操作を 15 分以内に開始してください。

データをAzure Blob Storageにエクスポートするときにエラーが発生しました。 何が起きましたか?

エクスポートは、ブロック BLOB として格納されている RDB ファイルでのみ機能します。 他の BLOB の種類は現在サポートされていません。 詳細については、「Azure storage アカウントの概要を参照してください。 access キーを使用してstorage アカウントを認証している場合、storage アカウントにファイアウォール例外があると、インポート/エクスポート プロセスが失敗する傾向があります。

いいえ。storage アカウントのこれらの設定はサポートされていません。

キャッシュとは異なるサブスクリプションのstorage アカウントからデータをインポートまたはエクスポートできますか?

キャッシュとは異なるサブスクリプションのstorage アカウントからデータをインポートおよびエクスポートできますが、認証方法としてマネージド ID を使用する必要があります。 インポートまたはエクスポートを構成するときに、storage アカウントを保持している選択したサブスクリプションを選択する必要があります。

エクスポートを許可するために、storage アカウント コンテナーの共有アクセス署名 (SAS) トークンに付与する必要があるアクセス許可はどれですか?

Azure storage アカウントにエクスポートして正常に動作させるには、共有access署名 (SAS) トークンに次のアクセス許可が必要です。

  • read
  • add
  • create
  • write
  • delete
  • tag
  • move

インポートを許可するために、ストレージ アカウント コンテナーの共有アクセス署名 (SAS) トークンに付与する必要があるアクセス許可はどれですか?

インポート操作が成功するためには、ストレージ コンテナーの共有アクセス署名 (SAS) トークンに次のアクセス許可があります。

  • read
  • add
  • create
  • list