Data Connection으로 외부 시스템 연결하기
Data Connection은 외부 시스템이나 다른 Foundry 플랫폼 인스턴스의 데이터를 현재 Foundry에 동기화하는 애플리케이션입니다. 수집한 데이터는 데이터 통합, 모델 개발과 온톨로지에서 사용할 수 있습니다. 반대 방향으로는 웹훅과 데이터 내보내기를 통해 외부 시스템에 쓰기 반영(Writeback)을 수행할 수 있습니다.
작업 공간의 탐색 막대에서 Data Connection 아이콘을 선택합니다.
Applications Portal에서 이름을 검색하여 열 수도 있습니다.
조직의 데이터를 처음 연결한다면 초기 설정에서 네트워크 경로, 소스와 연결 기능을 준비합니다.
실패를 다루는 방식
외부 시스템과의 연결에서는 네트워크 상태, 디스크 장애나 응답하지 않는 원천 시스템 때문에 동기화가 실패할 수 있습니다. 수집이 불완전하면 그 데이터를 사용하는 분석과 파이프라인에도 영향을 줍니다.
Foundry는 실패 시 자동 재시도, 단순한 파일시스템 및 데이터베이스 동기화, 작은 배치와 복잡도가 낮은 쿼리, 통합된 데이터 상태 모니터링으로 이러한 문제를 줄입니다. 중요한 실패는 경보로 알리고 다른 파이프라인 상태 문제도 확인할 수 있도록 합니다.
원시 상태로 수집한 뒤 변환
Foundry는 가능한 한 원천 시스템의 원시 데이터를 외부 전처리 없이 그대로 수집하는 방식을 지향합니다. 이후의 변경은 브랜치와 버전으로 관리하는 Foundry 파이프라인에서 수행합니다.
이렇게 구성하면 원시 데이터가 온톨로지에 도달하기까지 어떤 변경을 거쳤는지 플랫폼 안에서 추적하고, 그 과정의 문제도 같은 환경에서 조사할 수 있습니다. Data Connection이 데이터를 목적지 데이터셋에 쓰기 전에 제공하는 변환 옵션을 의도적으로 제한하는 이유도 이 구분에 있습니다. 목적지 데이터셋은 후속 파이프라인의 시작점입니다.
스키마가 있는 테이블 데이터뿐 아니라 파일 기반 동기화도 지원하므로, 외부에서 하나의 형태로 미리 가공하지 않고 데이터를 가져올 수 있습니다.
커넥터와 확장
관계형 데이터베이스, FTPS, HDFS, S3, SFTP와 로컬 디렉터리 등 여러 시스템 유형의 연결을 지원합니다. 새로운 시스템을 연결할 때도 기존 플러그인을 재사용하거나 일부를 조정할 수 있으며, 예약 실행과 업로드 같은 공통 기능은 표준화되어 있습니다.
Foundry 전용 커넥터로 플랫폼 인스턴스 사이의 통신도 구성할 수 있습니다. 한 Foundry 인스턴스를 다른 인스턴스의 소스로 취급하여 배치 또는 스트리밍 동기화를 수행하고, 지원되는 증분 옵션을 사용할 수 있습니다.
운영 화면과 코드
Data Connection의 백엔드 서비스는 인증, 동기화, 예약 실행, 실행 조정과 모니터링에 필요한 작업을 처리합니다. 사용자는 화면에서 연결과 파이프라인을 구성하고 관리할 수 있습니다.
화면에서 제공하는 기능보다 세밀한 제어나 사용자 지정 처리가 필요하면 소스를 코드에서 사용하는 방법을 선택할 수 있습니다. 소스, 워커, 외부 통신 정책과 연결 기능의 관계는 핵심 개념에서 설명합니다.
외부 이벤트 수신
Listener는 외부 시스템이 Foundry로 보내는 연결을 처리합니다. HTTPS 웹훅은 스트림으로, 이메일은 미디어 집합으로 전달하며 WebSocket은 Compute Module의 서버와 양방향으로 연결합니다. 공급자별 인증, 전용 하위 도메인, 처리량과 보안 조건을 확인한 뒤 연동 유형을 선택합니다.
Slack 이벤트를 받아 AIP 챗봇의 응답을 되돌려주는 흐름은 Slack 챗봇 예제에서 수신 Listener, 쓰기용 소스, 함수 기반 액션과 Automate를 함께 구성합니다.
외부 시스템으로 요청 보내기
웹훅은 소스의 연결과 인증 정보를 사용하여 외부 API를 호출합니다. 입력 및 응답 매핑, 실행 제한, 함수 게시와 OAuth 인증을 구성할 수 있습니다. Microsoft Graph 예제는 토큰 발급과 메일 요청을 연결하고, 함수 연동은 웹훅 결과를 코드로 처리하는 방법을 설명합니다.
동기화 대상과 실행 조정
원천 탐색에서 테이블 관계와 파일 범위를 확인한 뒤 동기화를 만듭니다. 파일을 미디어 리소스로 사용하려면 미디어 집합 동기화를 구성합니다. JDBC의 수집량과 동시 쿼리는 증분 및 병렬화 설정으로 조정하고, 연결 후의 누락, 중복과 실행 지연은 동기화 문제 해결에서 원인을 구분합니다.
Marketplace로 구성 배포
동기화와 내보내기는 제품에서 소스를 선택하여 포함할 수 있습니다. 가상 테이블은 파일 리소스로 추가하며, 설치 대상 소스의 테이블 위치와 스키마가 원래 구성과 일치해야 합니다.
데이터셋과 스트림 반출
내보내기는 파일, 스트리밍 및 테이블 목적지를 지원하며, 소스의 반출 권한과 목적지 쓰기 권한을 함께 확인해야 합니다. 테이블 내보내기의 6개 모드는 전체 전송, 증분 전송과 대상 내용 비우기를 구분합니다. 기존 Export task는 에이전트 워커 기반의 지원 범위와 반출 통제 제한을 확인한 뒤 운영하거나 현행 기능으로 이전합니다.
외부 프로그램의 스트림 발행
외부 프로그램이 직접 레코드를 보내는 경우에는 Push 기반 수집에서 스트림 스키마, 앱의 작업 제한, 서비스 사용자 권한과 OAuth scope를 설정합니다. 공개 V2 API의 배치 요청과 cURL 예제는 필수 시각 필드를 포함하고 토큰과 비밀 정보를 명령 인수에 노출하지 않는 입력 방식을 사용합니다.
코드에서 외부 시스템 사용
소스 기반 외부 연결 변환은 저장소에 소스를 가져와 API, 파일과 데이터베이스를 사용하는 방법을 설명합니다. Python 소스 인터페이스는 기본 HTTPS 클라이언트, 비밀 정보, 갱신 가능한 인증 정보와 프록시 소켓을 다룹니다. 정적 키 대신 신뢰 관계를 설정하는 OIDC 인증과, 아직 운영 중인 이전 외부 연결 변환의 권한 및 이전 조건도 확인할 수 있습니다.
에이전트와 사설망 연결
에이전트 설치에서 전용 호스트, 네트워크와 재시작을 준비합니다. 공통 운영 설정은 인증서와 권한, 업그레이드 및 이동을 다루며 문제 해결은 연결과 프로세스 오류의 복구 절차를 설명합니다. 사설망 경로를 제공하는 에이전트 프록시와 호스트에서 작업을 실행하는 에이전트 워커는 역할과 제한이 다릅니다.