探索事件中樞擷取

已完成

Azure 事件中樞可讓您在所選 Azure Blob 儲存體或 Azure Data Lake Storage 帳戶中自動擷取事件中樞的串流資料,並另外新增了可指定時間或大小間隔的彈性。 設定擷取的速度很快,因此執行時不需要系統管理成本,而且其會透過標準層中的事件中樞輸送量單位或進階層中的處理單位來自動調整。

顯示將事件中樞資料擷取至 Azure 儲存體或 Azure Data Lake Storage 的影像

事件中樞擷取可讓您在相同的資料流上處理即時和批次型管線。 這表示您可以建置隨時間而增加需求的解決方案。

事件中樞擷取的運作方式

事件中樞是遙測輸入的時間保留持久性緩衝區,類似於分散式記錄。 在事件中樞調整大小的關鍵是 資料分割取用者模型。 每個分割區都是獨立的資料區段,並會會獨立取用。 經過一段時間,此資料會根據可設定的保留期間刪除。 如此一來,指定的事件中樞永遠不會「太滿」。

事件中樞擷取可讓您指定自己的 Azure Blob 儲存體帳戶和容器,或用來儲存所擷取資料的 Azure Data Lake Store 帳戶。 這些帳戶可以位於與事件中樞相同的區域或另一個區域,增加事件中樞擷取功能的彈性。

擷取的資料會以 Apache Avro 格式寫入,此為精簡、快速、二進位的格式,可使用內嵌結構描述提供豐富的資料結構。 此格式在 Hadoop 生態系統、串流分析和 Azure Data Factory 中廣泛被使用。 本文稍後提供有關如何使用 Avro 的詳細資訊。

擷取時間範圍

事件中樞擷取可讓您設定時間範圍來控制擷取。 此時間範圍是具有「先到先贏原則」的最小大小和時間設定,這表示第一個遇到的觸發程序會導致擷取作業。 每個分割區都會獨立擷取,並在擷取時寫入已完成的區塊 Blob,且會以遇到擷取間隔的時間命名。 儲存體的命名慣例如下所示:

{Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}

請注意,日期值會以零填補;檔名範例可能是:

https://mystorageaccount.blob.core.windows.net/mycontainer/mynamespace/myeventhub/0/2017/12/08/03/03/17.avro

調整為輸送量單位

事件中樞流量由輸送量單位控制。 單一輸送量單位允許每秒 1 MB 或每秒 1000 個事件的輸入,以及該數量兩倍的輸出。 可將標準事件中樞設定為 1-20 個輸送量單位,且您可透過配額增加支援要求來購買更多單位。 超出您購買輸送量單位的使用量會受到節流。 事件中樞擷取會直接從內部的事件中樞儲存體複製資料,略過輸送量單位輸出配額,並將輸出節省下來以供串流分析或 Spark 等其他處理讀取器使用。

一旦設定,事件中樞擷取會在您傳送第一個事件時自動執行,並且持續執行。 為了讓下游處理更容易知道流程正在運作,事件中樞會在沒有資料時寫入空白檔案。 此流程提供可預測的步調和標記,可同步發行您的批次處理器。