Mainframe Connector를 사용하면 메인프레임에서 Pub/Sub에 메시지를 게시할 수 있습니다. 예를 들어 이 기능을 사용하여 메인프레임을 BigQuery 또는 Cloud Storage와 통합하거나, Dataflow로 메시지 데이터를 보강하거나, Cloud Run 함수를 트리거할 수 있습니다.
시작하기 전에
- 아직 Mainframe Connector를 설치하지 않았다면 메인프레임에 Mainframe Connector를 설치합니다.
- Pub/Sub 명령어를 실행하려면 사용자 계정에 Pub/Sub 게시자 역할을 할당해야 합니다. 사용자 계정에 역할을 할당하는 방법에 관한 자세한 내용은 IAM을 사용하여 액세스 관리를 참고하세요.
- 애플리케이션 기본 사용자 인증 정보를 설정합니다.
Pub/Sub 주제에 메시지 게시
메인프레임에서 비구조화된 Pub/Sub 메시지를 게시하려면 다음과 같이 pubsub topics publish
명령어를 사용합니다.
//STEP01 EXEC BQSH //STDIN DD * pubsub topics publish TOPIC --data="Hello,World" /*
TOPIC
을 Pub/Sub 주제의 이름으로 바꿉니다. 필요한 형식은 projects/{project}/topics/{topic}
입니다.
Pub/Sub 주제에 메시지 게시
Mainframe Connector를 사용하면 메인프레임에서 Pub/Sub 주제로 구조화된 메시지를 게시할 수 있습니다. 예를 들어 이 기능을 사용하여 Pub/Sub을 통해 메인프레임에서 BigQuery로 Queued Sequential Access Method (QSAM) 레코드를 전송할 수 있습니다. 이 접근 방식을 사용하면 다음과 같은 이점이 있습니다.
- Dataflow 또는 Pub/Sub 동시 멀티스레딩 (SMT)을 통해 AI로 데이터를 변환하거나 데이터를 보강할 수 있습니다.
- 레코드를 메인프레임에서 Cloud Storage로 이동할 수 있습니다.
- 변경 데이터 캡처 (CDC)와 마찬가지로 메인프레임 애플리케이션 업데이트를 클라우드 기반 시스템에 동기화할 수 있습니다.
메인프레임에서 Pub/Sub 주제에 구조화된 메시지를 게시하려면 다음 단계를 따르세요.
- 메시지를 게시할 Pub/Sub 주제를 만듭니다. 원하는 경우 스키마를 사용하여 주제를 만들어 더 많은 제한사항을 적용할 수 있습니다. 자세한 내용은 주제 만들기 또는 주제를 만들 때 스키마 만들기 및 연결하기를 참고하세요.
- 트랜스코딩에 실패한 레코드에 관한 정보를 캡처하는 Pub/Sub 주제를 만듭니다. 이러한 주제를 스필오버 주제라고 합니다. Pub/Sub 주제 만들기에 관한 자세한 내용은 주제 만들기를 참고하세요.
- (선택사항) 레코드를 Pub/Sub으로 전송하기 전에 JSON으로 변환하려면 JSON 구성 파일을 구성합니다. 구성 파일을 제공하지 않으면 기본 JSON 구성이 사용됩니다.
(선택사항) 기본적으로 Pub/Sub 메시지에는 순서 키와 속성이 포함되지 않습니다. 오버플로 메시지는
_spillover
접미사가 있는 오버플로 주제로 전송됩니다. 기본값을 변경하려면 Pub/Sub 게시 구성 파일을 구성하면 됩니다. 예를 들어 다음 구성을 사용할 수 있습니다.{ "spillover-configuration": { "name": SPILLOVER_TOPIC_NAME } }
SPILLOVER_TOPIC_NAME
을 2단계에서 만든 스필오버 주제의 이름으로 바꿉니다. 필요한 형식은projects/{project}/topics/{topic}
입니다. 올바르게 디코딩되지 않은 메시지에 관한 정보는 이 스필오버 주제에 저장됩니다.qsam decode
명령어를 사용하여 메인프레임 레코드를 Pub/Sub에 게시하려면 다음 JCL을 실행합니다.//STEP01 EXEC BQSH //STDIN DD * qsam decode
INPUT
OUTPUT
\ --copybookCOPYBOOK
--transcode-configurationTRANSCODE-CONFIG
--output-format=JSONL --input-parameter=json-dialect=JSON_CONFIGURATION
--input-parameter=pubsub-publish-configuration=PUBSUB_CONFIGURATION
/*다음을 바꿉니다.
INPUT
: QSAM 파일의 데이터 경로입니다.OUTPUT
: 1단계에서 만든 Pub/Sub 주제의 데이터 경로입니다. 필수 형식은pubsub:projects/{project}/topics/{topic}
입니다.TRANSCODE-CONFIG
: 트랜스코딩 구성이 포함된 파일의 데이터 경로입니다. 트랜스코더 구성 형식에 관한 자세한 내용은 트랜스코더 구성을 참고하세요.JSON_CONFIGURATION
: (선택사항) JSON 구성 파일의 데이터 경로입니다. 구성 파일을 제공하지 않으면 기본 JSON 구성이 사용됩니다.PUBSUB_CONFIGURATION
: (선택사항) Pub/Sub 게시 구성 파일의 데이터 경로입니다. 구성 파일을 지정하지 않으면 기본 Pub/Sub 구성이 사용됩니다.