次の方法で共有


Azure Managed Redis でデータをインポートまたはエクスポートする

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

  • "エキスポート" - ブロック Blob に、Azure Managed Redis RDB のスナップショットをエクスポートすることができます。
  • "インポート" - ページ Blob またはブロック Blob から、Azure Managed Redis RDB のスナップショットをインポートすることができます。

インポートとエクスポートを使用して、異なる 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 の RDB ファイルは、Enterprise レベルのキャッシュが同じ Redis バージョン (Redis 7.2 など) を実行している場合、これらのレベルにインポートし直すことができます

要求事項

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

輸入

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

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

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

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

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

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

    Von Bedeutung

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

    インポート操作の進行状況を監視するには、Azure Portal からの通知を確認するか、アクティビティ ログのイベントを確認します。

    Von Bedeutung

    Azure Managed Redis では、アクティビティ ログはまだサポートされていません。

輸出

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

  1. キャッシュの現在の内容をストレージにエクスポートするには、Azure portal でキャッシュを参照し、 [リソース] メニューの [データのエクスポート] を選択します。 作業ウィンドウに [ストレージ コンテナーの選択] が表示されます。

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

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

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

    エクスポート操作の進行状況を監視するには、Azure Portal からの通知を確認するか、監査ログのイベントを確認します。

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

Import/Export の FAQ

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

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

インポート機能とエクスポート機能は、Azure Managed Redis のすべてのレベルで使用できます。

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

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

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

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

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

Von Bedeutung

ページ BLOB を使用する場合、Azure Managed Redis 以外の Redis サーバーからエクスポートされたデータを正常にインポートするには、ページ BLOB のサイズを 512 バイト境界に合わせる必要があります。 必要なバイト パディングを実行するサンプル コードについては、ページ BLOB をアップロードするためのサンプル コードに関するページを参照してください。

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

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

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

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

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

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

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

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

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

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 ストレージ アカウントの概要」を参照してください。 ストレージ アカウントの認証にアクセス キーを使っている場合、ストレージ アカウントにファイアウォールの例外が設定されていると、インポートとエクスポートのプロセスが失敗する傾向があります。

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

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

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

エクスポートを許可するには、ストレージ アカウント コンテナー Shared Access Signature (SAS) トークンにどのアクセス許可を付与する必要がありますか?

Azure Storage アカウントへのエクスポートが正常に機能するには、Shared Access Signature (SAS) トークンに次のアクセス許可が必要です。

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