本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
本節說明 Kinesis Client Library (KCL) 的核心概念和互動。這些概念是開發和管理 KCL 消費者應用程式的基礎。
-
KCL 取用者應用程式 – 自訂建置的應用程式,旨在使用 Kinesis Client Library 從 Kinesis 資料串流讀取和處理記錄。
-
工作者 – KCL 取用者應用程式通常會分散,並同時執行一或多個工作者。KCL 會協調工作者以分散式方式取用串流中的資料,並在多個工作者之間平均平衡負載。
-
排程器 – KCL 工作者用來開始處理資料的高階類別。每個 KCL 工作者都有一個排程器。排程器會初始化和監督各種任務,包括從 Kinesis 資料串流同步碎片資訊、在工作者之間追蹤碎片指派,以及根據指派給工作者的碎片處理串流中的資料。排程器可以採用各種會影響排程器行為的組態,例如要處理 和 AWS 登入資料之串流的名稱。排程器會啟動將資料記錄從串流交付至記錄處理器。
-
記錄處理器 – 定義 KCL 取用者應用程式如何處理從資料串流接收的資料邏輯。您必須在記錄處理器中實作自己的自訂資料處理邏輯。KCL 工作者會執行個體化排程器。然後,排程器會針對其擁有租用的每個碎片執行個體化一個記錄處理器。工作者可以執行多個記錄處理器。
-
租用 – 定義工作者與碎片之間的指派。KCL 取用者應用程式使用租用將資料記錄處理分散到多個工作者。每個碎片在任何指定時間都只能透過租用繫結至一個工作者,而且每個工作者可以同時保留一或多個租用。當工作者因停止或失敗而停止保留租用時,KCL 會指派另一個工作者來接受租用。若要進一步了解租用,請參閱 Github 文件:租用生命週期
。 -
租用資料表 – 是唯一的 Amazon DynamoDB 資料表,用於追蹤 KCL 消費者應用程式的所有租用。每個 KCL 取用者應用程式都會建立自己的租用資料表。租用資料表用於維護所有工作者的狀態,以協調資料處理。如需詳細資訊,請參閱KCL 中的 DynamoDB 中繼資料表和負載平衡。
-
檢查點 – 是將上次成功處理記錄的位置持續存放在碎片中的程序。KCL 會管理檢查點,以確保在工作者失敗或應用程式重新啟動時,可以從最後一個檢查點位置繼續處理。檢查點會存放在 DynamoDB 租用資料表中,做為租用中繼資料的一部分。這可讓工作者繼續處理先前工作者停止的位置。