OutputFileDatasetConfig 클래스
실행의 출력을 복사하고 FileDataset으로 승격하는 방법을 나타냅니다.
OutputFileDatasetConfig를 사용하면 컴퓨팅 대상의 특정 로컬 경로를 지정된 대상에 업로드할 방법을 지정할 수 있습니다. 생성자에 인수가 전달되지 않으면 이름, 대상 및 로컬 경로가 자동으로 생성됩니다.
인수를 전달하지 않는 예제:
workspace = Workspace.from_config()
experiment = Experiment(workspace, 'output_example')
output = OutputFileDatasetConfig()
script_run_config = ScriptRunConfig('.', 'train.py', arguments=[output])
run = experiment.submit(script_run_config)
print(run)
출력을 만든 다음 출력을 테이블 형식 데이터 세트로 승격하고 이름 foo에 등록하는 예제입니다.
workspace = Workspace.from_config()
experiment = Experiment(workspace, 'output_example')
datastore = Datastore(workspace, 'example_adls_gen2_datastore')
# for more information on the parameters and methods, please look for the corresponding documentation.
output = OutputFileDatasetConfig().read_delimited_files().register_on_complete('foo')
script_run_config = ScriptRunConfig('.', 'train.py', arguments=[output])
run = experiment.submit(script_run_config)
print(run)
OutputFileDatasetConfig를 초기화합니다.
OutputFileDatasetConfig를 사용하면 컴퓨팅 대상의 특정 로컬 경로를 지정된 대상에 업로드할 방법을 지정할 수 있습니다. 생성자에 인수가 전달되지 않으면 이름, 대상 및 로컬 경로가 자동으로 생성됩니다.
인수를 전달하지 않는 예제:
workspace = Workspace.from_config()
experiment = Experiment(workspace, 'output_example')
output = OutputFileDatasetConfig()
script_run_config = ScriptRunConfig('.', 'train.py', arguments=[output])
run = experiment.submit(script_run_config)
print(run)
출력을 만든 다음 출력을 테이블 형식 데이터 세트로 승격하고 이름 foo에 등록하는 예제입니다.
workspace = Workspace.from_config()
experiment = Experiment(workspace, 'output_example')
datastore = Datastore(workspace, 'example_adls_gen2_datastore')
# for more information on the parameters and methods, please look for the corresponding documentation.
output = OutputFileDatasetConfig().read_delimited_files().register_on_complete('foo')
script_run_config = ScriptRunConfig('.', 'train.py', arguments=[output])
run = experiment.submit(script_run_config)
print(run)
생성자
OutputFileDatasetConfig(name=None, destination=None, source=None, partition_format=None)
매개 변수
Name | Description |
---|---|
name
필수
|
이 실행과 관련된 출력의 이름입니다. 일반적으로 계보 용도로 사용됩니다. None으로 설정하면 이름이 자동으로 생성됩니다. 또한 이 이름은 대상에 업로드될 출력 파일 및 폴더를 쓸 수 있는 로컬 경로를 포함하는 환경 변수가 됩니다. |
destination
필수
|
출력을 복사할 대상입니다. None으로 설정하면 /dataset/{run-id}/{output-name} 경로 아래에 있는 workspaceblobstore 데이터 저장소에 출력을 복사합니다. 여기서 run-id 는 Run의 ID이고 output-name 은 위의 이름 매개 변수의 출력 이름입니다. 대상은 첫 번째 항목이 데이터 저장소이고 두 번째 항목은 데이터를 복사할 데이터 저장소 내의 경로인 튜플입니다. 데이터 저장소 내의 경로는 템플릿 경로일 수 있습니다. 템플릿 경로는 일반 경로일 뿐이지만 내부에 자리 표시자가 있습니다. 그런 다음 해당 자리 표시자는 적절한 시간에 해결됩니다. 자리 표시자에 대한 구문은 {자리 표시자}(예: /path/with/{placeholder})입니다. 현재 {run-id} 및 {output-name}의 두 자리 표시자만 지원됩니다. |
source
필수
|
데이터를 복사할 컴퓨팅 대상 내의 경로입니다. None으로 설정하면 컴퓨팅 대상의 OS 임시 디렉터리 내에서 만드는 디렉터리로 설정합니다. |
partition_format
필수
|
경로의 파티션 형식을 지정합니다. 기본값은 없음입니다. 각 경로의 파티션 정보는 지정된 형식에 따라 열로 추출됩니다. 형식 파트 '{column_name}'은 문자열 열을 만들고 , '{column_name:yyyy/MM/dd/HH/mm/ss}'는 날짜/시간 열을 만듭니다. 여기서 'yyyy', 'MM', 'dd', 'HH', 'mm' 및 'ss'는 날짜/시간 형식의 연도, 월, 일, 시간, 분 및 초를 추출하는 데 사용됩니다. 형식은 첫 번째 파티션 키의 위치에서 파일 경로의 끝까지 시작해야 합니다. 예를 들어 경로 '.를 지정합니다. /Accounts/2019/01/01/data.parquet' 여기서 파티션은 부서 이름 및 시간을 기준으로 합니다. partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet'은 'Accounts' 값과 날짜/시간 열 'PartitionDate'가 '2019-01-01'인 문자열 열을 만듭니다. |
name
필수
|
이 실행과 관련된 출력의 이름입니다. 일반적으로 계보 용도로 사용됩니다. None으로 설정하면 이름이 자동으로 생성됩니다. 또한 이 이름은 대상에 업로드될 출력 파일 및 폴더를 쓸 수 있는 로컬 경로를 포함하는 환경 변수가 됩니다. |
destination
필수
|
출력을 복사할 대상입니다. None으로 설정하면 /dataset/{run-id}/{output-name} 경로 아래에 있는 workspaceblobstore 데이터 저장소에 출력을 복사합니다. 여기서 run-id 는 Run의 ID이고 output-name 은 위의 이름 매개 변수의 출력 이름입니다. 대상은 첫 번째 항목이 데이터 저장소이고 두 번째 항목은 데이터를 복사할 데이터 저장소 내의 경로인 튜플입니다. 데이터 저장소 내의 경로는 템플릿 경로일 수 있습니다. 템플릿 경로는 일반 경로일 뿐이지만 내부에 자리 표시자가 있습니다. 그런 다음 해당 자리 표시자는 적절한 시간에 해결됩니다. 자리 표시자에 대한 구문은 {자리 표시자}(예: /path/with/{placeholder})입니다. 현재 {run-id} 및 {output-name}의 두 자리 표시자만 지원됩니다. |
source
필수
|
데이터를 복사할 컴퓨팅 대상 내의 경로입니다. None으로 설정하면 컴퓨팅 대상의 OS 임시 디렉터리 내에서 만드는 디렉터리로 설정합니다. |
partition_format
필수
|
경로의 파티션 형식을 지정합니다. 기본값은 없음입니다. 각 경로의 파티션 정보는 지정된 형식에 따라 열로 추출됩니다. 형식 파트 '{column_name}'은 문자열 열을 만들고 , '{column_name:yyyy/MM/dd/HH/mm/ss}'는 날짜/시간 열을 만듭니다. 여기서 'yyyy', 'MM', 'dd', 'HH', 'mm' 및 'ss'는 날짜/시간 형식의 연도, 월, 일, 시간, 분 및 초를 추출하는 데 사용됩니다. 형식은 첫 번째 파티션 키의 위치에서 파일 경로의 끝까지 시작해야 합니다. 예를 들어 경로 '.를 지정합니다. /Accounts/2019/01/01/data.parquet' 여기서 파티션은 부서 이름 및 시간을 기준으로 합니다. partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet'은 'Accounts' 값과 날짜/시간 열 'PartitionDate'가 '2019-01-01'인 문자열 열을 만듭니다. |
설명
OutputFileDatasetConfig를 실행에 인수로 전달할 수 있으며 컴퓨팅의 로컬 경로로 자동으로 변환됩니다. 원본 인수가 지정된 경우 사용됩니다. 그렇지 않으면 OS의 임시 폴더에 디렉터리를 자동으로 생성합니다. 그러면 원본 디렉터리 내의 파일 및 폴더가 출력 구성에 따라 대상에 복사됩니다.
기본적으로 출력이 대상 스토리지에 복사되는 모드는 탑재로 설정됩니다. 탑재 모드에 대한 자세한 내용은 as_mount 설명서를 참조하세요.
메서드
as_input |
후속 파이프라인 단계에서 출력을 입력으로 사용하는 방법을 지정합니다. |
as_mount |
탑재할 출력의 모드를 설정합니다. 탑재 모드의 경우 출력 디렉터리가 FUSE 탑재 디렉터리가 됩니다. 탑재된 디렉터리에 기록된 파일은 파일을 닫으면 업로드됩니다. |
as_upload |
업로드할 출력의 모드를 설정합니다. 업로드 모드의 경우 출력 디렉터리에 기록된 파일은 작업이 끝날 때 업로드됩니다. 작업이 실패하거나 취소되면 출력 디렉터리가 업로드되지 않습니다. |
as_input
후속 파이프라인 단계에서 출력을 입력으로 사용하는 방법을 지정합니다.
as_input(name=None)
매개 변수
Name | Description |
---|---|
name
필수
|
실행과 관련된 입력의 이름입니다. |
반환
형식 | Description |
---|---|
DatasetConsumptionConfig 입력 데이터를 전달하는 방법을 설명하는 인스턴스입니다. |
as_mount
탑재할 출력의 모드를 설정합니다.
탑재 모드의 경우 출력 디렉터리가 FUSE 탑재 디렉터리가 됩니다. 탑재된 디렉터리에 기록된 파일은 파일을 닫으면 업로드됩니다.
as_mount(disable_metadata_cache=False)
매개 변수
Name | Description |
---|---|
disable_metadata_cache
필수
|
로컬 노드에서 메타데이터를 캐시할지 여부, 비활성화된 경우 노드는 작업 실행 중에 다른 노드에서 생성된 파일을 볼 수 없습니다. |
반환
형식 | Description |
---|---|
OutputFileDatasetConfig 탑재할 모드가 설정된 인스턴스입니다. |
as_upload
업로드할 출력의 모드를 설정합니다.
업로드 모드의 경우 출력 디렉터리에 기록된 파일은 작업이 끝날 때 업로드됩니다. 작업이 실패하거나 취소되면 출력 디렉터리가 업로드되지 않습니다.
as_upload(overwrite=False, source_globs=None)
매개 변수
Name | Description |
---|---|
overwrite
필수
|
대상에 이미 있는 파일을 덮어쓸지 여부입니다. |
source_globs
필수
|
업로드할 파일을 필터링하는 데 사용되는 Glob 패턴입니다. |
반환
형식 | Description |
---|---|
OutputFileDatasetConfig 업로드할 모드가 설정된 인스턴스입니다. |