이 페이지에서는 Mainframe Connector의 에이전트 기능을 사용하여 메인프레임 데이터를 자동으로 트랜스코딩하고 마이그레이션하는 방법을 설명합니다.
에이전트 통합의 주요 이점
Mainframe Connector는 데이터 현대화에 사용할 수 있는 에이전트 서페이스를 지원합니다. 에이전트를 Mainframe Connector와 함께 사용하여 Cloud Storage 및 로컬에서 기존 메인프레임 데이터를 현대화할 수 있습니다. 또한 Google Antigravity와 같은 에이전트 환경을 사용하여 메인프레임 데이터를 트랜스코딩하고 마이그레이션하는 데 필요한 Mainframe Connector 구성을 만들 수 있습니다.
트랜스코딩 및 데이터 마이그레이션 자동화
레거시 COBOL 구조 (REDEFINES, COMP-3, PIC X 등)와 최신 클라우드 데이터베이스 (예: BigQuery) 간의 불일치로 인해 트랜스코딩 구성을 수동으로 작성하면 오류가 발생하기 쉽고 복잡할 수 있습니다.
이러한 복잡성으로 인해 데이터 유형 매핑, 바이트 정렬, 압축된 10진수 변환에 오류가 발생하는 경우가 많습니다.
이 프로세스를 간소화하기 위해 Mainframe Connector는 Google Antigravity와 같은 LLM 기반 에이전트에서 사용하도록 설계된 집중 도구 모음 (API 및 CLI 엔드포인트)과 전용 기술 파일인 에이전트 기능을 지원합니다. 이 통합을 통해 에이전트는 트랜스코딩 구성 파일을 자율적으로 초안 작성, 엄격하게 검증, 자체 수정, 테스트할 수 있습니다. 그런 다음 에이전트는 생성된 구성을 사용하여 Cloud Storage 또는 로컬 스토리지의 기존 데이터를 BigQuery 또는 다른 데이터베이스로 마이그레이션할 수 있습니다.
Mainframe Connector에서 에이전트 기능을 사용하면 다음과 같은 이점이 있습니다.
- 자동 초안 작성: Google Antigravity는 COBOL 카피북 및 사용자 정의 비즈니스 규칙을 기반으로 초기 구성을 생성할 수 있습니다.
- 빠른 의견 루프: 기본 제공 검증 도구를 사용하면 에이전트가 데이터를 처리하기 전에 구성을 빠르게 테스트하고 오류를 자체 수정할 수 있습니다.
- 바이트 수준 검사: 에이전트는 원시 바이너리 데이터를 검사하여 정렬 및 인코딩 문제를 진단할 수 있습니다.
- 결정적 테스트: 경량의 단일 스레드 명령어는 에이전트의 추론 프로세스를 위한 안정적인 테스트 환경을 제공합니다.
시작하기 전에
- 에이전트 기능을 사용하려면 최신 버전의 Mainframe Connector를 설치해야 합니다. 에이전트 기능은 버전 5.20부터 제공됩니다.
- 에이전트 기술을 실행하려면 Mainframe Connector를 설치한 동일한 머신에 Google Antigravity와 같은 에이전트 CLI 또는 환경을 설치해야 합니다.
다음 명령어를 사용하여 에이전트 기술 파일을 환경의 기술 폴더로 추출합니다.
java -jar mainframe-connector.jar agent skill-file --output-dir SKILLS_FOLDER_PATH
에이전트 통합 작동 방식
Mainframe Connector 기술 파일에는 에이전트가 트랜스코딩 구성 메인프레임 카피북 및 데이터 파일을 만들고, 검증하고, 테스트할 수 있도록 하는 데 필요한 모든 정보가 포함되어 있습니다. 기본 Mainframe Connector CLI 명령어를 추상화하고 에이전트가 제품과 상호작용할 수 있는 간소화된 인터페이스를 제공합니다.
기술 파일을 사용하여 에이전트에 프롬프트를 표시하면 에이전트가 AI에 최적화된 버전의 Mainframe Connector 명령어를 실행할 수 있습니다. 카피북과 샘플 데이터를 제공하면 에이전트가 트랜스코딩 구성 파일을 만들고 실제 데이터에 대해 검증할 수 있습니다. 프롬프트에서 에이전트에 트랜스코딩에 적용할 컨텍스트와 특수 규칙을 제공해야 합니다.
에이전트 워크플로
에이전트 워크플로는 5단계로 구성되어 에이전트가 초기 사용자 요청에서 작동하는 검증된 구성으로 진행할 수 있습니다. 사용자의 프롬프트 후 에이전트는 다음 단계를 자율적으로 완료할 수 있습니다.
| 단계 | 설명 |
|---|---|
| 시작 | 사용자가 에이전트에 트랜스코딩 구성 파일을 만들도록 프롬프트를 표시합니다. 사용자는 선택적으로 COBOL 카피북, 커스텀 비즈니스 규칙 (예: "모든 FILLER 필드 삭제"), 선택적 샘플 EBCDIC 데이터를 제공할 수 있습니다. |
| 초안 작성 |
에이전트는 configuration-doc 참조를 읽어
서식 규칙을 이해한 다음 초안 구성
파일을 생성합니다.
|
| 검증 |
에이전트는 초안의 구문과 구조를 검증하기 위해
validate-configuration을 실행하고, 오류를 수정하고, 구조적 청사진을 확인합니다.
|
| 테스트 |
샘플 데이터가 제공되면 에이전트는 구성을 테스트하기 위해
simple-encode 또는 simple-decode를 실행하고
출력이 예상과 일치하는지 확인하기 위해
inspect-data를 사용합니다.
|
| 완료 |
에이전트는 대상 DDL을 사용하여
generate-target-ddl을 생성하고 작동하는
구성 및 DDL을 사용자에게 제공합니다.
|
사용 사례
다음 예는 에이전트 기능을 사용하여 데이터를 트랜스코딩하고 마이그레이션하는 방법을 보여줍니다.
예 1: 카피북을 사용하여 BigQuery의 데이터 스키마 생성
다음 샘플 프롬프트는 에이전트 기능을 사용하여 메인프레임 카피북의 데이터를 트랜스코딩하고 BigQuery 테이블을 생성하는 방법을 보여줍니다.
샘플 프롬프트
Your task is to produce a transcode configuration file and target DDL for a
mainframe dataset using the Mainframe Connector skill.
You are migrating a master file from a European subsidiary's mainframe into
BigQuery. Each record holds a customer name, a city, and a price.
The source is an EBCDIC extract from a German z/OS system; the system metadata
gives its CCSID as 1140.
The data is staged here in this directory:
- `copybook.cpy`: the COBOL layout.
- `input.dat`: the binary extract itself (CCSID 1140 - the German Euro-enabled
EBCDIC code page).
Produce two artifacts here:
1. `config.json`: the transcode configuration that correctly decodes this file.
2. `schema.sql`: the BigQuery `CREATE TABLE` DDL for the destination.
예 2: 트랜스코딩 후 BigQuery에 데이터 업로드
다음 프롬프트는 에이전트 기능을 사용하여 이전 예의 트랜스코딩된 데이터를 BigQuery에 업로드하는 방법을 보여줍니다.
샘플 프롬프트
Using the Mainframe Connector skill and the config.json and schema.sql files
you created before, migrate the data to BigQuery at
`table_name.dataset_name.project_id`.
예 3: 개인 정보 보호 제어를 사용하여 PostgreSQL 데이터베이스에 배포
다음 프롬프트는 에이전트 기능을 사용하여 이전 예의 트랜스코딩된 데이터를 PostgreSQL에 배포하는 동시에 PII 데이터를 삭제하는 방법을 보여줍니다.
샘플 프롬프트
Using the Mainframe Connector skill, migrate the data to Cloud SQL for
PostgreSQL at `table_name.schema_name.host_name`.
Compliance constraint: `CUST-NAME` and `CITY` are classified as
personally identifying or residency restricted information. They must NOT
appear in the PostgreSQL CSV staging file, must NOT decode into a JSM
string at any point, and must NOT appear in the Postgres table DDL.
Only `PRICE-TEXT` should appear.
Deliverables in the current working directory:
1. `config-postgres.json`: a NEW transcode configuration (do not overwrite
the BigQuery config.json).
2. `schema-postgres.sql`: the PostgreSQL `CREATE TABLE` DDL for the
destination.
3. `copy-postgres.sql`: the PostgreSQL `COPY FROM` command to load the
data into the table.
에이전트 명령어 모음
다음 명령어는 LLM 에이전트를 위해 설계되었습니다.
agent configuration-doc
LLM 에이전트의 구성 문서를 stdout에 출력합니다.
Synopsis
agent configuration-doc [-h]
플래그 및 인수
agent configuration-doc 명령어는 다음 플래그와 인수를 사용합니다.
--help또는-h- (선택사항) 이 도움말 메시지를 표시합니다.
agent inspect-data
특정 바이트 오프셋에서 시작하는 단일 논리 레코드를 읽은 다음 16진수 덤프와 텍스트 표현을 출력합니다.
Synopsis
agent inspect-data [-h] [--byte-offset=BYTEOFFSET]
--input=INPUTPATH
플래그 및 인수
agent inspect-data 명령어는 다음 플래그와 인수를 사용합니다.
--byte-offset=BYTEOFFSET- (선택사항) 읽기를 시작할 파일 내의 절대 바이트 오프셋을 지정합니다. 기본값은 0입니다.
--help또는-h- (선택사항) 이 도움말 메시지를 표시합니다.
--input=INPUTPATH : DataPath- 입력 데이터 경로를 지정합니다.
agent simple-decode
에이전트 디버깅을 위해 메인프레임 파일의 일부 행을 stdout으로 디코딩합니다.
Synopsis
agent simple-decode [-h] [--byte-offset=BYTEOFFSET]
--copybook=COPYBOOKPATH
--input=INPUTPATH
[--limit=LIMIT]
[--output=OUTPUTPATH]
--transcode-configuration=CONFIGPATH
플래그 및 인수
agent simple-decode 명령어는 다음 플래그와 인수를 사용합니다.
--byte-offset=BYTEOFFSET- (선택사항) 읽기를 시작할 입력 파일의 절대 바이트 오프셋을 지정합니다. 기본값은 0입니다.
--copybook=COPYBOOKPATH : DataPath- 카피북의 데이터 경로를 지정합니다.
--help또는-h- (선택사항) 이 도움말 메시지를 표시합니다.
--input=INPUTPATH : DataPath- 입력 데이터 경로를 지정합니다.
--limit=LIMIT- (선택사항) 디코딩을 시도할 레코드의 최대 개수를 지정합니다.
record_filter_condition에 의해 삭제된 레코드는 이 한도에 계속 반영됩니다. 기본값은 5입니다. --output=OUTPUTPATH : DataPath- (선택사항) 디코딩된 JSON 출력의 대상을 지정합니다. 제공되지 않으면 기본적으로
stdout으로 설정됩니다. --transcode-configuration=CONFIGPATH : DataPath- 트랜스코딩 구성의 데이터 경로를 지정합니다. 트랜스코더 구성 형식에 관한 자세한 내용은 트랜스코더 구성을 참조하세요.
agent simple-encode
JSON 파일을 메인프레임 EBCDIC 바이너리 데이터로 다시 인코딩합니다.
Synopsis
agent simple-encode [-h] --copybook=COPYBOOKPATH
--input=INPUTPATH
--output=OUTPUTPATH
--transcode-configuration=CONFIGPATH
플래그 및 인수
agent simple-encode 명령어는 다음 플래그와 인수를 사용합니다.
--copybook=COPYBOOKPATH : DataPath- 카피북의 데이터 경로를 지정합니다.
--help또는-h- (선택사항) 이 도움말 메시지를 표시합니다.
--input=INPUTPATH : DataPath- 입력 JSON 데이터 경로를 지정합니다.
--output=OUTPUTPATH : DataPath- 출력 바이너리 데이터 경로를 지정합니다.
--transcode-configuration=CONFIGPATH : DataPath- 트랜스코딩 구성의 데이터 경로를 지정합니다. 트랜스코더 구성 형식에 관한 자세한 내용은 트랜스코더 구성을 참조하세요.
agent validate-configuration
카피북 및 데이터베이스 규칙에 대해 트랜스코더 구성의 유효성을 검사합니다.
Synopsis
agent validate-configuration [-h] --copybook=COPYBOOKPATH
--database=DATABASE
--transcode-configuration=CONFIGPATH
플래그 및 인수
agent validate-configuration 명령어는 다음 플래그와 인수를 사용합니다.
--copybook=COPYBOOKPATH : DataPath- 카피북의 데이터 경로를 지정합니다.
--database=DATABASE- 대상 데이터베이스 (예:
BIGQUERY,POSTGRES,MYSQL)를 지정합니다. --help또는-h- (선택사항) 이 도움말 메시지를 표시합니다.
--transcode-configuration=CONFIGPATH : DataPath- 초안 트랜스코딩 구성이 포함된 데이터 경로를 지정합니다. 트랜스코더 구성 형식에 관한 자세한 내용은 트랜스코더 구성을 참조하세요.