Azure Blob Storage の変更フィードのサポートChange feed support in Azure Blob Storage

変更フィードの目的は、ストレージ アカウント内の BLOB と BLOB メタデータに対して行われるすべての変更のトランザクション ログを提供することです。The purpose of the change feed is to provide transaction logs of all the changes that occur to the blobs and the blob metadata in your storage account. 変更フィードでは、これらの変更の 順序指定済み保証済み永続不変読み取り専用 ログが提供されます。The change feed provides ordered, guaranteed, durable, immutable, read-only log of these changes. クライアント アプリケーションでは、ストリーミングまたはバッチ モードで、いつでもこれらのログを読み取ることができます。Client applications can read these logs at any time, either in streaming or in batch mode. 変更フィードを使用すると、低コストで、BLOB ストレージ アカウントで発生する変更イベントを処理する効率的でスケーラブルなソリューションを構築できます。The change feed enables you to build efficient and scalable solutions that process change events that occur in your Blob Storage account at a low cost.

注意

この機能は、階層型名前空間 (Azure Data Lake Storage Gen2) を持つアカウントではまだサポートされていません。This feature is not yet supported in accounts that have a hierarchical namespace (Azure Data Lake Storage Gen2). 詳細については、「Azure Data Lake Storage Gen2 で使用できる BLOB ストレージ機能」を参照してください。To learn more, see Blob storage features available in Azure Data Lake Storage Gen2.

変更フィードのしくみHow the change feed works

変更フィードは、Standard BLOB の料金コストで、ストレージ アカウントの特別なコンテナーに BLOB として格納されます。The change feed is stored as blobs in a special container in your storage account at standard blob pricing cost. これらのファイルの保有期間は、要件に基づいて制御できます (現在のリリースの条件を参照)。You can control the retention period of these files based on your requirements (See the conditions of the current release). 変更イベントは、Apache Avro 形式仕様のレコードとして変更フィードに追加されます。これは、インライン スキーマを使用して豊富なデータ構造を提供するコンパクトで高速なバイナリ形式です。Change events are appended to the change feed as records in the Apache Avro format specification: a compact, fast, binary format that provides rich data structures with inline schema. この形式は Hadoop エコシステム、Stream Analytics、Azure Data Factory で幅広く使用されています。This format is widely used in the Hadoop ecosystem, Stream Analytics, and Azure Data Factory.

これらのログは、非同期的、段階的、または完全に処理できます。You can process these logs asynchronously, incrementally or in-full. 任意の数のクライアント アプリケーションで、個別に変更フィードを並列で、および独自のペースで読み取ることができます。Any number of client applications can independently read the change feed, in parallel, and at their own pace. Apache DrillApache Spark などの分析アプリケーションでは、Avro ファイルとして直接ログを使用できます。これにより、低コストで、また高帯域幅で処理することができ、カスタム アプリケーションを作成する必要はありません。Analytics applications such as Apache Drill or Apache Spark can consume logs directly as Avro files, which let you process them at a low-cost, with high-bandwidth, and without having to write a custom application.

次の図は、変更フィードにどのようにレコードが追加されるかを示しています。The following diagram shows how records are added to the change feed:

変更フィードによって BLOB への変更の順序付きログが提供されるしくみを示す図

変更フィードのサポートは、変更されたオブジェクトに基づいてデータを処理するシナリオに適しています。Change feed support is well-suited for scenarios that process data based on objects that have changed. たとえば、アプリケーションでは次のことが可能です。For example, applications can:

  • セカンダリ インデックスを更新し、キャッシュ、検索エンジンまたはその他のコンテンツ管理シナリオと同期する。Update a secondary index, synchronize with a cache, search-engine, or any other content-management scenarios.

  • ストリーミング方式またはバッチ モードで、オブジェクトに対して行われた変更に基づいて、ビジネス分析の洞察とメトリックを引き出す。Extract business analytics insights and metrics, based on changes that occur to your objects, either in a streaming manner or batched mode.

  • エンタープライズ データ管理のためのセキュリティ、コンプライアンスまたはインテリジェンスを確保するために、一定期間にわたるオブジェクトへの変更を格納、監査および分析する。Store, audit, and analyze changes to your objects, over any period of time, for security, compliance or intelligence for enterprise data management.

  • 災害管理またはコンプライアンスのためにアカウント内のオブジェクトの状態をバックアップ、ミラー化またはレプリケートするソリューションを構築する。Build solutions to backup, mirror, or replicate object state in your account for disaster management or compliance.

  • 作成されたオブジェクトまたは変更されたオブジェクトに基づいて、変更イベントまたはスケジュールの実行に対応する、接続されたアプリケーション パイプラインを構築する。Build connected application pipelines that react to change events or schedule executions based on created or changed object.

変更フィードは、オブジェクト レプリケーションブロック BLOB のポイントインタイム リストアを行うための前提条件となる機能です。Change feed is a prerequisite feature for Object Replication and Point-in-time restore for block blobs.

注意

変更フィードは、BLOB に発生する変更の持続的でかつ順序付けられたログ モデルを提供します。Change feed provides a durable, ordered log model of the changes that occur to a blob. 変更は、変更から数分以内に変更フィード ログに書き込まれ、使用可能になります。Changes are written and made available in your change feed log within an order of a few minutes of the change. アプリケーションでこれよりはるかに高速にイベントに対応する必要がある場合は、代わりに Blob Storage イベントを使用することを検討してください。If your application has to react to events much quicker than this, consider using Blob Storage events instead. Blob Storage イベントは、Azure Functions またはアプリケーションが BLOB に発生する変更にすばやく反応できるようにする、リアルタイムの 1 回限りのイベントを提供します。Blob Storage Events provides real-time one-time events which enable your Azure Functions or applications to quickly react to changes that occur to a blob.

変更フィードを有効または無効にするEnable and disable the change feed

変更のキャプチャや記録を開始するには、ストレージ アカウントで変更フィードを有効にする必要があります。You must enable the change feed on your storage account to begin capturing and recording changes. 変更のキャプチャを停止するには、変更フィードを無効にします。Disable the change feed to stop capturing changes. ポータルまたは PowerShell で Azure Resource Manager テンプレートを使用して、変更を有効または無効にすることができます。You can enable and disable changes by using Azure Resource Manager templates on Portal or PowerShell.

変更フィードを有効にする際に注意する点をいくつか以下に示します。Here's a few things to keep in mind when you enable the change feed.

  • 各ストレージ アカウントには Blob service の変更フィードが 1 つだけ存在し、それは $blobchangefeed コンテナーに格納されます。There's only one change feed for the blob service in each storage account and is stored in the $blobchangefeed container.

  • 変更の作成、更新、および削除は、Blob service のレベルでのみキャプチャされます。Create, Update, and Delete changes are captured only at the blob service level.

  • 変更フィードでは、アカウントで発生したすべての使用可能なイベントの すべて の変更をキャプチャします。The change feed captures all of the changes for all of the available events that occur on the account. クライアント アプリケーションでは、必要に応じて、イベントの種類をフィルターで除外できますClient applications can filter out event types as required. (現在のリリースの条件を参照)。(See the conditions of the current release).

  • GPv2 と BLOB ストレージ アカウントだけが、変更フィードを有効にできます。Only GPv2 and Blob storage accounts can enable Change feed. Premium BlockBlobStorage アカウント、および階層型名前空間が有効なアカウントは現在サポートされていません。Premium BlockBlobStorage accounts, and hierarchical namespace enabled accounts are not currently supported. GPv1 ストレージ アカウントはサポートされていませんが、ダウンタイムなしで GPv2 にアップグレードできます。詳細については、GPv2 ストレージ アカウントへのアップグレードに関するページを参照してください。GPv1 storage accounts are not supported but can be upgraded to GPv2 with no downtime, see Upgrade to a GPv2 storage account for more information.

Azure portal を使用して、ストレージ アカウントで変更フィードを有効にします。Enable change feed on your storage account by using Azure portal:

  1. Azure portal で、ストレージ アカウントを選択します。In the Azure portal, select your storage account.

  2. [データ管理] の下の [データ保護] オプションに移動します。Navigate to the Data protection option under Data Management.

  3. [追跡] で、 [BLOB の変更フィードを有効にする] を選択します。Under Tracking, select Enable blob change feed.

  4. [保存] ボタンを選択して、データ保護設定を確認します。Choose the Save button to confirm your data protection settings.

    Azure portal で変更フィードを有効にする方法を示すスクリーンショット

変更フィードを使用するConsume the change feed

変更フィードによって、いくつかのメタデータとログ ファイルが生成されます。The change feed produces several metadata and log files. これらのファイルは、ストレージ アカウントの $blobchangefeed コンテナーにあります。These files are located in the $blobchangefeed container of the storage account.

注意

現在のリリースでは、$blobchangefeed コンテナーは Azure portal でのみ表示され、Azure Storage Explorer には表示されません。In the current release, the $blobchangefeed container is visible only in Azure portal but not visible in Azure Storage Explorer. 現在は、ListContainers API を呼び出すときに $blobchangefeed コンテナーを参照することはできませんが、コンテナーで直接 ListBlobs API を呼び出して BLOB を参照することができますYou currently cannot see the $blobchangefeed container when you call ListContainers API but you are able to call the ListBlobs API directly on the container to see the blobs

クライアント アプリケーションでは、変更フィード プロセッサ SDK に付属している BLOB 変更フィード プロセッサ ライブラリを使って、変更フィードを使用できます。Your client applications can consume the change feed by using the blob change feed processor library that is provided with the Change feed processor SDK.

Azure Blob Storage での変更フィード ログの処理に関するページを参照してください。See Process change feed logs in Azure Blob Storage.

変更フィードの構成について理解するUnderstand change feed organization

セグメントSegments

変更フィードは 1 時間単位セグメント に整理される変更のログですが、数分ごとに追加および更新されます。The change feed is a log of changes that are organized into hourly segments but appended to and updated every few minutes. これらのセグメントが作成されるのは、その時間内に発生する BLOB 変更イベントがあるときだけです。These segments are created only when there are blob change events that occur in that hour. これにより、クライアント アプリケーションは、ログ全体を検索することなく、特定の期間内に行われた変更を使用できるようになります。This enables your client application to consume changes that occur within specific ranges of time without having to search through the entire log. 詳細については、「仕様」を参照してください。To learn more, see the Specifications.

変更フィードの利用可能な時間単位のセグメントは、そのセグメントの変更フィード ファイルへのパスを指定するマニフェスト ファイルに記述されています。An available hourly segment of the change feed is described in a manifest file that specifies the paths to the change feed files for that segment. $blobchangefeed/idx/segments/ 仮想ディレクトリのリストには、これらのセグメントが時間順に表示されます。The listing of the $blobchangefeed/idx/segments/ virtual directory shows these segments ordered by time. セグメントのパスは、セグメントで表される時間単位の時間範囲の開始を示しますThe path of the segment describes the start of the hourly time-range that the segment represents. このリストを使用して、関心のあるログのセグメントをフィルターで除外することができます。You can use that list to filter out the segments of logs that are of interest to you.

Name                                                                    Blob Type    Blob Tier      Length  Content Type    
----------------------------------------------------------------------  -----------  -----------  --------  ----------------
$blobchangefeed/idx/segments/1601/01/01/0000/meta.json                  BlockBlob                      584  application/json
$blobchangefeed/idx/segments/2019/02/22/1810/meta.json                  BlockBlob                      584  application/json
$blobchangefeed/idx/segments/2019/02/22/1910/meta.json                  BlockBlob                      584  application/json
$blobchangefeed/idx/segments/2019/02/23/0110/meta.json                  BlockBlob                      584  application/json

注意

変更フィードを有効にすると、$blobchangefeed/idx/segments/1601/01/01/0000/meta.json が自動的に作成されます。The $blobchangefeed/idx/segments/1601/01/01/0000/meta.json is automatically created when you enable the change feed. このファイルは無視してかまいません。You can safely ignore this file. これは常に、空の初期化ファイルです。It is an always empty initialization file.

セグメント マニフェスト ファイル (meta.json) では、chunkFilePaths プロパティにそのセグメントの変更フィード ファイルのパスが表示されます。The segment manifest file (meta.json) shows the path of the change feed files for that segment in the chunkFilePaths property. 以下は、セグメント マニフェスト ファイルの例です。Here's an example of a segment manifest file.

{
    "version": 0,
    "begin": "2019-02-22T18:10:00.000Z",
    "intervalSecs": 3600,
    "status": "Finalized",
    "config": {
        "version": 0,
        "configVersionEtag": "0x8d698f0fba563db",
        "numShards": 2,
        "recordsFormat": "avro",
        "formatSchemaVersion": 1,
        "shardDistFnVersion": 1
    },
    "chunkFilePaths": [
        "$blobchangefeed/log/00/2019/02/22/1810/",
        "$blobchangefeed/log/01/2019/02/22/1810/"
    ],
    "storageDiagnostics": {
        "version": 0,
        "lastModifiedTime": "2019-02-22T18:11:01.187Z",
        "data": {
            "aid": "55e507bf-8006-0000-00d9-ca346706b70c"
        }
    }
}

注意

$blobchangefeed コンテナーは、アカウントで変更フィード機能を有効にした後にのみ表示されます。The $blobchangefeed container appears only after you've enabled the change feed feature on your account. 変更フィードを有効にした後、このコンテナー内の BLOB を一覧表示できるようになるまでに数分待つ必要があります。You'll have to wait a few minutes after you enable the change feed before you can list the blobs in the container.

変更イベント レコードChange event records

変更フィード ファイルには、一連の変更イベント レコードが含まれています。The change feed files contain a series of change event records. 各変更イベント レコードは、個々の BLOB に対する 1 つの変更に対応しています。Each change event record corresponds to one change to an individual blob. レコードは、Apache Avro 形式の仕様を使用して、シリアル化され、ファイルに書き込まれます。The records are serialized and written to the file using the Apache Avro format specification. これらのレコードは、Avro ファイル形式の仕様を使用して読み取ることができます。The records can be read by using the Avro file format specification. その形式のファイルを処理するために使用できるライブラリがいくつかあります。There are several libraries available to process files in that format.

変更フィード ファイルは、追加 BLOB として $blobchangefeed/log/ 仮想ディレクトリに格納されます。Change feed files are stored in the $blobchangefeed/log/ virtual directory as append blobs. 各パスの下にある最初の変更フィード ファイルでは、ファイル名に 00000 が含まれます (00000.avro など)。The first change feed file under each path will have 00000 in the file name (For example 00000.avro). そのパスに追加された後続の各ログ ファイルの名前は、1 ずつ増加します (例: 00001.avro)。The name of each subsequent log file added to that path will increment by 1 (For example: 00001.avro).

変更フィード レコードには、次のイベントの種類がキャプチャされます。The following event types are captured in the Change feed records:

  • BlobCreatedBlobCreated
  • BlobDeletedBlobDeleted
  • BlobPropertiesUpdatedBlobPropertiesUpdated
  • BlobSnapshotCreatedBlobSnapshotCreated

以下は、変更フィード ファイルから Json に変換された変更イベント レコードの例です。Here's an example of change event record from change feed file converted to Json.

{
     "schemaVersion": 1,
     "topic": "/subscriptions/dd40261b-437d-43d0-86cf-ef222b78fd15/resourceGroups/sadodd/providers/Microsoft.Storage/storageAccounts/mytestaccount",
     "subject": "/blobServices/default/containers/mytestcontainer/blobs/mytestblob",
     "eventType": "BlobCreated",
     "eventTime": "2019-02-22T18:12:01.079Z",
     "id": "55e5531f-8006-0000-00da-ca3467000000",
     "data": {
         "api": "PutBlob",
         "clientRequestId": "edf598f4-e501-4750-a3ba-9752bb22df39",
         "requestId": "00000000-0000-0000-0000-000000000000",
         "etag": "0x8D698F13DCB47F6",
         "contentType": "application/octet-stream",
         "contentLength": 128,
         "blobType": "BlockBlob",
         "url": "",
         "sequencer": "000000000000000100000000000000060000000000006d8a",
         "storageDiagnostics": {
             "bid": "11cda41c-13d8-49c9-b7b6-bc55c41b3e75",
             "seq": "(6,5614,28042,28038)",
             "sid": "591651bd-8eb3-c864-1001-fcd187be3efd"
         }
  }
}

各プロパティの説明については、「Azure Event Grid の Blob Storage 用のイベント スキーマ」を参照してください。For a description of each property, see Azure Event Grid event schema for Blob Storage. BlobPropertiesUpdated イベントと BlobSnapshotCreated イベントは現在、変更フィードに限定されており、Blob Storage イベントではまだサポートされていません。The BlobPropertiesUpdated and BlobSnapshotCreated events are currently exclusive to Change feed and not yet supported for Blob Storage Events.

注意

セグメントの変更フィード ファイルは、セグメントの作成後すぐには表示されません。The change feed files for a segment don't immediately appear after a segment is created. 遅延の長さは、変更後数分以内である、変更フィードの公開待機時間の通常の間隔内です。The length of delay is within the normal interval of publishing latency of the change feed which is within a few minutes of the change.

仕様Specifications

  • 変更イベント レコードは変更フィードにのみ追加されます。Change events records are only appended to the change feed. これらのレコードは、追加されると不変になり、レコード位置が安定します。Once these records are appended, they are immutable and record-position is stable. クライアント アプリケーションでは、変更フィードの読み取り位置で独自のチェックポイントを維持できます。Client applications can maintain their own checkpoint on the read position of the change feed.

  • 変更イベント レコードは、変更後数分以内に順に追加されます。Change event records are appended within an order of few minutes of the change. クライアント アプリケーションでは、ストリーム アクセスのために、またはその他の時点に一括で追加されるときにレコードを使用するように選択できます。Client applications can choose to consume records as they are appended for streaming access or in bulk at any other time.

  • 変更イベント レコードは、BLOB ごと の変更順で並べ替えられます。Change event records are ordered by modification order per blob. BLOB 全体の変更の順序は、Azure Blob Storage では定義されていません。Order of changes across blobs is undefined in Azure Blob Storage. 前のセグメントのすべての変更は、後続のセグメントのすべての変更の前になります。All changes in a prior segment are before any changes in subsequent segments.

  • 変更イベント レコードは、Apache Avro 1.8.2 形式仕様を使用して、ログ ファイルにシリアル化されます。Change event records are serialized into the log file by using the Apache Avro 1.8.2 format specification.

  • eventType の値が Control である変更イベント レコードは内部システム レコードであり、アカウント内のオブジェクトに対する変更は反映されません。Change event records where the eventType has a value of Control are internal system records and don't reflect a change to objects in your account. それらのレコードは無視してかまいません。You can safely ignore those records.

  • storageDiagnostics プロパティ バッグの値は内部でのみ使用され、アプリケーションで使用するように設計されていません。Values in the storageDiagnostics property bag are for internal use only and not designed for use by your application. アプリケーションに、そのデータに対する契約上の依存関係があってはなりません。Your applications shouldn't have a contractual dependency on that data. それらのプロパティは無視してかまいません。You can safely ignore those properties.

  • セグメントで表される時間は、15 分の範囲の 概数 です。The time represented by the segment is approximate with bounds of 15 minutes. したがって、指定された時間内にすべてのレコードを確実に使用するには、連続した前と次の 1 時間のセグメントを使います。So to ensure consumption of all records within a specified time, consume the consecutive previous and next hour segment.

  • 公開スループットを管理するためにログ ストリームは内部でパーティション分割されているため、各セグメントに含まれる chunkFilePaths の数は異なる場合があります。Each segment can have a different number of chunkFilePaths due to internal partitioning of the log stream to manage publishing throughput. chunkFilePath のログ ファイルは相互に排他的な BLOB が含まれることが保証され、反復処理中の BLOB ごとの変更の順序付けに違反することなく、並列で使用して処理することができます。The log files in each chunkFilePath are guaranteed to contain mutually exclusive blobs, and can be consumed and processed in parallel without violating the ordering of modifications per blob during the iteration.

  • セグメントは Publishing の状態で始まります。The Segments start out in Publishing status. セグメントへのレコードの追加が完了すると、Finalized になります。Once the appending of the records to the segment is complete, it will be Finalized. 日付が $blobchangefeed/meta/Segments.json ファイル内の LastConsumable プロパティの日付の後であるすべてのセグメントのログ ファイルは、アプリケーションでは使用しないでください。Log files in any segment that is dated after the date of the LastConsumable property in the $blobchangefeed/meta/Segments.json file, should not be consumed by your application. $blobchangefeed/meta/Segments.json ファイルの LastConsumable プロパティの例を以下に示します。Here's an example of the LastConsumableproperty in a $blobchangefeed/meta/Segments.json file:

{
    "version": 0,
    "lastConsumable": "2019-02-23T01:10:00.000Z",
    "storageDiagnostics": {
        "version": 0,
        "lastModifiedTime": "2019-02-23T02:24:00.556Z",
        "data": {
            "aid": "55e551e3-8006-0000-00da-ca346706bfe4",
            "lfz": "2019-02-22T19:10:00.000Z"
        }
    }
}

条件と既知の問題Conditions and known issues

このセクションでは、変更フィードの現在のリリースにおける既知の問題と条件について説明します。This section describes known issues and conditions in the current release of the change feed.

  • 1 つの変更の変更イベント レコードは、変更フィードに複数回表示される場合があります。Change event records for any single change might appear more than once in your change feed.
  • 変更フィード ログ ファイルに時間ベースの保持ポリシーを設定してそのファイルの有効期間を管理することはまだできず、BLOB を削除できません。You can't yet manage the lifetime of change feed log files by setting time-based retention policy on them and you cannot delete the blobs.
  • ログ ファイルの url プロパティは現在、常に空です。The url property of the log file is currently always empty.
  • segments.json ファイルの LastConsumable プロパティでは、変更フィードで終了する最初のセグメントがリストされません。The LastConsumable property of the segments.json file does not list the very first segment that the change feed finalizes. この問題は、最初のセグメントが終了した後でのみ発生します。This issue occurs only after the first segment is finalized. 最初の 1 時間後の後続のすべてのセグメントは、LastConsumable プロパティで正確にキャプチャされます。All subsequent segments after the first hour are accurately captured in the LastConsumable property.
  • 現在、ListContainers API を呼び出しても $blobchangefeed コンテナーを表示できず、このコンテナーは Azure portal や Storage Explorer に表示されません。You currently cannot see the $blobchangefeed container when you call ListContainers API and the container does not show up on Azure portal or Storage Explorer. コンテンツを表示するには、$blobchangefeed コンテナーで直接 ListBlobs API を呼び出します。You can view the contents by calling the ListBlobs API on the $blobchangefeed container directly.
  • 以前にアカウントのフェールオーバーを開始したストレージ アカウントでは、ログ ファイルが表示されない問題が発生することがあります。Storage accounts that have previously initiated an account failover may have issues with the log file not appearing. また、将来のアカウントのフェールオーバーもログ ファイルに影響を与える可能性があります。Any future account failovers may also impact the log file.

よく寄せられる質問FAQ

変更フィードと Storage Analytics のログ記録の違いは何ですか。What is the difference between Change feed and Storage Analytics logging?

分析ログには、すべての操作にわたる成功した要求と失敗した要求を含むすべての読み取り、書き込み、一覧表示、および削除操作のレコードが含まれています。Analytics logs have records of all read, write, list, and delete operations with successful and failed requests across all operations. 分析ログはベストエフォートであり、順序は保証されません。Analytics logs are best-effort and no ordering is guaranteed.

変更フィードは、BLOB の作成、変更、削除などの、アカウントへの成功した変異または変更のトランザクション ログを提供するソリューションです。Change feed is a solution that provides transactional log of successful mutations or changes to your account such as blob creation, modification, and deletions. 変更フィードでは、すべてのイベントが BLOB ごとの成功した変更の順序で記録および表示されることが保証されるため、大量の読み取り操作または失敗した要求からのノイズをフィルターで除外する必要はありません。Change feed guarantees all events to be recorded and displayed in the order of successful changes per blob, thus you do not have to filter out noise from a huge volume of read operations or failed requests. 変更フィードは、基本的に、特定の保証を必要とするアプリケーション開発向けに設計および最適化されています。Change feed is fundamentally designed and optimized for application development that require certain guarantees.

変更フィードまたはストレージ イベントを使用する必要がありますか。Should I use Change feed or Storage events?

変更フィードと BLOB ストレージ イベントは同じ配信の信頼性保証を備えた同じ情報を提供するため、両方の機能を活用できます。主な違いは、イベント レコードの待機時間、順序、および保存です。You can leverage both features as Change feed and Blob storage events provide the same information with the same delivery reliability guarantee, with the main difference being the latency, ordering, and storage of event records. 変更フィードでは、変更から数分以内にレコードがログに発行され、BLOB ごとの変更操作の順序も保証されます。Change feed publishes records to the log within few minutes of the change and also guarantees the order of change operations per blob. ストレージ イベントはリアルタイムでプッシュされ、順序付けされない可能性があります。Storage events are pushed in real time and might not be ordered. 変更フィード イベントが独自の定義された保持期間を持つ読み取り専用の安定したログとしてストレージ アカウントの内部に永続的に格納されるのに対して、ストレージ イベントは、明示的に格納しない限り、イベント ハンドラーによって一時的に使用されます。Change feed events are durably stored inside your storage account as read-only stable logs with your own defined retention, while storage events are transient to be consumed by the event handler unless you explicitly store them. 変更フィードの場合は、任意の数のアプリケーションが BLOB API または SDK を使用して、それぞれの都合に合わせてログを使用できます。With Change feed, any number of your applications can consume the logs at their own convenience using blob APIs or SDKs.

次のステップNext steps