本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
清除資源
由於使用 Kinesis 資料串流需要支付費用,當您使用串流完畢後,請務必刪除該串流和對應的 Amazon DynamoDB 資料表。作用中的串流即便並未傳送及取得記錄,也會象徵性地收取費用。這是因為作用中的串流會持續「監聽」傳入的記錄和取得記錄的請求,以致將耗用資源。
刪除串流和資料表
-
關閉您可能仍在運行的任何生產者和消費者。
在 https://console.aws.amazon.com/
Kinesis 處開啟室壁運動主控台。 -
選擇您為此應用程式所建立的串流 (
StockTradeStream
)。 -
選擇 Delete Stream (刪除串流)。
在開啟 DynamoDB 控制台。https://console.aws.amazon.com/dynamodb/
-
刪除
StockTradesProcessor
資料表。
Summary
以近乎即時的速度處理大量資料,不需要撰寫複雜的程式碼或開發龐大的基礎架構。它與處理少量資料 (例如寫入processRecord(Record)
) 的寫入邏輯一樣基本,但是使用 Kinesis Data Streams 進行擴展,以便處理大量串流資料。您不必擔心如何擴展處理方式,因為這一切 Kinesis Data Streams 都將為您代勞。您只需要傳送串流記錄至 Kinesis Data Streams 並撰寫邏輯以處理每一筆收到的新記錄。
以下是對此應用程式可行的一些強化功能。
- 跨所有碎片進行彙整
-
目前您是透過彙整單一工作者從單一碎片接收的資料記錄來取得統計資料 (任一碎片不能同時由單一應用程式中的多個工作者處理)。當然,您若擴展為具有多個碎片,可能會想要跨所有碎片進行彙整。為此,您可以採用某種流程架構,將每個工作者的輸出都饋送至具有單一碎片的另一串流,而碎片則由彙整第一個階段輸出的工作者處理。由於取自第一個階段的資料有限 (每個碎片每分鐘一次取樣),單一碎片就能輕鬆處理這些資料。
- 擴展處理
-
當串流擴展為具有多個碎片後 (因為有許多生產者傳送資料),擴展處理的方式即是增加更多工作者。您可以在 Amazon 執行個體中EC2執行工作者,並使用 Auto Scaling 群組。
- 使用連接器到 Amazon S3/DynamoDB/Amazon Redshift/Storm
-
連續處理串流時,其輸出可傳送至其他目的地。 AWS 提供連接器
,以將 Kinesis Data Streams 與其他 AWS 服務和協力廠商工具整合。