NiFi用戶指南文檔分析(2)

NiFi文檔分析

組件版本

您可以訪問有關處理器,控制器服務和報告任務的版本的信息。當您在具有運行不同版本組件的多個NiFi實例的集羣環境中工作或者已升級到較新版本的處理器時,此功能尤其有用。“添加處理器”,“添加控制器服務”和“添加報告任務”對話框包括一個標識組件版本的列,以及組件的名稱,創建組件的組織或組以及包含該組件的NAR包。
在這裏插入圖片描述畫布上顯示的每個組件也包含此信息。在這裏插入圖片描述

排序和過濾組件

添加組件時,可以根據原始源對版本號或過濾器進行排序。

要基於版本進行排序,請單擊版本列以按升序或降序版本順序顯示。

要基於源組進行過濾,請單擊“添加組件”對話框左上角的源下拉列表,然後選擇要查看的組。

在這裏插入圖片描述

更改組件版本

要更改組件版本,請執行以下步驟。

  1. 右鍵單擊畫布上的組件以顯示配置選項。
  2. 選擇更改版本。在這裏插入圖片描述
  3. 在“組件版本”對話框中,從“版本”下拉菜單中選擇要運行的版本。在這裏插入圖片描述

瞭解版本依賴關係

配置組件時,還可以查看有關版本依賴性的信息。
1.右鍵單擊組件,然後選擇“配置”以顯示組件的“配置”對話框。
2.單擊“屬性”選項卡。
3.單擊信息圖標以查看任何版本依賴關係信息。
在這裏插入圖片描述
如果MyProcessor的版本更改爲不兼容的版本(MyProcessor 2.0),則驗證錯誤將顯示在處理器上:在這裏插入圖片描述並且由於服務不再有效,因此處理器的控制器服務配置中將顯示錯誤消息:在這裏插入圖片描述

配置處理器

要配置處理器,請右鍵單擊處理器,然後Configure從上下文菜單中選擇該選項。或者,只需雙擊處理器即可。打開配置對話框,其中包含四個不同的選項卡,每個選項卡將在下面討論。完成處理器配置後,可以通過單擊Apply按鈕應用更改,或單擊按鈕取消所有更改Cancel。
注意,處理器啓動後,爲處理器顯示的上下文菜單不再有Configure 選項,而是有一個View Configuration選項。處理器運行時無法更改處理器配置。您必須先停止處理器並等待其所有活動任務完成,然後再次配置處理器。
不支持輸入某些控制字符,並在輸入時自動過濾掉。任何配置中都不會保留以下字符和任何未配對的Unicode代理點代碼點:
[#x0],[#x1],[#x2],[#x3],[#x4],[#x5],[#x6],[#x7],[#x8],[#xB], [#xC],[#xE],[#XP],[#x10],[#x11],[#x12],[#x13],[#x14],[#x15],[#x16], [#x17],[#x18],[#x19],[#x1A],[#x1B],[#x1C],[#x1D],[#x1E],[#x1F],[#xFFFE], [#xFFFF]

設置標籤

處理器配置對話框中的第一個選項卡是“設置”選項卡:
在這裏插入圖片描述
此選項卡包含幾個不同的配置項。
首先,它允許DFM更改處理器的名稱。默認情況下,處理器的名稱與處理器類型相同。處理器名稱旁邊是一個複選框,指示處理器是否已啓用。將處理器添加到畫布後,將啓用它。如果禁用處理器,則無法啓動。禁用狀態用於指示當啓動一組處理器時,例如當DFM啓動整個進程組時,應排除此(禁用)處理器。
接下來是兩個用於配置“懲罰持續時間”和“產量持續時間”的對話框。在處理一條數據(FlowFile)的正常過程中,可能發生事件,該事件指示此時不能處理數據但是數據可以在稍後的時間處理。發生這種情況時,處理器可以選擇Penalize FlowFile。這將阻止FlowFile在一段時間內被處理.
類似地,處理器可以確定存在某種情況,使得處理器不再能夠進行任何進展,而不管其正在處理的數據。例如,如果處理器要將數據推送到遠程服務並且該服務沒有響應,則處理器無法取得任何進展。
“設置”選項卡左側的最後一個可配置選項是“公告”級別。每當處理器寫入其日誌時,處理器也將生成公告。此設置指示應在用戶界面中顯示的最低級別的公告。默認情況下,公告級別設置爲WARN,這意味着它將顯示所有警告和錯誤級別公告。
設置”選項卡的右側包含“自動終止關係”部分。此處列出了處理器定義的每個關係及其描述。爲了使處理器被視爲有效且能夠運行,處理器定義的每個關係必須連接到下游組件或自動終止。如果關係是自動終止的,則將從流中刪除任何路由到該關係的FlowFile,並將其處理視爲完成。已連接到下游組件的任何關係都無法自動終止。必須首先從使用它的任何Connection中刪除關係。

調度選項卡

“處理器配置”對話框中的第二個選項卡是“計劃”選項卡:在這裏插入圖片描述

調度策略

第一個配置選項是調度策略。調度組件有三種可能的選項:
定時器驅動:這是默認模式。處理器將安排定期運行。運行處理器的時間間隔由“運行時間表”選項定義(見下文)。

事件驅動:選擇此模式時,將觸發處理器以由事件運行,並且當FlowFiles進入連接此處理器的Connections時,將發生該事件。此模式目前被認爲是實驗性的,並非所有處理器都支持。選擇此模式時,“運行計劃”選項不可配置,因爲處理器未被觸發定期運行,而是作爲事件的結果。此外,這是“併發任務”選項可以設置爲0的唯一模式。在這種情況下,線程數僅受管理員配置的事件驅動線程池的大小限制。

CRON驅動:當使用CRON驅動的調度模式時,處理器被安排定期運行,類似於定時器驅動的調度模式。然而,CRON驅動模式以增加配置的複雜性爲代價提供了顯着更大的靈活性。CRON驅動的調度值是由六個必需字段和一個可選字段組成的字符串,每個字段由空格分隔。這些字段是:

領域 有效值
0-59
分鐘 0-59
小時 0-23
一個月的一天 1-31
1-12或JAN-DEC
星期幾 1-7或SUN-SAT
年(可選) 空,1970-2099

您通常通過以下方式之一指定值:

  • 數字:指定一個或多個有效值。您可以使用逗號分隔列表輸入多個值。
  • 範圍:使用 - 語法指定範圍。
  • 增量:使用 / 語法指定增量。例如,在“分鐘”字段中,0/15表示分鐘0,15,30和45。

您還應該知道幾個有效的特殊字符:

  • * - 表示所有值對該字段都有效。
  • ? - 表示未指定特定值。此特殊字符在“星期幾”和“星期幾”字段中有效。
  • L - 您可以將L附加到星期值之一,以指定該月中該日的最後一次出現。例如,1L表示該月的最後一個星期日。

運行計劃

“運行計劃”指示應該安排處理器運行的頻率。此字段的有效值取決於所選的調度策略(參見上文)。如果使用事件驅動的調度策略,則此字段不可用。使用定時器驅動的調度策略時,該值是由數字後跟時間單位指定的持續時間。例如,1 second或5 mins。默認值0 sec表示處理器應儘可能頻繁地運行,只要它有要處理的數據即可。這適用於0任何持續時間,而不管時間單位(即,0 sec,0 mins,0 days)。

執行

執行設置用於確定處理器將被調度執行的節點。選擇“所有節點”將導致在集羣中的每個節點上調度此處理器。選擇“主節點”將導致此處理器僅在主節點上進行調度。已爲“主節點”執行配置的處理器由處理器圖標旁邊的“P”標識:
在這裏插入圖片描述
要快速識別“主節點”處理器,“P”圖標也會顯示在“摘要”頁面的“處理器”選項卡中:
在這裏插入圖片描述

運行持續時間

“調度”選項卡的右側包含一個用於選擇“運行持續時間”的滑塊。這可以控制處理器每次觸發時應安排運行的時間。在滑塊的左側,標記爲“較低延遲”,而右側標記爲“較高吞吐量”。處理器完成運行後,必須更新存儲庫才能將FlowFiles傳輸到下一個Connection。更新存儲庫的成本很高,因此在更新存儲庫之前可以立即完成的工作量越多,處理器可以處理的工作量就越多(吞吐量越高)。但是,這意味着在上一個Process更新此存儲庫之前,下一個Processor無法開始處理這些FlowFiles。結果是,延遲時間會更長(從開始到結束處理FlowFile所需的時間會更長)。因此,滑塊提供了一個頻譜,DFM可以從中選擇支持較低延遲或較高吞吐量。

屬性選項卡

Properties選項卡提供了一種配置特定於Processor的行爲的機制。沒有默認屬性。每種類型的處理器必須定義哪些屬性對其用例有意義。下面,我們看到RouteOnAttribute Processor的Properties選項卡:在這裏插入圖片描述
默認情況下,此處理器只有一個屬性:“路由策略”。默認值爲“路由到屬性名稱”.單擊屬性的值將允許DFM更改該值。根據屬性允許的值,向用戶提供從中選擇值的下拉列表,或者爲用戶提供鍵入值的文本區域:
在這裏插入圖片描述
選項卡的右上角是一個用於添加新屬性的按鈕。單擊此按鈕將爲DFM提供一個對話框,用於輸入新屬性的名稱和值。並非所有處理器都允許用戶定義的屬性。在不允許它們的處理器中,處理器在應用用戶定義屬性時變爲無效。但是,RouteOnAttribute允許用戶定義的屬性。實際上,在用戶添加屬性之前,此處理器無效。
在這裏插入圖片描述

評論標籤

處理器配置對話框中的最後一個選項卡是“註釋”選項卡。此選項卡僅爲用戶提供一個區域,以包含適用於此組件的任何註釋。使用“註釋”選項卡是可選的:在這裏插入圖片描述

使用表達式語言的自定義屬性

您可以使用NiFi表達式語言來引用FlowFile屬性,將它們與其他值進行比較,並在創建和配置數據流時操縱它們的值。
除了在Express Language中使用FlowFile屬性,系統屬性和環境屬性之外,您還可以定義表達式語言使用的自定義屬性。定義自定義屬性可以更靈活地處理和處理數據流。您還可以爲連接,服務器和服務屬性創建自定義屬性,以便更輕鬆地配置數據流。

NiFi屬性具有在創建自定義屬性時應注意的分辨率優先級:

特定於處理器的屬性

FlowFile屬性

FlowFile屬性

從變量註冊表:

用戶定義的屬性(自定義屬性)

系統屬性

操作系統環境變量

在創建自定義屬性時,請確保每個自定義屬性包含不同的屬性值,以便現有環境屬性,系統屬性或FlowFile屬性不會覆蓋它。

有兩種方法可以使用和管理自定義屬性:

在NiFi UI中通過Variables窗口

通過nifi.properties引用自定義屬性

變量窗口

可以在NiFi UI中創建和配置變量。變量可用於支持表達式語言的任何字段。NiFi自動獲取在UI中創建的新變量或修改變量。

要訪問“變量”窗口,請右鍵單擊未選中任何內容的畫布:在這裏插入圖片描述
從上下文菜單中選擇“變量”:在這裏插入圖片描述
選擇進程組時,右鍵單擊“上下文菜單”中也可以使用“變量”:在這裏插入圖片描述

創建變量

在“變量”窗口中,單擊+按鈕以創建新變量。添加名稱:在這裏插入圖片描述
和一個值:在這裏插入圖片描述
選擇“應用”:在這裏插入圖片描述
執行更新變量的步驟(識別受影響的組件,停止受影響的處理器等)。例如,Referencing Processors部分現在列出了“PutFile-Root”處理器。在列表中選擇處理器的名稱將導航到畫布上的該處理器。查看處理器的屬性,${putfile_dir}由Directory屬性引用:
在這裏插入圖片描述

可變範圍

變量的作用域由它們定義的進程組確定,並且可供該級別及以下定義的任何處理器使用(即任何後代處理器)。

後代組中的變量會覆蓋父組中的值。更具體地說,如果變量x在根組中聲明並且也在進程組內聲明,則進程組內的組件將使用進程組中x定義的值。
例如,除了putfile_dir根進程組中存在的變量之外,假設putfile_dir在進程組A中創建了另一個變量。如果進程組A中的一個組件引用putfile_dir,則將列出這兩個變量,但是putfile_dir根組中的變量將是有一個刪除線表明被覆蓋:在這裏插入圖片描述只能爲其創建的進程組修改變量,該變量列在“變量”窗口的頂部。要修改在不同進程組中定義的變量,請選擇該變量行中的“箭頭”圖標:在這裏插入圖片描述例如,除了putfile_dir根進程組中存在的變量之外,假設putfile_dir在進程組A中創建了另一個變量。如果進程組A中的一個組件引用putfile_dir,則將列出這兩個變量,但是putfile_dir根組中的變量將是有一個刪除線表明被覆蓋:在這裏插入圖片描述只能爲其創建的進程組修改變量,該變量列在“變量”窗口的頂部。要修改在不同進程組中定義的變量,請選擇該變量行中的“箭頭”圖標:在這裏插入圖片描述這將導航到該進程組的Variables窗口:在這裏插入圖片描述

變量權限

變量權限僅基於相應進程組上配置的權限。

例如,如果用戶無權查看進程組,則無法查看該進程組的“變量”窗口:在這裏插入圖片描述
選擇控制器服務的名稱將導航到“配置”窗口中的該控制器服務:在這裏插入圖片描述

未經授權的引用組件

如果未向引用變量的組件提供“查看”或“修改”權限,則組件的UUID將顯示在“變量”窗口中:
在這裏插入圖片描述
在上面的示例中,變量property1由“user1”無法查看的處理器引用:在這裏插入圖片描述

通過nifi.properties引用自定義屬性

識別一組或多組鍵/值對,並將它們提供給系統管理員。

添加新的自定義屬性後,請確保使用自定義屬性位置更新nifi.properties文件中的nifi.variable.registry.properties 字段。
【注】必須重新啓動NiFi才能獲取這些更新。

控制器服務

Controller Services是共享服務,可供報告任務處理器和其他服務使用,以用於配置或任務執行。

爲報告任務添加控制器服務

要爲報告任務添加控制器服務,請從全局菜單中選擇控制器設置。
在這裏插入圖片描述
這將顯示“NiFi設置”窗口。該窗口有四個選項卡:常規,報告任務控制器服務,報告任務和註冊表客戶端。“常規”選項卡提供實例的總體最大線程數的設置。在這裏插入圖片描述“常規”選項卡右側是“報告任務控制器服務”選項卡。在此選項卡中,DFM可以單擊右上角的+按鈕以創建新的Controller Service。在這裏插入圖片描述
“添加控制器服務”窗口打開。此窗口類似於“添加處理器”窗口。它提供了右側可用的Controller Services列表和標籤雲,顯示了左側用於Controller Services的最常見類別標籤。DFM可以單擊標籤雲中的任何標籤,以便將Controller Services列表縮小到適合所需類別的那些。DFM還可以使用窗口右上角的“過濾器”字段來搜索所需的“控制器服務”,或使用左上角的“源”下拉列表按創建它們的組篩選列表。從列表中選擇Controller Service後,DFM可以在下面看到該服務的描述。選擇所需的控制器服務,然後單擊“添加”,或者只需雙擊要添加的服務名稱即可。
在這裏插入圖片描述添加控制器服務後,可以通過單擊Configure最右側列中的按鈕進行配置。此列中的其他按鈕包括Enable,Remove和Access Policies。
在這裏插入圖片描述您可以通過單擊左側列中的Usage和Alerts按鈕來獲取有關Controller Services的信息。在這裏插入圖片描述當DFM單擊該Configure按鈕時,將打開“配置控制器服務”窗口。它有三個選項卡:設置,屬性和註釋。此窗口類似於“配置處理器”窗口。“設置”選項卡爲DFM提供了一個位置,以便爲Controller Service提供唯一的名稱(如果需要)。它還列出了服務的UUID,類型,捆綁和支持信息,並提供了引用該服務的其他組件(報告任務或其他控制器服務)的列表。在這裏插入圖片描述“屬性”選項卡列出了適用於特定控制器服務的各種屬性。與配置處理器一樣,DFM可以將鼠標懸停在問號圖標上以查看有關每個屬性的更多信息。在這裏插入圖片描述“註釋”選項卡只是一個開放文本字段,其中DFM可能包含有關服務的註釋。配置Controller Service後,單擊Apply按鈕以應用配置並關閉窗口,或單擊Cancel按鈕取消更改並關閉窗口。

爲數據流添加控制器服務

要爲數據流添加控制器服務,可以右鍵單擊“進程組”並選擇“配置”,或單擊“操作選項板”中的“配置”。
在這裏插入圖片描述在畫布上單擊“操作選項板”中的“配置”時,如果未在畫布上選擇任何內容,則爲根進程組添加控制器服務。然後,該控制器服務可用於數據流中的所有嵌套進程組。在畫布上選擇“進程組”,然後從“操作選項板”或“進程組”上下文菜單中單擊“配置”時,該服務將可用於該進程組及以下中定義的所有處理器和控制器服務。在這裏插入圖片描述使用以下步驟添加Controller服務:

  1. 單擊“配置”,可以從“操作選項板”或“進程組”上下文菜單中單擊“配置”。這將顯示進程組“配置”窗口。該窗口有兩個選項卡:常規和控制器服務。“常規”選項卡用於與有關進程組的常規信息有關的設置。例如,如果配置根進程組,DFM可以爲整個數據流提供唯一的名稱,以及描述該流的註釋(注意:此信息對於遠程連接到此實例的任何其他NiFi實例是可見的(使用遠程進程組,又名,站點到站點))。在這裏插入圖片描述
  2. 從Process Group Configuration頁面中,選擇Controller Services選項卡。
  3. 單擊+按鈕以顯示“添加控制器服務”對話框。
  4. 選擇所需的Controller Service,然後單擊“添加”。
  5. 單擊配置右側列中的配置圖標(),執行任何必要的Controller Service配置任務。

啓用/禁用控制器服務

配置Controller Service後,必須啓用它才能運行。使用“ 控制器服務”選項卡的最右側列中的Enable按鈕(啓用按鈕)執行此操作。爲了修改現有/正在運行的控制器服務,DFM需要停止/禁用它(以及所有引用報告任務和控制器服務)。使用Disable按鈕(禁用按鈕)執行此操作。DFM可以在禁用相關控制器服務時停止/禁用它們,而不必搜尋該控制器服務引用的每個組件。啓用控制器服務時,DFM可以選擇啓動/啓用控制器服務和所有引用組件,也可以僅啓動/啓用控制器服務本身。在這裏插入圖片描述

報告任務

報告任務在後臺運行,以提供有關NiFi實例中發生情況的統計報告。DFM添加和配置報告任務,類似於Controller Services的過程。要添加報告任務,請從全局菜單中選擇控制器設置。在這裏插入圖片描述這將顯示“NiFi設置”窗口。選擇“報告任務”選項卡,然後單擊右上角的+按鈕以創建新的“報告任務”。在這裏插入圖片描述將打開“添加報告任務”窗口。此窗口類似於“添加處理器”窗口。它提供了右側可用報告任務的列表和標籤雲,顯示了左側用於報告任務的最常見類別標籤。DFM可以單擊標籤雲中的任何標籤,以便將報告任務列表縮小到適合所需類別的那些。DFM還可以使用窗口右上角的“過濾器”字段來搜索所需的“報告任務”,或使用左上角的“源”下拉列表按創建它們的組篩選列表。從列表中選擇報告任務後,DFM可以在下面看到該任務的描述。選擇所需的報告任務,然後單擊“添加”,或者只需雙擊要添加的服務名稱即可。

在這裏插入圖片描述添加報告任務後,DFM可以通過單擊Edit最右側列中的按鈕對其進行配置。在此列中的其他按鈕包括Start,Remove,State和Access Policies。在這裏插入圖片描述您可以獲取有關通過點擊報告任務信息View Details,Usage以及Alerts在左側欄中的按鈕。在這裏插入圖片描述當DFM單擊該Edit按鈕時,將打開“配置報告任務”窗口。它有三個選項卡:設置,屬性和註釋。此窗口類似於“配置處理器”窗口。“設置”選項卡爲DFM提供了一個位置,以便爲報告任務提供唯一的名稱(如果需要)。它還列出了任務的UUID,Type和Bundle信息,並提供了任務的Scheduling Strategy和Run Schedule的設置(類似於處理器中的相同設置)。DFM可以將鼠標懸停在問號圖標上以查看有關每個設置的更多信息。在這裏插入圖片描述“屬性”選項卡列出了可爲任務配置的各種屬性。DFM可以將鼠標懸停在問號圖標上以查看有關每個屬性的更多信息。在這裏插入圖片描述
“註釋”選項卡只是一個開放文本字段,其中DFM可能包含有關任務的註釋。配置報告任務後,單擊Apply按鈕以應用配置並關閉窗口,或單擊Cancel按鈕取消更改並關閉窗口。

如果要運行“報告任務”,請單擊Start按鈕(開始按鈕)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章