Azure的活動中心
Azure的活動中心是一個hyper-scale遙測攝入服務,收集、轉換和存儲數以百萬計的事件。作為分布式流媒體平台,它給你保留低延遲和可配置的時間,Beplay体育安卓版本使你進入大量的遙測到雲,讀取數據從多個應用程序使用發布-訂閱語義。
這篇文章解釋了如何使用結構化流Azure的事件中心和磚集群。
需求
當前版本支持,看到“最新版本”Azure事件中心火花連接器項目自述文件。
模式
記錄的模式是:
列 |
類型 |
---|---|
身體 |
二進製 |
分區 |
字符串 |
抵消 |
字符串 |
sequenceNumber |
長 |
enqueuedTime |
時間戳 |
出版商 |
字符串 |
partitionKey |
字符串 |
屬性 |
地圖(字符串,json) |
的身體
總是提供一個字節數組。使用鑄造(“字符串”)
顯式地反序列化的身體
列。
配置
本節討論的配置設置需要處理事件中心。
詳細指導配置結構與Azure事件流中心,看到結構化流和Azure事件中心集成指南由微軟開發的。
對於使用結構化流的詳細指導,明白了Apache火花結構化流是什麼?。
連接字符串
一個事件中心連接字符串必須連接到事件中心服務。你可以得到你的活動中心的連接字符串的實例Azure門戶或通過使用ConnectionStringBuilder
在圖書館。
Azure門戶
當你從Azure門戶獲取連接字符串,它可能有也可能沒有EntityPath
關鍵。考慮:
/ /沒有一個實體的路徑瓦爾沒有=“端點= <端點>;SharedAccessKeyName = <鍵名>;SharedAccessKey = <鍵>”/ /用一個實體的路徑瓦爾與=“端點=某人:/ / <樣本>;SharedAccessKeyName = <鍵名>;SharedAccessKey = <鍵>;EntityPath = < eventhub-name >”
一個連接到EventHubsEntityPath
必須存在。如果你的連接字符串沒有,別擔心。這將會照顧它:
進口org。apache。火花。eventhubs。ConnectionStringBuilder瓦爾connectionString=ConnectionStringBuilder(沒有)/ /定義在前麵的代碼塊。setEventHubName(“< eventhub-name >”)。構建
EventHubsConf
所有配置相關的事件發生在你的中心EventHubsConf
。創建一個EventHubsConf
,你必須通過一個連接字符串:
瓦爾connectionString=“< event-hub-connection-string >”瓦爾eventHubsConf=EventHubsConf(connectionString)
看到連接字符串更多信息獲取一個有效的連接字符串。
配置的完整列表,請參閱EventHubsConf。這是一個配置的子集你開始:
選項 |
價值 |
默認的 |
查詢類型 |
描述 |
---|---|---|---|---|
consumerGroup |
字符串 |
“默認”美元 |
流和批處理 |
消費群體是整個事件的中心。消費者團體支持多個消費應用程序都有一個單獨的事件流,獨立和讀取流按照自己的節奏和自己的補償。更多的信息是可用的微軟文檔。 |
startingPosition |
EventPosition |
開始流 |
流和批處理 |
結構化流的起始位置工作。看到startingPositions信息選項的順序閱讀。 |
maxEventsPerTrigger |
長 |
partitionCount
|
流媒體查詢 |
速度限製最大數量的事件處理每觸發間隔。指定事件的總數將跨分區比例分割不同的體積。 |
對於每個選項,存在一個相應的設置EventHubsConf
。例如:
進口org。apache。火花。eventhubs。瓦爾cs=“<連接字符串>”瓦爾eventHubsConf=EventHubsConf(cs)。setConsumerGroup(“sample-cg”)。setMaxEventsPerTrigger(10000年)
EventPosition
EventHubsConf
允許用戶指定開始和結束的位置EventPosition
類。EventPosition
定義一個事件在一個事件的位置中心分區。的位置可以是一個隊列的時間、抵消、序列號,流的開始或結束的流。
進口org。apache。火花。eventhubs。_EventPosition。fromOffset(“246812”)/ /指定偏移量246812EventPosition。fromSequenceNumber(100升)/ /指定序號100EventPosition。fromEnqueuedTime(即時。現在)/ /當前時間後任何事件EventPosition。fromStartOfStream/ /指定從開始流EventPosition。fromEndOfStream/ /指定從流的結束
如果你想開始(或結束)在一個特定位置,簡單地創建正確的EventPosition
在你的EventHubsConf
:
瓦爾connectionString=“< event-hub-connection-string >”瓦爾eventHubsConf=EventHubsConf(connectionString)。setStartingPosition(EventPosition。fromEndOfStream)
生產結構與Azure事件流中心
在生產運行流查詢時,您可能想要更多的魯棒性和正常運行時間保證比你當你簡單地把一個筆記本一個集群和運行您的流交互查詢。導入並運行以下筆記本演示如何配置和運行的結構性與Azure事件流在生產中心和磚。
有關更多信息,請參見生產注意事項結構化流。