소개

본 장에서는 Fujitsu사의 Mainframe인 XSP나 MSP 시스템에 대응하는 리호스팅 솔루션인 OpenFrame XSP 혹은 MSP의 마이그레이션 관련 기능을 소개한다. 마이그레이션 대상 자원의 종류에 따라 리소스,애플리케이션, 데이터베이스로 분류하여 기술한다.

1. 리호스팅과 마이그레이션

Mainframe의 업무 시스템을 개방형 시스템으로 변경하는 방법에는 크게 2가지가 있다.

  • 빅뱅(Big-Bang)

    기존 업무 시스템을 분석한 후 개방형 환경에 맞추어 재설계, 재개발하는 형태이다.

  • 리호스팅(Rehosting)

    기존 Mainframe이 제공하던 업무 환경을 개방형 환경에서도 그대로 제공하도록 별도의 솔루션을 이용한다.

빅뱅의 경우 많은 인력과 시간을 필요로 하는 반면, 리호스팅은 솔루션이 제공하는 업무 시스템 변환 절차만 수행함으로써 개방형 환경으로 업무 로직을 변환할 수 있기 때문에 인력 및 시간적인 측면에서 적은 비용이 요구된다.

OpenFrame은 가장 효율적인 리호스팅 솔루션의 하나로 Mainframe에서 운영 중인 사용자의 업무 시스템을 OpenFrame으로 전환하기 위해서는 Mainframe에서 사용하던 사용자 리소스를 OpenFrame에서 운영할 수 있도록 전환하는 절차가 필요하다. 이와 같이 OpenFrame 시스템으로 사용자 업무 로직을 옮기기 위해 리소스를 전환하는 절차를 OpenFrame 마이그레이션이라고 한다.

2. 마이그레이션 유형

OpenFrame에서 마이그레이션은 크게 4가지 유형으로 나뉜다.

  • 리소스 마이그레이션

  • 데이터셋 마이그레이션

  • 데이터베이스 마이그레이션

  • 애플리케이션 마이그레이션

각 마이그레이션에 대한 자세한 설명은 해당 절에서 설명한다.

OpenFrame 마이그레이션은 위와 같이 4가지 유형으로 나누기는 하지만 실제로 작업할 때에는 각 유형별로 별도로 마이그레이션이 이루어지기보다는 특정 마이그레이션 대상 업무와 연관된 리소스, 데이터셋, 데이터베이스, 애플리케이션의 단위로 함께 진행된다.

일반적으로 다음과 같은 작업을 통해 마이그레이션이 진행된다.

figure 1 1
마이그레이션 과정

본 문서는 일본어 환경의 Fujitsu Mainframe의 XSP 혹은 MSP와 AIM 시스템을 OpenFrame Batch for XSP 혹은 OpenFrame Batch for MSP와 OpenFrame AIM 시스템으로 마이그레이션하는 방법을 다룬다. 따라서, 이후 특별히 구분할 이유가 없으면 EBCDIC(JEF) 문자체계는 단순히 EBCDIC으로, ASCII(Shift-JIS)는 ASCII로, Fujitsu Mainframe은 Mainframe이라고 간단히 표기한다.

2.1. 리소스 마이그레이션

리소스 마이그레이션은 Mainframe에서 운영되고 있는 업무 시스템에서 사용되고 있는 JCL 및 ADL과 같은 리소스를 OpenFrame에서 사용할 수 있도록 전환하는 작업이다.

Fujitsu Mainframe의 문자체계는 EBCDIC(JEF) 코드이므로 기존 Fujitsu Mainframe에서 사용하던 리소스를 다운받은 EBCDIC(JEF) 문자체계로 작성된 리소스 파일을 OpenFrame 환경에서 사용할 수 있는 ASCII(Shift-JIS) 문자체계의 리소스로 변환하는 작업이다.

리소스는 OpenFrame 시스템에서 사용되는 모든 자원을 의미한다. 하지만 본 문서에서는 마이그레이션 과정이 특별히 구분되는 데이터셋, 데이터베이스 및 애플리케이션을 제외한 나머지 단순 텍스트성 자원을 리소스라고 통칭하기로 한다. 그리고, 전체 마이그레이션 대상 자원을 리소스(EBCDIC 텍스트), 데이터셋 리소스, 데이터베이스 리소스, 애플리케이션 리소스 유형으로 나누어 각각 리소스 마이그레이션, 데이터셋 마이그레이션, 데이터베이스 마이그레이션, 애플리케이션 마이그레이션으로 구분하여 기술한다.

일반적으로 리소스 마이그레이션은 다음과 같은 과정으로 진행된다.

figure 1 2
리소스 마이그레이션
  1. EBCDIC(JEF) 문자체계로 작성된 리소스를 ASCII(Shift-JIS) 문자체계의 리소스로 변환한다.

  2. OpenFrame에서 운용될 수 있도록 리소스의 유형별로 적재(import)하는 작업을 수행한다.

2.2. 데이터셋 마이그레이션

데이터셋 마이그레이션은 Mainframe에서 사용 중인 데이터셋을 OpenFrame에서 사용할 수 있도록 전환하는 작업이다. Mainframe에서 다운받은 EBCDIC 데이터 파일을 데이터셋의 레이아웃(필드 구조)에 따라 OpenFrame에서 사용할 수 있는 데이터셋으로 전환한다. 필드 타입에 따라서 단순 복사, Packed-Decimal, Zoned-Decimal에 대한 형 변환, EBCDIC에서 ASCII로의 문자 코드 변환등이 이루어진다.

일반적으로 데이터셋 마이그레이션은 다음과 같은 과정으로 진행된다.

figure dataset mig
데이터셋 마이그레이션
  1. Mainframe에서 EBCDIC으로 작성된 Copybook이나 레이아웃 정보(또는 데이터셋의 스키마 정보)를 ASCII로 변환한다.

  2. 변환된 Copybook이나 레이아웃 정보를 이용해서 데이터셋 스키마를 생성한다.

  3. Mainframe의 EBCDIC으로 작성된 데이터셋을 OpenFrame에서 사용할 수 있도록 ASCII 문자체계 기반의 데이터셋으로 변환(convert)하여 적재(import)한다. 변환 과정에서 1, 2에서 만든 스키마 정보가 이용된다.

2.3. 데이터베이스 마이그레이션

AIM DB 데이터베이스 마이그레이션은 데이터베이스의 스키마 정보를 정의한 ADL 리소스를 먼저 변환한 후 해당 스키마를 따르는 데이터베이스 데이터를 변환하여 OpenFrame 환경의 OpenFrame NDB로 적재하는 과정으로 이루어진다.

figure 1 4
데이터베이스 마이그레이션
  1. Mainframe의 EBCDIC ADL 스키마 파일을 ASCII로 변환한다.

  2. 1에서 변환한 ADL 스키마 파일을 이용하여 언로드 데이터베이스 파일을 마이그레이션하기 위한 스키마 파일을 생성한다.

  3. Mainframe에서 언로드한 EBCDIC으로 작성된 데이터 파일을 ASCII 문자체계 기반으로 변환한다. 이 변환 과정에서는 2에서 생성한 스키마 정보를 이용한다.

  4. 1에서 생성한 스키마 정보를 이용하여 OpenFrame NDB에 데이터베이스 오브젝트를 생성한다.

  5. 4에서 생성한 오브젝트에 3에서 변환한 NDB 데이터베이스 파일을 적재한다.

  6. 5에서 생성한 데이터를 이용하여 인덱스 정보를 생성한다.

2.4. 애플리케이션 마이그레이션

애플리케이션 마이그레이션은 Mainframe에서 개발된 애플리케이션 프로그램을 OpenFrame에서 사용할 수 있도록 전환하는 작업이다. 작업할 때 Mainframe에서 다운받은 EBCDIC으로 작성된애플리케이션 프로그램의 소스 코드가 필요하다.

일반적으로 애플리케이션 마이그레이션은 다음의 과정으로 진행된다.

figure 1 3
애플리케이션 마이그레이션
  1. EBCDIC 애플리케이션 소스를 ASCII 애플리케이션 소스로 변환한다.

  2. 변환된 ASCII 애플리케이션 소스를 컴파일하여 런타임 개체로 만든다.

  3. OpenFrame에서 운용될 수 있도록 배포하는 과정을 거친다.

3. 마이그레이션 시스템의 분석 절차

OpenFrame 마이그레이션 과정은 크게 사전 분석 단계와 변환 단계로 구분된다.

  • 사전 분석 단계

    프로젝트에 투입된 숙련된 컨설턴트에 의해서 이루어진다.

  • 변환 단계

    변환 단계에서는 Mainframe의 리소스에 따라 다른 변환 절차 및 변환 툴들이 제공된다. 변환 방법 및 툴에 대한 상세한 내용은 이어지는 각 장의 내용을 참고한다.