복붙노트

[HADOOP] Mainframe에서 Hadoop으로 데이터를 가져 오는 방법

HADOOP

Mainframe에서 Hadoop으로 데이터를 가져 오는 방법

메인 프레임에 파일이 있습니다. 이 데이터를 Hadoop (HDFS) / HIVE에 푸시합니다.

메인 프레임 DB2 데이터베이스에 Sqoop을 사용하고 HIVE로 가져올 수 있지만 COBOL, VASM 등과 같은 파일은 어떻게됩니까?

내가 쓸 수있는 맞춤 flume 소스가 있습니까? 아니면 여기에서 사용할 대체 도구가 있습니까?

해결법

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

    1.COBOL은 파일 형식이 아닌 프로그래밍 언어입니다. 필요한 것이 COBOL 프로그램에 의해 생성 된 파일을 내보내는 것이면, C, C ++, Java, Perl, PL / I, Rexx 등으로 작성된 것과 같은 기술을 사용할 수 있습니다.

    COBOL은 파일 형식이 아닌 프로그래밍 언어입니다. 필요한 것이 COBOL 프로그램에 의해 생성 된 파일을 내보내는 것이면, C, C ++, Java, Perl, PL / I, Rexx 등으로 작성된 것과 같은 기술을 사용할 수 있습니다.

    일반적으로 플랫 파일, VSAM 파일 및 DB2 또는 IMS와 같은 DBMS의 세 가지 데이터 소스가 있습니다.

    DMBS에는 데이터를 플랫 파일로 복사하는 내보내기 유틸리티가 있습니다. DB2의 데이터는 정규화 될 것이므로 데이터를 이해하기 위해서는 관련 테이블의 내용이 필요할 것입니다.

    VSAM 파일은 IDCAMS 유틸리티를 통해 플랫 파일로 내보낼 수 있습니다.

    다른 코드 페이지가있는 다른 상자로 파일을 전송하기 전에 파일을 텍스트 형식으로 가져와야합니다. 혼합 텍스트 (코드 페이지가 변환되어야 함)와 2 진 (코드 페이지는 변환되지 않아야하지만 빅 엔디안에서 리틀 엔디안으로 변환되어야 함)을 다루려고하면 변환을 앞당기는 것보다 어렵습니다.

    변환은 메인 프레임의 SORT 유틸리티를 통해 수행 될 수 있습니다. 메인 프레임 SORT 유틸리티는 광범위한 데이터 조작 기능이있는 경향이 있습니다. 사용할 수있는 다른 메커니즘이 있습니다 (다른 유틸리티, 원하는 언어로 작성된 사용자 정의 코드, 구입 한 패키지). 그러나 이러한 상황에서 우리가하는 경향이 있습니다.

    모든 데이터가 텍스트가되도록 플랫 파일을 변환 한 후에는 FTP, SFTP 또는 FTPS를 통해 Hadoop 상자로 전송할 수 있습니다.

    이것은 주제의 철저한 적용은 아니지만, 시작하게 할 것입니다.

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

    2.Syncsort는 40 년 동안 메인 프레임 데이터를 처리해오고 있으며 (메인 프레임의 약 50 %가 이미 소프트웨어를 실행하고 있습니다.) 메인 프레임 데이터를 소스 처리하고 데이터 유형 변환을 처리하며 cobol 복사 책을 가져 와서 직접로드 할 수있는 DMX-H라는 특정 제품이 있습니다. HDFS로. 최근에 Syncsort는 Apache Hadoop 코어에 새로운 기능 향상을 기여했습니다. www.syncsort.com에서 연락을 취하시기 바랍니다. 최근의 Cloudera 로드쇼 데모에서이를 보여주었습니다.

    Syncsort는 40 년 동안 메인 프레임 데이터를 처리해오고 있으며 (메인 프레임의 약 50 %가 이미 소프트웨어를 실행하고 있습니다.) 메인 프레임 데이터를 소스 처리하고 데이터 유형 변환을 처리하며 cobol 복사 책을 가져 와서 직접로드 할 수있는 DMX-H라는 특정 제품이 있습니다. HDFS로. 최근에 Syncsort는 Apache Hadoop 코어에 새로운 기능 향상을 기여했습니다. www.syncsort.com에서 연락을 취하시기 바랍니다. 최근의 Cloudera 로드쇼 데모에서이를 보여주었습니다.

  3. ==============================

    3.2018 년 업데이트 :

    2018 년 업데이트 :

    메인 프레임에서 분산 플랫폼으로 데이터를 이동시키는 데 도움이되는 많은 상용 제품이 있습니다. 여기에 관심이있는 사람들을 위해 내가 만난 목록이 있습니다. 이들 모두는 질문에 설명 된대로 Z에 대한 데이터를 가져 와서 일부 변환을 수행하고 다른 플랫폼으로 데이터를 이동할 수있게합니다. 정확한 일치는 아니지만 업계가 변화하고 분석을 위해 데이터를 다른 플랫폼으로 이동시키는 목표가 커지고 있습니다. Data Virtualization Manager는 내가 본 것에서부터 데이터를 변형하기위한 가장 강력한 도구를 제공합니다.

    SyncSort IronStream

    IBM 공통 데이터 제공자

    Correlog

    IBM Data Virtualization Manager

  4. ==============================

    4.왜 안돼 : hadoop fs -put ?

    왜 안돼 : hadoop fs -put ?

  5. ==============================

    5.당기지 말고 밀어 넣으십시오 : Dovetailed Technologies의 Co : Z Launcher를 사용하십시오.

    당기지 말고 밀어 넣으십시오 : Dovetailed Technologies의 Co : Z Launcher를 사용하십시오.

    예를 들어 (JCL 발췌) :

    //FORWARD  EXEC PGM=COZLNCH
    //STDIN    DD *
    hadoop fs -put <(fromfile /u/me/data.csv) /data/data.csv
    # Create a catalog table
    hive -f <(fromfile /u/me/data.hcatalog)
    /*
    

    여기서 /u/me/data.csv (Hadoop에서 원하는 메인 프레임 기반 데이터) 및 /u/me/data.hcatalog (해당 HCatalog 파일)는 z / OS UNIX 파일 경로입니다.

    데이터가 로그 레코드가되는 더 자세한 예제는 Hadoop에 로그 추출을 참조하십시오.

  6. ==============================

    6.cobol 레이아웃 파일의 전송은 위에서 설명한 옵션을 통해 수행 할 수 있습니다. 그러나 실제 테이블을 Hive 테이블에 매핑하는 것은 cobol 레이아웃이 종속 절, 가변 길이 등으로 복잡한 형식을 가지므로 복잡한 작업입니다.

    cobol 레이아웃 파일의 전송은 위에서 설명한 옵션을 통해 수행 할 수 있습니다. 그러나 실제 테이블을 Hive 테이블에 매핑하는 것은 cobol 레이아웃이 종속 절, 가변 길이 등으로 복잡한 형식을 가지므로 복잡한 작업입니다.

    나는 아직 초기 단계에 있지만 달성하기 위해 맞춤 serde를 만들려고 노력했다. 그러나 여기에 귀하의 요구 사항에 따라 비 직렬화하는 방법에 대한 아이디어를 줄 수있는 링크가 있습니다.

    https://github.com/rbheemana/Cobol-to-Hive

  7. ==============================

    7.Cobrix가 문제를 해결할 수 있습니다. Spark 용 오픈 소스 COBOL 데이터 소스이며 언급 한 파일을 구문 분석 할 수 있습니다.

    Cobrix가 문제를 해결할 수 있습니다. Spark 용 오픈 소스 COBOL 데이터 소스이며 언급 한 파일을 구문 분석 할 수 있습니다.

  8. from https://stackoverflow.com/questions/15132071/how-to-pull-data-from-mainframe-to-hadoop by cc-by-sa and MIT license