HDFS 내보내기

Definition

워크플로우 실행 결과를 hdfs에 저장하기 위해 사용합니다.
좌측 [데이터내보내기]노드 중 [HDFS내보내기]노드를 drag & drop 한 후 Property 항목을 입력합니다. Property 패널의 [더보기+] 버튼을 누르면 입력가능한 전체 Property 항목을 볼 수 있습니다.
expdata003

Set

[setting], [parameter] 설정은 [워크플로우] > [생성] > [기본구성]을 참고합니다.

Property

[Node Description] 작성 중인 노드명 입력

  1. path : 데이터 저장 경로 설정

  2. folder : 데이터 저장 폴더명. 날짜 표현식 입력하여 해당 날짜로 치환 가능하며, 관련 Guide는 아래와 같음

    • 날짜 표현식 : #{now:날짜 포맷}

    • 현재 날짜가 2019년 7월 3일 12시인 경우 아래와 같이 표현 가능

    • /test/#{now:yyyyMMdd} 로 지정시 /test/20190703 이란 디렉토리로 치환됨

      표현식설명
      #{now:yyyyMMdd}오늘 날짜 20190703 으로 치환
      #{now-1d:yyyy-MM-dd}어제 날짜 2019-07-02로 치환
      #{now-1w:yyyyMMddHH}1주일전 날짜 2019062612로 치환
  3. filename : Hadoop 처리 결과파일(기본파일명 : part-*)을 지정된 이름으로 변경

  4. format : 저장 포맷 설정(json, orc, parquet, csv, text 중 택1)

  5. mode : 저장모드 설정

    • error : 파일이 있으면 에러 처리
    • append : 다른 이름으로 파일 추가
    • overwrite : 기존 파일을 삭제하고 추가
    • ignore : 파일이 있으면 저장하지 않고, 에러 처리도 하지 않음
  6. header : 헤더 여부(true, false 중 택1)

  7. partitionBy : 특정 컬럼에 대해 Partitioning 하여 데이터 저장가능(컬럼 데이터별로 하위 폴더가 생성)

  8. option : key, value 설정(null을 문자열로 인식하는 것을 방지 할 수 있음)

  9. highAvailability : 네임노드의 HA구성 여부 결정

  10. nameservices : nameNode 명 기재

  11. namenode1 : 이중화 nameNode 의 첫번째IP

  12. namenode2 : 이중화 nameNode 의 두번째IP

  13. mlDataset

    • ML Dataset 등록여부 : ML Dataset을 등록할 경우 체크
    • ML Dataset Name : ML Dataset 명 입력
    • Description : ML Dataset 상세설명 입력
  14. catalogDataset

    • Catalog Dataset 등록여부 : Catalog Dataset을 등록할 경우 체크
    • targetBucket : Catalog Bucket 지정
    • Dataset Name : Catalog Dataset 명 입력
    • Catalog user id : Catalog user id 입력

Example

Sandbox에 적재된 서울특별시 대기오염 측정정보(2019년기준, 출처 : 공공데이터포털, https://www.data.go.kr)를 sampling 하여 이를 다시 hdfs에 저장합니다. 저장폴더에는 날짜표현식을 적용합니다.

  1. [HDFS불러오기], [random], [HDFS내보내기] 노드를 Designer에 Drag & Drop하여 워크플로우 생성
    expdata005
  2. [random]노드에서 비복원방식으로 10%만 추출(fraction 값을 0.1)하도록 설정
    expdata006
  3. [HDFS내보내기]노드에 아래와 같이 입력 후 추출데이터 확인
  4. [브라우저] 메뉴에서 추출된 데이터 확인가능
    expdata008
  5. [ML 데이터셋 등록] hdfs내보내기 노드에서 expdata008-1
    1. mlDataset 정보를 입력 및 체크박스 클릭
    2. 저장버튼으로 등록처리 후 확인 expdata008-2