Flink 按時間分檔案寫入HDFS案例

2021-09-24 04:47:30 字數 1862 閱讀 6948

其餘案例:

正常操作:

1)匯入依賴:

主要設定三個屬性bucketer,writer,batchsize。

bucketer:資料寫入hdfs目錄劃分,datetimebucketer是根據當前系統時間劃分,具體粒度根據傳入的引數確定。當然我們也可以設定自己的劃分規則,利用資料裡的字段確定劃分目錄;

例如我根據json資料裡的timestamp欄位確定劃分目錄:

class datehourbucketer implements bucketer

}

writer:資料寫入格式,預設轉化為字串寫入。如果資料格式為sequencefiles,我們可以用sequencefilewriter;

batchsize:預設每乙個執行緒乙個part檔案,batchsize指定part檔案多大的時候生成新的檔案

當然我們還是可以設定路徑字首、字尾,多長時間關閉檔案控制代碼等等屬性。

預設生成的路徑格式如下:

/base/path//part--
count是由於batchsize而設定的part檔案編號 

注意要開啟checkpoint,不然檔案一直處於pending狀態,控制代碼無法關閉,不能讀取

linux ls命令按時間顯示檔案

附,ls命令的引數中文詳解 a 列出目錄下的所有檔案,包括以 開頭的隱含檔案。b 把檔名中不可輸出的字元用反斜槓加字元編號 就象在c語言裡一樣 的形式列出。c 輸出檔案的 i 節點的修改時間,並以此排序。d 將目錄象檔案一樣顯示,而不是顯示其下的檔案。e 輸出時間的全部資訊,而不是輸出簡略資訊。f ...

ls按時間排序輸出檔案列表

ls按時間排序輸出檔案列表 首先,ls help檢視ls相關的與時間排序相關的引數 ls help grep e time sort 如果不指定 cftusux 或 sort 任何乙個選項,則根據字母大小排序。c 配合 lt 根據 ctime 排序及顯示 ctime 檔案 配合 l 顯示 ctime...

ls按時間排序輸出檔案列表

ls按時間排序輸出檔案列表 ls help grep e time sort 如果不指定 cftusux 或 sort 任何乙個選項,則根據字母大小排序。c 配合 lt 根據 ctime 排序及顯示 ctime 檔案 配合 l 顯示 ctime 但根據名稱排序 否則 根據 ctime 排序 f do...