복붙노트

[HADOOP] FileSystem.liststatus에서 로그 파일 필터링 (_success 및 _log)

HADOOP

FileSystem.liststatus에서 로그 파일 필터링 (_success 및 _log)

FileSystem.listStatus 메서드를 사용하는 동안 로그 파일을 필터링하고 로그 파일이 아닌 파일 만 나열하려고합니다. 내가 어떻게 해? 감사

해결법

  1. ==============================

    1.FileInputFormat (행 62)의 소스를 보면 밑줄이나 마침표로 시작하는 파일을 무시하는 전용 정적 PathFilter가 있습니다. 비공개로, 당신은 코드의 사본을 만들거나 입력 파일이 항상 부분으로 시작한다면 충분합니다 (즉, 다중 출력을 사용하지 않았습니다)

    FileInputFormat (행 62)의 소스를 보면 밑줄이나 마침표로 시작하는 파일을 무시하는 전용 정적 PathFilter가 있습니다. 비공개로, 당신은 코드의 사본을 만들거나 입력 파일이 항상 부분으로 시작한다면 충분합니다 (즉, 다중 출력을 사용하지 않았습니다)

  2. ==============================

    2.이것이 _SUCCESS 파일을 제거하는 방법입니다

    이것이 _SUCCESS 파일을 제거하는 방법입니다

    PathFilter clusterFileFilter = new PathFilter() {
                      public boolean accept(Path path) {
                        return path.getName().startsWith("part");
                      }
                    };
    
    
        FileStatus[] fileStatusArray = fs.listStatus(path, clusterFileFilter);
    
  3. from https://stackoverflow.com/questions/10817824/filter-log-files-success-and-log-in-filesystem-liststatus by cc-by-sa and MIT license