가상 테이블 등록 API (V2)
VirtualTable은 외부 시스템의 테이블을 Foundry에서 조회하고 관리할 수 있도록 등록한 리소스입니다. BigQuery, Databricks, Snowflake와 클라우드 스토리지의 오픈 테이블 형식 등을 사용할 수 있습니다. 원천을 지정하는 방식은 가상 테이블 구성의 분기로 구분합니다.
등록에 필요한 값
Create Virtual Table은 다음 값을 사용합니다.
- 경로의
connectionRid: 원천에 접근할 Connection의 RID입니다. - 본문의
parentRid: Foundry에서 가상 테이블을 만들 상위 폴더 RID입니다. - 본문의
name: 등록할 가상 테이블의 이름입니다. - 본문의
config: 원천 테이블이나 저장 위치를 지정하는 필수 포인터입니다. - 본문의
markings: 적용할 보안 표지 ID의 선택 목록입니다.
OAuth2로 호출하는 타사 애플리케이션에는 api:connectivity-virtual-table-write 권한 범위가 필요합니다. 해당 연결을 가상 테이블 등록에 사용할 권한도 있어야 합니다. 같은 상위 폴더의 이름이 겹치면 VirtualTableAlreadyExists/HTTP 409가 발생합니다.
원천 식별자 선택
| 원천 | config.type과 식별 정보 |
|---|---|
| Snowflake | snowflake: database, schema, table |
| Databricks Unity Catalog | unity: catalog, schema, table |
| AWS Glue | glue: database, table |
| 객체 스토리지의 Delta | delta: path |
| Iceberg | iceberg: tableIdentifier와 카탈로그 조건에 따른 warehousePath |
| 파일 기반 테이블 | files: format과 스킴 없는 path |
| BigQuery | bigquery: project, dataset, table |
Foundry에서 등록할 name과 원천의 테이블 이름은 별도 필드입니다. 원천 포인터의 필수 필드를 빠뜨린 채 Foundry 이름만 지정하지 않습니다.
등록 후 사용
응답은 VirtualTable이며 RID, 이름, 상위 폴더, 원천 포인터 및 보안 표지를 담습니다. 원천 포인터인 config는 응답에서도 필수입니다. 등록한 테이블의 실제 사용 방식과 커넥터별 조건은 가상 테이블을 따릅니다.
일정에 따라 외부 SQL 결과를 출력 데이터셋에 적재하려는 경우에는 TableImport, 원시 파일을 가져오려면 FileImport를 사용합니다. 가상 테이블 등록과 배치 수집 구성은 작업 대상과 입력 형태가 다릅니다.