가상 미디어 집합
가상 미디어 집합(Virtual media set)은 원본 파일을 Foundry 저장소에 복사하지 않고 외부 시스템에서 직접 읽습니다. Foundry의 미디어 집합 인터페이스를 사용하면서 파일 저장 위치를 외부에 유지할 수 있습니다.
지원과 제한
Amazon S3는 Access key and secret 자격 증명만 지원하며 STS 역할 연결은 지원하지 않습니다. OneLake 및 Azure Blob Filesystem(ABFS)도 지원합니다. 에이전트 연결로 가상 미디어 집합 sync를 만들 수는 없습니다.
원천 시스템의 파일 갱신과 삭제를 자동으로 알지 못합니다. 등록 후 원천에서 삭제하면 집합에는 항목이 남지만 내용을 읽을 수 없게 됩니다. 변환한 항목은 Foundry 저장소에 보관되므로 변환 출력의 저장 비용은 발생합니다. 추가 입력 형식은 구성할 수 없습니다.
생성과 등록
Data Connection에서 미디어 sync를 구성할 때 Media set sync 대신 Virtual media set sync를 선택합니다.
Data Connection에서 가상 집합을 만든 뒤 Python 변환으로 항목을 등록할 수도 있습니다. 기본 필터보다 복잡한 파일 선택이나 자원 및 병렬성 제어가 필요한 경우에 사용합니다.
다음은 소스와 가상 집합을 연결한 등록 예시입니다. RID와 경로는 실제 값으로 바꿉니다. physical path는 소스에 설정한 subfolder를 기준으로 한 경로이고 media item path는 집합 안의 항목 경로입니다.
# from the transforms-external-systems library
from transforms.external.systems import external_systems, Source, ResolvedSource
# from the transforms-media library
from transforms.mediasets import MediaSetOutput
from transforms.api import transform
@external_systems(
# the rid of the source created in Data Connection
source=Source("ri.magritte..source.abc123")
)
@transform(
# the rid of the virtual media set
output=MediaSetOutput("ri.mio.main.media-set.abc123")
)
def compute(output, source: ResolvedSource):
# Specify the physical path from the source and the media item path (name) of the media item to register.
# The physical path is relative to the "subfolder" configured in the source.
output.register_media_item("physical path", "media item path")
이 코드는 파일 내용의 변환이나 복사 대신 외부 파일 위치를 항목으로 등록합니다.