ContainerTransform: 단일 노드 실행 객체
transforms.api.ContainerTransform은 경량 단일 노드 계산의 한 단계를 나타내는 호출 가능한 객체입니다. Param을 상속하는 매개변수들과 compute 함수로 구성합니다. 일반적인 생성 경로는 transform.using 데코레이터이며, 원래 compute 함수는 객체의 __call__()로 노출됩니다.
transforms.api.ContainerTransform(
transform, *, cpu_cores=None, memory_mb=None, memory_gb=None,
gpu_type=None, container_image=None, container_tag=None,
container_shell_command=None, incremental_override=None,
identifier_override=None,
)
생성자는 변환과 자원, 컨테이너 및 override 인자를 받습니다. 키워드 인자의 기본값은 모두 None입니다. 일반적인 자원 및 컨테이너 구성은 transform.using의 with_resources와 with_container 경로를 사용합니다.
증분 실행
incremental로 감싸 증분 실행할 수 있습니다. 비-Catalog 증분 입출력에는 v2_semantics=True가 필요합니다. 다음은 pandas를 run 의존성으로 추가한 저장소의 가상 예시입니다.
from transforms.api import Input, Output, incremental, transform
@incremental(v2_semantics=True)
@transform.using(
my_input=Input("/path/to/input"),
my_output=Output("/path/to/output"),
)
def compute(my_input, my_output):
my_output.write_pandas(my_input.pandas())
reference
파이프라인 안에서 이 변환을 고유하게 식별하는 참조입니다. compute 함수의 이름이 바뀐 것을 반영하도록 접근할 때마다 다시 계산합니다.
하위 호환 이름인 ContainerTransformsConfiguration도 사용할 수 있습니다.