Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

데이터셋 표와 원시 파일 접근

변환의 표 데이터와 원시 파일은 서로 다른 인터페이스로 다룹니다. 표 읽기와 스키마 처리가 필요한지, 파일 경로와 바이트를 직접 처리할지에 따라 API를 선택합니다.

참조적용 범위
Dataset별칭으로 연결한 데이터셋 뷰의 표 읽기/쓰기, 필터, 파일 업로드와 메타데이터 마무리
FileSystemSpark 변환의 원시 파일 목록과 스트림, Hadoop 경로
FoundryDataSidecarFileSystem경량 단일 노드의 파일 목록과 파일 열기
FoundryDataSidecarFile경량 실행에서 실제 파일을 읽고 쓰는 객체
FileStatus논리 경로, 크기와 수정 시각을 담는 메타데이터 튜플

목록과 실제 파일 구분

Spark FileSystem.files는 파일 경로, 크기와 수정 시각의 DataFrame을 만들고 파일 크기에 따라 파티션을 구성합니다. FileSystem.ls와 FoundryDataSidecarFileSystem.ls는 FileStatus를 내보냅니다. Dataset.files의 반환값은 FileCollection입니다.

파일 내용을 읽으려면 파일시스템의 open을 사용합니다. 논리 파일 경로를 지정하고, 텍스트 모드와 바이너리 모드를 구분합니다. 원시 파일 복사에는 rb와 wb를 사용하여 바이트를 보존합니다. 파일 객체는 with 문으로 수명을 관리하는 것이 권장됩니다.

표와 메타데이터

Dataset.read_table은 Arrow, pandas, Polars와 원시 경로 형식을 제공합니다. 열 선택, 행 제한 또는 where 필터를 사용하면 지원 형식이 제한되고 current 모드만 사용할 수 있습니다. 구체적인 조합은 Dataset 계약을 따릅니다.

Dataset.write_table은 표를 업로드하고 스키마 및 열 설명을 갱신합니다. 원시 Parquet 파일을 직접 업로드했다면 성공한 업로드 뒤 put_metadata를 호출하여 스키마를 마무리합니다. 쓰기 모드는 데이터를 쓰기 전에 정해야 하며 modify와 append는 기존 파일 덮어쓰기 가능 여부가 다릅니다.

경량 호환성 예외

참조의미
LightweightException경량 호환성 검사의 기본 예외
LightweightNotImplementedError지원하지 않는 기능
LightweightTypeError타입 오류
LightweightValueError값 오류

파일 API를 사용하는 실행 환경은 변환 등록 방식에서 선택합니다. Spark 인터페이스의 메서드가 경량 실행에도 모두 존재한다고 가정하지 않습니다.

이 파일 및 표 API를 제공하는 런타임 입력과 출력 객체에서 엔진별 반환 유형, 증분 모드와 빈 출력 스키마 조건을 확인합니다. 전체 함수와 클래스는 Transforms Python API에서 선택할 수 있습니다.