다음을 통해 공유


자동 로더 옵션

cloudFiles 원본과 관련된 구성 옵션은 다른 구조적 스트리밍 원본 옵션과 별도의 네임스페이스에 있도록 cloudFiles 접두사가 붙습니다.

일반적인 자동 로더 옵션

디렉터리 목록 또는 파일 알림 모드에 대해 다음 옵션을 구성할 수 있습니다.

옵션
cloudFiles.allowOverwrites
유형: Boolean
입력 디렉터리 파일 변경에서 기존 데이터를 덮어쓰도록 허용할지 여부입니다.
이 구성을 활성화하는 것과 관련하여 몇 가지 주의 사항이 있습니다. 자세한 내용은 파일을 추가하거나 덮어쓸 때 자동 로더가 파일을 다시 처리하나요?를 참조하세요.
기본값: false
cloudFiles.backfillInterval
유형: Interval String
자동 로더는 지정된 간격으로 비동기 백필을 트리거할 수 있습니다.
예를 들어 1 day는 하루에 한 번 백필, 1 week는 일주일에 한 번 백필입니다. 파일 이벤트 알림 시스템은 업로드된 모든 파일의 100% 전송을 보장하지 않으므로 모든 파일이 결국 처리되도록 백필을 사용할 수 있습니다. 이 기능은 Databricks Runtime 8.4 (EoS) 이상에서 사용 가능합니다.
기본값: 없음
cloudFiles.format
유형: String
원본 경로의 데이터 파일 형식입니다. 허용되는 값은 다음과 같습니다.

기본값: 없음(필수 옵션)
cloudFiles.includeExistingFiles
유형: Boolean
스트림 처리 입력 경로에 기존 파일을 포함할지 아니면 초기 설정 후에 도착하는 새 파일만 처리할지 여부입니다. 이 옵션은 스트림을 처음 시작할 때만 평가됩니다. 스트림을 다시 시작한 후 이 옵션을 변경해도 효과가 없습니다.
기본값: true
cloudFiles.inferColumnTypes
유형: Boolean
스키마 유추를 활용할 때 정확한 열 형식을 유추할지 여부입니다. 기본적으로 열은 JSON 및 CSV 데이터 세트를 유추할 때 문자열로 유추됩니다. 자세한 내용은 스키마 유추를 참조하세요.
기본값: false
cloudFiles.maxBytesPerTrigger
유형: Byte String
모든 트리거에서 처리할 새 바이트의 최대 수입니다. 10g와 같은 바이트 문자열을 지정하여 각 마이크로 일괄 처리를 10GB의 데이터로 제한할 수 있습니다. 이는 유연한 최대값입니다. 각각 3GB인 파일이 있는 경우 Azure Databricks는 마이크로 일괄 처리에서 12GB를 처리합니다. cloudFiles.maxFilesPerTrigger와 함께 사용하면 Azure Databricks는 cloudFiles.maxFilesPerTrigger 또는 cloudFiles.maxBytesPerTrigger 중 먼저 도달하는 하한까지 소비합니다. 이 옵션은 Trigger.Once()와 함께 사용하면 효과가 없습니다(Trigger.Once()는 사용되지 않음).
기본값: 없음
cloudFiles.maxFileAge
유형: Interval String
중복 제거를 위해 파일 이벤트를 추적하는 기간입니다. Databricks는 이 매개 변수를 튜닝하는 것을 권장하지 않습니다. 단, 시간당 수백만 개의 파일로 데이터를 수집하는 경우에는 예외입니다. 자세한 내용은 이벤트 보존 섹션을 참조하세요.
cloudFiles.maxFileAge를 지나치게 과감하게 튜닝하면 중복 수집이나 파일 누락과 같은 데이터 품질 문제가 발생할 수 있습니다. 따라서 Databricks는 다른 데이터 수집 솔루션의 권장 사항과 유사하게 cloudFiles.maxFileAge를 90일과 같은 보수적인 값으로 설정할 것을 권장합니다.
기본값: 없음
cloudFiles.maxFilesPerTrigger
유형: Integer
모든 트리거에서 처리할 새 파일의 최대 수입니다. cloudFiles.maxBytesPerTrigger와 함께 사용하면 Azure Databricks는 cloudFiles.maxFilesPerTrigger 또는 cloudFiles.maxBytesPerTrigger 중 먼저 도달하는 하한까지 소비합니다. 이 옵션은 Trigger.Once()와 함께 사용하면 효과가 없습니다(사용되지 않음).
기본값: 1000
cloudFiles.partitionColumns
유형: String
파일의 디렉터리 구조에서 유추하려는 Hive 스타일 파티션 열의 쉼표로 구분된 목록입니다. Hive 스타일 파티션 열은 다음과 같은 등호로 결합된 키 값 쌍입니다.
<base-path>/a=x/b=1/c=y/file.format; 이 예에서 파티션 열은 a, bc입니다. 기본적으로 이러한 열은 스키마 유추를 사용하고 데이터를 로드할 <base-path>를 제공하는 경우 스키마에 자동으로 추가됩니다. 스키마를 제공하면 자동 로더는 이러한 열이 스키마에 포함될 것으로 예상합니다. 이러한 열을 스키마의 일부로 사용하지 않으려면 ""를 지정하여 이러한 열을 무시할 수 있습니다. 또한 아래 예와 같이 복잡한 디렉터리 구조에서 열이 파일 경로로 유추되기를 원할 때 이 옵션을 사용할 수 있습니다.
<base-path>/year=2022/week=1/file1.csv
<base-path>/year=2022/month=2/day=3/file2.csv
<base-path>/year=2022/month=2/day=4/file3.csv
cloudFiles.partitionColumnsyear,month,day로 지정하면 반환됩니다.
year=2022file1.csv이지만 monthday 열은 null입니다.
monthdayfile2.csvfile3.csv에 대해 올바르게 구문 분석됩니다.
기본값: 없음
cloudFiles.schemaEvolutionMode
유형: String
데이터에서 새 열이 발견될 때 스키마를 발전시키는 설정입니다. 기본적으로 열은 JSON 데이터 세트를 유추할 때 문자열로 유추됩니다. 자세한 내용은 스키마 진화를 참조하세요.
기본값: 스키마가 제공되지 않은 경우 "addNewColumns"
그렇지 않으면 "none".
cloudFiles.schemaHints
유형: String
스키마 유추 중에 자동 로더에 제공하는 스키마 정보입니다. 자세한 내용은 스키마 힌트를 참조하세요.
기본값: 없음
cloudFiles.schemaLocation
유형: String
유추된 스키마 및 후속 변경 내용을 저장할 위치입니다. 자세한 내용은 스키마 유추를 참조하세요.
기본값: 없음(스키마 유추 시 필요)
cloudFiles.useStrictGlobber
유형: Boolean
Apache Spark에서 다른 파일 원본의 기본 globbing 동작과 일치하는 엄격한 글로버를 사용할지 여부입니다. 자세한 내용은 일반적인 데이터 로드 패턴을 참조하세요. Databricks Runtime 12.2 LTS 이상에서 지원됩니다.
기본값: false
cloudFiles.validateOptions
유형: Boolean
자동 로더 옵션의 유효성을 검사하고 알 수 없거나 일치하지 않는 옵션에 대해 오류를 반환할지 여부입니다.
기본값: true

디렉토리 나열 옵션

다음 옵션은 디렉터리 목록 모드와 관련이 있습니다.

옵션
cloudFiles.useIncrementalListing(더 이상 사용되지 않음)
유형: String
이 기능은 더 이상 사용되지 않습니다. Databricks는 파일 알림 모드를 사용하는 것을 권장합니다.
cloudFiles.useIncrementalListing;
디렉터리 목록 모드에서 전체 목록 대신 증분 목록을 사용할지 여부입니다. 기본적으로 자동 로더는 주어진 디렉터리가 증분 목록에 적용 가능한지 자동으로 검색하기 위해 최선을 다합니다. 증분 목록을 명시적으로 사용하거나 각각 true 또는 false로 설정하여 전체 디렉터리 목록을 사용할 수 있습니다.
어휘 순서가 지정되지 않은 디렉터리에서 증분 목록을 잘못 활성화하면 자동 로더가 새 파일을 발견하지 못하게 됩니다.
Azure Data Lake Storage Gen2(abfss://), S3(s3://) 및 GCS(gs://)와 함께 작동합니다.
Databricks Runtime 9.1 LTS 이상에서 지원됩니다.
기본값: auto
사용 가능한 값: auto, true, false

파일 알림 옵션

파일 알림 모드와 관련이 있는 옵션은 다음과 같습니다.

옵션
cloudFiles.fetchParallelism
유형: Integer
큐 서비스에서 메시지를 가져올 때 사용할 스레드 수입니다.
기본값: 1
cloudFiles.pathRewrites
형식: JSON 문자열
여러 S3 버킷에서 파일 알림을 받는 queueUrl을 지정하고 이러한 컨테이너의 데이터에 액세스하도록 구성된 탑재 지점을 활용하려는 경우에만 필요합니다. bucket/key 경로의 접두사를 마운트 포인트로 변경하려면 이 옵션을 사용하십시오. 접두사만 다시 쓸 수 있습니다. 예를 들어, 구성을 위해
{"<databricks-mounted-bucket>/path": "dbfs:/mnt/data-warehouse"} 경로
s3://<databricks-mounted-bucket>/path/2017/08/fileA.json 경로를 dbfs:/mnt/data-warehouse/2017/08/fileA.json으로 다시 씁니다.
기본값: 없음
cloudFiles.resourceTag
유형: Map(String, String)
관련 리소스를 연결하고 식별할 수 있도록 하는 일련의 키-값 태그 쌍입니다. 예를 들면 다음과 같습니다.
cloudFiles.option("cloudFiles.resourceTag.myFirstKey", "myFirstValue")
.option("cloudFiles.resourceTag.mySecondKey", "mySecondValue")
AWS에 대한 자세한 내용은 Amazon SQS 비용 할당 태그Amazon SNS 항목에 대한 태그 구성을 참조하세요. (1)
Azure에 대한 자세한 내용은 네이밍 큐 및 메타데이터이벤트 구독에 대한 적용 범위를 참조하세요. 자동 로더는 이러한 키-값 태그 쌍을 JSON에 레이블로 저장합니다. (1)
GCP에 대한 자세한 내용은 레이블로 사용량 보고를 참조하세요. (1)
기본값: 없음
cloudFiles.useNotifications
유형: Boolean
파일 알림 모드를 사용하여 새 파일이 있는지 확인할지 여부입니다. false인 경우 디렉터리 나열 모드를 사용합니다. 자동 로더 파일 검색 모드 비교를 참조하세요.
기본값: false

(1) 자동 로더는 기본적으로 최상의 노력으로 다음 키-값 태그 쌍을 추가합니다.

  • vendor: Databricks
  • path: 데이터가 로드되는 위치입니다. 레이블 지정 제한으로 인해 GCP에서 사용할 수 없습니다.
  • checkpointLocation: 스트림의 검사점 위치입니다. 레이블 지정 제한으로 인해 GCP에서 사용할 수 없습니다.
  • streamId: 스트림의 전역 고유 식별자입니다.

이러한 키 이름은 예약되어 있으며 해당 값을 덮어쓸 수 없습니다.

파일 형식 옵션

자동 로더를 사용하면 JSON, CSV, PARQUET, AVRO, TEXT, BINARYFILEORC 파일을 수집할 수 있습니다.

일반 옵션

다음 옵션은 모든 파일 형식에 적용됩니다.

옵션
ignoreCorruptFiles
유형: Boolean
손상된 파일을 무시할지 여부를 나타냅니다. true인 경우 손상된 파일이 발견될 때 Spark 작업이 계속 실행되고 읽은 내용이 계속 반환됩니다. numSkippedCorruptFiles로 관찰 가능
Delta Lake 기록의 operationMetrics 열. Databricks Runtime 11.3 LTS 이상에서 지원됩니다.
기본값: false
ignoreMissingFiles
유형: Boolean
누락된 파일을 무시할지 여부를 나타냅니다. true인 경우 누락된 파일이 있는 경우 Spark 작업이 계속 실행되고 읽은 내용이 계속 반환됩니다. Databricks Runtime 11.3 LTS 이상에서 지원됩니다.
기본값: 자동 로더에는 false, true(레거시)에는 COPY INTO
modifiedAfter
형식: Timestamp String(예: 2021-01-01 00:00:00.000000 UTC+0)
제공된 타임스탬프 다음에 수정 타임스탬프가 있는 파일을 수집하는 선택적 타임스탬프입니다.
기본값: 없음
modifiedBefore
형식: Timestamp String(예: 2021-01-01 00:00:00.000000 UTC+0)
제공된 타임스탬프 이전의 수정 타임스탬프가 있는 파일을 수집하기 위한 선택적 타임스탬프입니다.
기본값: 없음
pathGlobFilter 또는 fileNamePattern
유형: String
파일 선택을 위해 제공할 잠재적인 glob 패턴입니다. 다음과 동일합니다:
PATTERNCOPY INTO(구형) 안에 있습니다. fileNamePatternread_files에서 사용할 수 있습니다.
기본값: 없음
recursiveFileLookup
유형: Boolean
스키마 유추 중에 파티션 유추를 건너뛸지 여부입니다. 로드되는 파일에는 영향을 주지 않습니다.
기본값: false

JSON 옵션

옵션
allowBackslashEscapingAnyCharacter
유형: Boolean
백슬래시가 그 뒤에 오는 모든 문자를 이스케이프할 수 있도록 허용할지 여부입니다. 사용하도록 설정하지 않으면 JSON 사양에 의해 명시적으로 나열된 문자만 이스케이프할 수 있습니다.
기본값: false
allowComments
유형: Boolean
구문 분석된 콘텐츠 내에서 Java, C, C++ 스타일 주석('/', '*''//' 변형)을 사용하도록 허용할지 여부입니다.
기본값: false
allowNonNumericNumbers
유형: Boolean
숫자가 아닌(NaN) 토큰 집합을 유효한 부동 숫자 값으로 허용할지 여부입니다.
기본값: true
allowNumericLeadingZeros
유형: Boolean
정수가 추가(무시 가능) 0으로 시작하는 것이 허용되는지 여부(예: 000001)입니다.
기본값: false
allowSingleQuotes
유형: Boolean
문자열(이름 및 문자열 값)을 인용할 때 작은따옴표(아포스트로피, 문자 '\') 사용을 허용할지 여부입니다.
기본값: true
allowUnquotedControlChars
유형: Boolean
JSON 문자열에 캡슐화되지 않은 컨트롤 문자(탭 및 줄 바꿈 문자를 포함하여 값이 32보다 작은 ASCII 문자)를 포함하도록 허용할지 여부입니다.
기본값: false
allowUnquotedFieldNames
유형: Boolean
따옴표가 지정되지 않은 필드 이름(JavaScript에서 허용되지만 JSON 사양에서는 허용되지 않음)의 사용을 허용할지 여부입니다.
기본값: false
badRecordsPath
유형: String
잘못된 JSON 레코드에 대한 정보를 기록하기 위한 파일을 저장하는 경로입니다.
기본값: 없음
columnNameOfCorruptRecord
유형: String
형식이 잘못되어 구문을 분석할 수 없는 레코드를 저장하기 위한 열입니다. 구문 분석에 대한 modeDROPMALFORMED로 설정되면 이 열은 비어 있습니다.
기본값: _corrupt_record
dateFormat
유형: String
날짜 문자열을 구문 분석하기 위한 형식입니다.
기본값: yyyy-MM-dd
dropFieldIfAllNull
유형: Boolean
스키마 유추 중에 모든 Null 값 또는 빈 배열 및 구조체의 열을 무시할지 여부입니다.
기본값: false
encoding 또는 charset
유형: String
JSON 파일 인코딩의 이름입니다. 옵션 목록은 java.nio.charset.Charset을 참조하세요. UTF-16UTF-32이면 multilinetrue를 사용할 수 없습니다.
기본값: UTF-8
inferTimestamp
유형: Boolean
타임스탬프 문자열을 TimestampType으로 유추할지 여부입니다. 다음으로 설정된 경우,
true: 스키마 추론이 눈에 띄게 오래 걸릴 수 있습니다. 자동 로더와 함께 사용하려면 cloudFiles.inferColumnTypes를 설정해야 합니다.
기본값: false
lineSep
유형: String
연속된 두 JSON 레코드 사이의 문자열입니다.
기본값: 없음(\r, \r\n, \n 포함)
locale
유형: String
java.util.Locale 식별자입니다. JSON 내의 기본 날짜, 타임스탬프, 10진수 구문 분석에 영향을 줍니다.
기본값: US
mode
유형: String
잘못된 형식의 레코드를 처리하기 위한 파서 모드입니다. 다음 중 하나입니다. 'PERMISSIVE'
'DROPMALFORMED' 또는 'FAILFAST'입니다.
기본값: PERMISSIVE
multiLine
유형: Boolean
JSON 레코드가 여러 줄에 걸쳐 있는지 여부입니다.
기본값: false
prefersDecimal
유형: Boolean
가능하면 문자열 DecimalType 을 float 또는 double 형식 대신 유추하려고 시도합니다. 또한 스키마 유추 기능을 활성화해서 사용해야 합니다.
inferSchema를 사용하거나 Auto Loader와 함께 cloudFiles.inferColumnTypes를 사용하기.
기본값: false
primitivesAsString
유형: Boolean
숫자 및 부울과 같은 기본 형식을 StringType으로 유추할지 여부입니다.
기본값: false
readerCaseSensitive
유형: Boolean
rescuedDataColumn이 활성화된 경우 대/소문자 구분 동작을 지정합니다. true이면 스키마와 대소문자가 다른 데이터 열을 복구합니다. 그렇지 않으면 대소문자를 구분하지 않고 데이터를 읽습니다. Databricks Runtime에서 사용 가능합니다.
13.3 이상.
기본값: true
rescuedDataColumn
유형: String
데이터 유형 불일치 또는 스키마 불일치(열명 대/소문자 포함)로 인해 구문 분석할 수 없는 모든 데이터를 별도의 열에 수집할지에 관한 여부입니다. 이 열은 자동 로더를 사용할 때 기본적으로 포함됩니다. 자세한 내용은 복구된 데이터 열이란?을 참조하세요.
COPY INTO을 사용하여 스키마를 수동으로 설정할 수 없기 때문에 COPY INTO(레거시)에서는 구조 복구된 데이터 열을 지원하지 않습니다. Databricks는 대부분의 수집 시나리오에 자동 로더를 사용하는 것이 좋습니다.
기본값: 없음
singleVariantColumn
유형: String
주어진 문자열을 열 이름으로 하여 전체 JSON 문서를 단일 Variant 열로 파싱하여 수집할지 여부입니다. 비활성화된 경우 JSON 필드가 각 열에 저장됩니다.
기본값: 없음
timestampFormat
유형: String
타임스탬프 문자열 구문 분석 형식입니다.
기본값: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
유형: String
java.time.ZoneId은 타임스탬프와 날짜를 구문 분석할 때 사용하는 것입니다.
기본값: 없음

CSV 옵션

옵션
badRecordsPath
유형: String
잘못된 CSV 레코드에 대한 정보를 기록하기 위한 파일을 저장하는 경로입니다.
기본값: 없음
charToEscapeQuoteEscaping
유형: Char
따옴표를 이스케이프하는 문자를 이스케이프할 때 사용되는 문자입니다. 예를 들어 [ " a\\", b ] 레코드의 경우 다음과 같습니다.
  • '\'을(를) 회피할 문자가 정의되지 않은 경우, 레코드가 구문 분석되지 않습니다. 파서는 [a],[\],["],[,],[ ],[b] 문자를 읽고 닫는 따옴표를 찾을 수 없으므로 오류를 발생시킵니다.
  • 문자를 '\'에서 '\'으로 이스케이프하도록 정의하면, 레코드는 [a\][b]의 2개의 값으로 읽힙니다.

기본값: '\0'
columnNameOfCorruptRecord
자동 로더가 지원됩니다. COPY INTO(레거시)은 지원되지 않습니다.
유형: String
형식이 잘못되어 구문을 분석할 수 없는 레코드를 저장하기 위한 열입니다. 구문 분석에 대한 modeDROPMALFORMED로 설정되면 이 열은 비어 있습니다.
기본값: _corrupt_record
comment
유형: Char
텍스트 줄의 시작 부분에 있는 줄 주석을 나타내는 문자를 정의합니다. 주석 건너뛰기를 사용하지 않도록 설정하려면 '\0'을 사용합니다.
기본값: '\u0000'
dateFormat
유형: String
날짜 문자열을 구문 분석하기 위한 형식입니다.
기본값: yyyy-MM-dd
emptyValue
유형: String
빈 값의 문자열 표현입니다.
기본값: ""
encoding 또는 charset
유형: String
CSV 파일 인코딩 이름입니다. 옵션 목록은 java.nio.charset.Charset을 참조하세요. UTF-16UTF-32이면 multilinetrue를 사용할 수 없습니다.
기본값: UTF-8
enforceSchema
유형: Boolean
지정된 스키마 또는 유추된 스키마를 CSV 파일에 강제로 적용할지 여부입니다. 옵션을 사용하도록 설정하면 CSV 파일의 머리글이 무시됩니다. 이 옵션은 자동 로더를 사용하여 데이터를 복구하고 스키마 개선을 허용하는 경우 기본값으로 무시됩니다.
기본값: true
escape
유형: Char
데이터를 구문 분석할 때 사용할 이스케이프 문자입니다.
기본값: '\'
header
유형: Boolean
CSV 파일에 머리글이 포함되어 있는지 여부입니다. 자동 로더는 스키마를 유추할 때 파일에 머리글이 있다고 가정합니다.
기본값: false
ignoreLeadingWhiteSpace
유형: Boolean
구문 분석된 각 값의 선행 공백을 무시할지 여부입니다.
기본값: false
ignoreTrailingWhiteSpace
유형: Boolean
구문 분석된 각 값의 후행 공백을 무시할지 여부입니다.
기본값: false
inferSchema
유형: Boolean
구문 분석된 CSV 레코드의 데이터 형식을 유추할지 아니면 모든 열이 StringType이라고 가정할지 여부입니다. true로 설정되면 데이터를 추가로 전달해야 합니다. 자동 로더의 경우 cloudFiles.inferColumnTypes를 대신 사용합니다.
기본값: false
lineSep
유형: String
연속된 두 CSV 레코드 사이의 문자열입니다.
기본값: 없음(\r, \r\n, \n 포함)
locale
유형: String
java.util.Locale 식별자입니다. CSV 내에서 기본 날짜, 타임스탬프, 10진수 구문 분석에 영향을 미칩니다.
기본값: US
maxCharsPerColumn
유형: Int
구문 분석할 값에서 예상되는 최대 문자 수입니다. 메모리 오류를 방지하는 데 사용할 수 있습니다. 기본값은 -1이며 무제한을 의미합니다.
기본값: -1
maxColumns
유형: Int
레코드에 사용할 수 있는 열 수에 대한 하드 한도입니다.
기본값: 20480
mergeSchema
유형: Boolean
여러 파일에서 스키마를 유추하고 각 파일의 스키마를 병합할지 여부입니다. 스키마를 유추할 때 자동 로더에 대해 기본적으로 사용하도록 설정됩니다.
기본값: false
mode
유형: String
잘못된 형식의 레코드를 처리하는 파서 모드에 관한 설명입니다. 다음 중 하나입니다. 'PERMISSIVE'
'DROPMALFORMED''FAILFAST'.
기본값: PERMISSIVE
multiLine
유형: Boolean
CSV 레코드가 여러 줄에 걸쳐 있는지 여부입니다.
기본값: false
nanValue
유형: String
FloatTypeDoubleType 열을 구문 분석할 때 숫자가 아닌 값에 대한 문자열 표현입니다.
기본값: "NaN"
negativeInf
유형: String
FloatType 또는 DoubleType 열을 구문 분석할 때 음수 무한대를 나타내는 문자열입니다.
기본값: "-Inf"
nullValue
유형: String
Null 값의 문자열 표현입니다.
기본값: ""
parserCaseSensitive(더 이상 사용되지 않음)
유형: Boolean
파일을 읽는 동안, 머리글에 선언된 열과 스키마를 대소문자를 구분하여 정렬할지를 결정합니다. 자동 로더의 경우 기본적으로 true입니다. 기능이 활성화되면 대/소문자가 다른 열이 rescuedDataColumn에서 복구됩니다. readerCaseSensitive를 위하여 이 옵션은 더 이상 사용되지 않습니다.
기본값: false
positiveInf
유형: String
FloatType 또는 DoubleType 열을 구문 분석할 때 양의 무한대를 나타내는 문자열입니다.
기본값: "Inf"
preferDate
유형: Boolean
가능한 경우 문자열을 타임스탬프 대신 날짜로 유추하려고 시도합니다. 또한 스키마 추론을 사용해야 하며, inferSchema를 활성화하거나 다른 방법을 사용해야 합니다.
cloudFiles.inferColumnTypes를 자동 로더와 함께 사용합니다.
기본값: true
quote
유형: Char
값에 필드 구분 기호가 포함된 경우 이 값을 이스케이프하는 데 사용되는 문자입니다.
기본값: "
readerCaseSensitive
유형: Boolean
rescuedDataColumn이 활성화된 경우 대/소문자 구분 동작을 지정합니다. true이면 스키마와 대소문자가 다른 데이터 열을 복구합니다. 그렇지 않으면 대소문자를 구분하지 않고 데이터를 읽습니다.
기본값: true
rescuedDataColumn
유형: String
데이터 유형 불일치 및 스키마 불일치(열 대소문자 구분 포함)로 인해 구문 분석할 수 없는 모든 데이터를 별도의 열에 수집할지 여부입니다. 이 열은 자동 로더를 사용할 때 기본적으로 포함됩니다. 자세한 내용은 복구된 데이터 열이란?을 참조하세요.
COPY INTO을 사용하여 스키마를 수동으로 설정할 수 없기 때문에 COPY INTO(레거시)에서는 구조 복구된 데이터 열을 지원하지 않습니다. Databricks는 대부분의 수집 시나리오에 자동 로더를 사용하는 것이 좋습니다.
기본값: 없음
sep 또는 delimiter
유형: String
열 간 구분 기호 문자열입니다.
기본값: ","
skipRows
유형: Int
무시해야 하는 CSV 파일 시작 부분의 행 수입니다(주석이 추가된 행과 빈 행 포함). header가 true이면 헤더는 건너뛰지 않고 주석 처리되지 않은 첫 번째 행이 됩니다.
기본값: 0
timestampFormat
유형: String
타임스탬프 문자열 구문 분석 형식입니다.
기본값: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
유형: String
타임스탬프와 날짜를 구문 분석할 때 사용하는 java.time.ZoneId입니다.
기본값: 없음
unescapedQuoteHandling
유형: String
이스케이프되지 않은 따옴표를 처리하기 위한 전략입니다. 허용되는 옵션은 다음과 같습니다.
  • STOP_AT_CLOSING_QUOTE: 이스케이프되지 않은 따옴표가 입력에 있는 경우, 따옴표 문자를 누적하고 닫는 따옴표가 발견될 때까지 해당 값을 따옴표로 묶인 값으로 취급하여 구문 분석합니다.
  • BACK_TO_DELIMITER: 이스케이프되지 않은 따옴표가 입력에 있는 경우 값을 따옴표가 없는 값으로 간주합니다. 이렇게 하면 sep에 정의된 구분 기호를 찾을 때까지 파서에서 현재 구문 분석된 값의 모든 문자를 누적합니다. 값에 구분 기호가 없으면 구분 기호 또는 줄 끝을 찾을 때까지 파서에서 입력으로부터 문자를 계속 누적합니다.
  • STOP_AT_DELIMITER: 이스케이프되지 않은 따옴표가 입력에 있는 경우 값을 따옴표가 없는 값으로 간주합니다. 이렇게 하면 입력에서 sep에 정의된 구분 기호 또는 줄 끝을 찾을 때까지 파서에서 모든 문자를 누적합니다.
  • SKIP_VALUE: 입력에 이스케이프되지 않은 따옴표가 있으면 지정된 값에 대한 구문 분석된 내용이 다음 구분 기호가 발견될 때까지 건너뛰고, 대신 nullValue에 저장된 값이 생성됩니다.
  • RAISE_ERROR: 입력에 이스케이프되지 않은 따옴표가 있으면,
    TextParsingException이 던져집니다.

기본값: STOP_AT_DELIMITER

XML 옵션

옵션 설명 범위
rowTag 행으로 처리할 XML 파일의 행 태그입니다. 예를 들어, XML이 <books> <book><book>...<books> 형태라면, 적절한 값은 book입니다. 필수 옵션입니다. 읽기
samplingRatio 스키마 유추에 사용되는 행의 비율을 정의합니다. XML 기본 제공 함수는 이 옵션을 무시합니다. 기본값: 1.0. 읽기
excludeAttribute 요소의 특성을 제외할지 여부입니다. 기본값: false. 읽기
mode 구문 분석 중 손상된 레코드를 처리하는 모드.
PERMISSIVE: 손상된 레코드의 경우 잘못된 문자열을 columnNameOfCorruptRecord로 설정된 필드에 넣고 잘못된 필드들을 null로 설정합니다. 손상된 레코드를 유지하려면 사용자 정의 스키마에서 string 타입의 columnNameOfCorruptRecord라는 필드를 설정할 수 있습니다. 스키마에 필드가 없으면 구문 분석 중에 손상된 레코드를 삭제합니다. 스키마를 유추할 때 파서가 출력 스키마에 columnNameOfCorruptRecord 필드를 암시적으로 추가합니다.
DROPMALFORMED: 손상된 레코드를 무시합니다. 이 모드는 XML 기본 제공 함수에 대해 지원되지 않습니다.
FAILFAST: 파서가 손상된 레코드를 만나면 예외를 발생시킵니다.
읽기
inferSchema true인 경우 각 결과 DataFrame 열에 대해 적절한 유형을 유추하려고 시도합니다. false인 경우 모든 결과 열은 string 유형입니다. 기본값:
true; XML 기본 제공 함수는 이 옵션을 무시합니다.
읽다
columnNameOfCorruptRecord 잘못된 문자열을 포함하는 새 필드의 이름을 바꿀 수 있습니다.
PERMISSIVE 모드. 기본값: spark.sql.columnNameOfCorruptRecord.
읽기
attributePrefix 특성과 요소를 구별하기 위한 특성의 접두사. 이는 필드 이름의 접두사입니다. 기본값은 _입니다. XML을 읽는 경우 비워 둘 수 있지만 쓰기에는 비워 둘 수 없습니다. 읽기, 쓰기
valueTag 특성이나 자식 요소가 있는 요소 내의 문자 데이터에 사용되는 태그입니다. 사용자는 스키마에서 valueTag 필드를 지정할 수 있습니다. 또는 문자 데이터가 다른 요소 또는 특성이 있는 요소에 있을 때 스키마 유추 중에 자동으로 추가됩니다. 기본값: _VALUE 읽기, 쓰기
encoding 읽기를 위해 지정된 인코딩 형식으로 XML 파일을 디코드합니다. 쓰기의 경우 저장된 XML 파일의 인코딩(charset)을 지정합니다. XML 기본 제공 함수는 이 옵션을 무시합니다. 기본값: UTF-8. 읽기, 쓰기
ignoreSurroundingSpaces 읽는 값의 주변 공백을 건너뛸지 여부를 정의합니다. 기본값: true. 공백 전용 문자 데이터는 무시됩니다. 읽기
rowValidationXSDPath 각 행을 개별적으로 검증하기 위해 사용되는 선택적 XSD 파일의 경로입니다. 유효성 검사에 실패한 행은 위와 같이 구문 분석 오류로 처리됩니다. XSD는 제공되거나 유추된 스키마에 달리 영향을 미치지 않습니다. 읽기
ignoreNamespace true인 경우 XML 요소 및 특성에 대한 네임스페이스의 접두사는 무시됩니다. 예를 들어 <abc:author> 태그와 <def:author> 태그는 둘 다 <author>로 처리됩니다. 네임스페이스는 rowTag 요소에서 무시할 수 없으며 해당 읽기 자식만 무시할 수 있습니다. XML 파싱은 false여도 네임스페이스를 인식하지 않습니다. 기본값: false. 읽기
timestampFormat 날짜/시간 형식 패턴을 따르는 사용자 지정 타임스탬프 형식 문자열입니다. 이는 timestamp 형식에 적용됩니다. 기본값: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. 읽기, 쓰기
timestampNTZFormat 시간대 없이 타임스탬프를 나타내는 사용자 지정 형식 문자열로 날짜/시간 형식 패턴을 따릅니다. 이는 TimestampNTZType 유형에 적용됩니다. 기본값:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
읽기, 쓰기
dateFormat 날짜/시간 형식 패턴을 따르는 사용자 지정 날짜 형식 문자열입니다. 이는 날짜 형식에 적용됩니다. 기본값: yyyy-MM-dd. 읽기, 쓰기
locale 로캘을 IETF BCP 47 형식의 언어 태그로 설정합니다. 예를 들어 날짜와 타임스탬프를 구문 분석할 때 locale가 사용됩니다. 기본값: en-US. 읽기
rootTag XML 파일의 루트 태그입니다. 예를 들어 <books> <book><book>...</books>에서 적절한 값은 books입니다. books foo="bar"와 같은 값을 지정하여 기본 특성을 포함할 수 있습니다. 기본값: ROWS. 쓰기
declaration 모든 출력 XML 파일에서 rootTag 앞에 쓸 XML 선언의 내용입니다. 예를 들어 foo 값을 설정하면 <?xml foo?>가 작성됩니다. 비어 있는 문자열로 설정하여 억제할 수 있습니다. 기본값: version="1.0"
encoding="UTF-8" standalone="yes";
쓰다
arrayElementName 배열 값을 가진 열의 각 요소를 쓸 때 둘러싸는 XML 요소의 이름입니다. 기본값: item. 쓰기
nullValue Null 값의 문자열 표현을 설정합니다. 기본값: String null. 이 값이 null인 경우 파서는 필드의 속성과 요소를 기록하지 않습니다. 읽기, 쓰기
compression 파일에 저장할 때 사용할 압축 코드입니다. 이는 알려진 대소문자 구분 없는 축약 이름(none, bzip2, gzip, lz4, snappy 중 하나일 수 있습니다.
deflate). XML 기본 제공 함수는 이 옵션을 무시합니다. 기본값: none.
쓰기
validateName true인 경우 XML 요소 이름 유효성 검사 실패에 대한 오류가 발생합니다. 예를 들어 SQL 필드 이름에는 공백이 있을 수 있지만 XML 요소 이름에는 공백이 있을 수 없습니다. 기본값:
true;
쓰기
readerCaseSensitive rescuedDataColumn이 활성화된 경우 대소문자 구분 동작을 지정합니다. true이면 스키마와 대소문자가 다른 데이터 열을 복구합니다. 그렇지 않으면 대소문자를 구분하지 않고 데이터를 읽습니다. 기본값: true. 읽기
rescuedDataColumn 데이터 유형 불일치 및 스키마 불일치(열 대소문자 포함)로 인해 파싱할 수 없는 모든 데이터를 별도의 열로 수집할지 여부입니다. 이 열은 자동 로더를 사용할 때 기본적으로 포함됩니다. 자세한 내용은 복구된 데이터 열(Rescued Data Column)이란?을 참조하세요.
COPY INTO을 사용하여 스키마를 수동으로 설정할 수 없기 때문에 COPY INTO(레거시)에서는 구조 복구된 데이터 열을 지원하지 않습니다. Databricks는 대부분의 수집 시나리오에 자동 로더를 사용하는 것이 좋습니다.
기본값: None.
읽기

PARQUET 옵션

옵션
datetimeRebaseMode
유형: String
율리우스력과 예상 그레고리력 사이의 DATE 및 TIMESTAMP 값의 기준 재조정을 제어합니다. 허용되는 값: EXCEPTION, LEGACY
CORRECTED;
기본값: LEGACY
int96RebaseMode
유형: String
율리우스력과 프로렙틱 그레고리력 사이에서 INT96 타임스탬프 값의 기준을 다시 지정하는 것을 제어합니다. 허용되는 값: EXCEPTION, LEGACY
CORRECTED;
기본값: LEGACY
mergeSchema
유형: Boolean
여러 파일에서 스키마를 유추하고 각 파일의 스키마를 병합할지 여부입니다.
기본값: false
readerCaseSensitive
유형: Boolean
rescuedDataColumn이 활성화된 경우 대/소문자 구분 동작을 지정합니다. true이면 스키마와 대소문자가 다른 데이터 열을 복구합니다. 그렇지 않으면 대소문자를 구분하지 않고 데이터를 읽습니다.
기본값: true
rescuedDataColumn
유형: String
데이터 유형 불일치 및 스키마 불일치(열 대소문자 구분 포함)로 인해 구문 분석할 수 없는 모든 데이터를 별도의 열에 수집할지 여부입니다. 이 열은 자동 로더를 사용할 때 기본적으로 포함됩니다. 자세한 내용은 복구된 데이터 열이란?을 참조하세요.
COPY INTO을 사용하여 스키마를 수동으로 설정할 수 없기 때문에 COPY INTO(레거시)에서는 구조 복구된 데이터 열을 지원하지 않습니다. Databricks는 대부분의 수집 시나리오에 자동 로더를 사용하는 것이 좋습니다.
기본값: 없음

AVRO 옵션

선택사항
avroSchema
유형: String
사용자가 Avro 형식으로 제공하는 선택적 스키마입니다. Avro를 읽을 때 이 옵션을 실제 Avro 스키마와 호환되지만 상이하게 발전된 스키마로 설정할 수 있습니다. 역직렬화 스키마는 개선된 스키마와 일치합니다. 예를 들어 기본값이 있는 하나의 추가 열을 포함하는 개선된 스키마를 설정하는 경우 읽기 결과에도 새 열이 포함됩니다.
기본값: 없음
datetimeRebaseMode
유형: String
율리우스력과 예상 그레고리력 사이의 DATE 및 TIMESTAMP 값의 기준 재조정을 제어합니다. 허용되는 값: EXCEPTION, LEGACY
CORRECTED;
기본값: LEGACY
mergeSchema
유형: Boolean
여러 파일에서 스키마를 유추하고 각 파일의 스키마를 병합할지 여부입니다.
Avro에 대한 mergeSchema는 데이터 형식을 완화하지 않습니다.
기본값: false
readerCaseSensitive
유형: Boolean
rescuedDataColumn이 활성화된 경우 대/소문자 구분 동작을 지정합니다. true이면 스키마와 대소문자가 다른 데이터 열을 복구합니다. 그렇지 않으면 대소문자를 구분하지 않고 데이터를 읽습니다.
기본값: true
rescuedDataColumn
유형: String
데이터 유형 불일치 및 스키마 불일치(열 대소문자 구분 포함)로 인해 구문 분석할 수 없는 모든 데이터를 별도의 열에 수집할지 여부입니다. 이 열은 자동 로더를 사용할 때 기본적으로 포함됩니다.
COPY INTO을 사용하여 스키마를 수동으로 설정할 수 없기 때문에 COPY INTO(레거시)에서는 구조 복구된 데이터 열을 지원하지 않습니다. Databricks는 대부분의 수집 시나리오에 자동 로더를 사용하는 것이 좋습니다.
자세한 내용은 복구된 데이터 열이란?을 참조하세요.
기본값: 없음

BINARYFILE 옵션

이진 파일에는 추가 구성 옵션이 없습니다.

TEXT 옵션

옵션
encoding
유형: String
텍스트 파일의 인코딩 이름입니다. 옵션 목록은 java.nio.charset.Charset을 참조하세요.
기본값: UTF-8
lineSep
유형: String
연속된 두 텍스트 레코드 사이의 문자열입니다.
기본값: 없음(\r, \r\n, \n 포함)
wholeText
유형: Boolean
파일을 단일 레코드로 읽을지 여부입니다.
기본값: false

ORC 옵션

옵션
mergeSchema
유형: Boolean
여러 파일에서 스키마를 유추하고 각 파일의 스키마를 병합할지 여부입니다.
기본값: false

클라우드 관련 옵션

자동 로더는 클라우드 인프라를 구성하기 위한 다양한 옵션을 제공합니다.

AWS 관련 옵션

cloudFiles.useNotifications = true를 선택하고 자동 로더에서 Notification Services를 설정하도록 하려는 경우에만 다음 옵션을 제공합니다.

옵션
cloudFiles.region
유형: String
원본 S3 버킷이 상주하고 AWS SNS 및 SQS 서비스가 만들어질 지역입니다.
기본값: EC2 인스턴스의 리전입니다.

cloudFiles.useNotifications = true를 선택하고 자동 로더가 이미 설정한 큐를 사용하도록 하려는 경우에만 다음 옵션을 제공합니다.

옵션
cloudFiles.queueUrl
유형: String
SQS 큐의 URL입니다. 제공되는 경우 자동 로더는 자체 AWS SNS 및 SQS 서비스를 설정하는 대신 이 큐의 이벤트를 직접 사용합니다.
기본값: 없음

AWS 인증 옵션

Databricks 서비스 자격 증명을 사용하려면 다음 인증 옵션을 제공합니다.

옵션
databricks.serviceCredential
유형: String
Databricks 서비스 자격 증명이름입니다.
기본값: 없음

Databricks 서비스 자격 증명 또는 IAM 역할을 사용할 수 없는 경우 대신 다음 인증 옵션을 제공할 수 있습니다.

옵션
cloudFiles.awsAccessKey
유형: String
사용자의 AWS 액세스 키 ID입니다. 제공되어야 합니다
cloudFiles.awsSecretKey;
기본값: 없음
cloudFiles.awsSecretKey
유형: String
사용자의 AWS 비밀 액세스 키입니다. 제공되어야 합니다
cloudFiles.awsAccessKey;
기본값: 없음
cloudFiles.roleArn
유형: String
필요한 경우 사용할 IAM 역할의 ARN입니다. 역할은 클러스터의 인스턴스 프로필에서 또는 자격 증명을 제공하여 가정할 수 있습니다.
cloudFiles.awsAccessKeycloudFiles.awsSecretKey.
기본값: 없음
cloudFiles.roleExternalId
유형: String
cloudFiles.roleArn을 사용하여 역할을 가정하는 동안 제공할 식별자입니다.
기본값: 없음
cloudFiles.roleSessionName
유형: String
역할을 가정할 때 사용할 선택적 세션 이름
cloudFiles.roleArn;
기본값: 없음
cloudFiles.stsEndpoint
유형: String
cloudFiles.roleArn을 사용하여 역할을 가정할 때 AWS STS에 액세스하기 위해 제공하는 선택적 엔드포인트입니다.
기본값: 없음

Azure 관련 옵션

cloudFiles.useNotifications = true를 지정하고 자동 로더를 통해 알림 서비스를 설정하려는 경우 다음과 같은 모든 옵션의 값을 제공해야 합니다.

옵션
cloudFiles.resourceGroup
유형: String
스토리지 계정이 만들어지는 Azure 리소스 그룹입니다.
기본값: 없음
cloudFiles.subscriptionId
유형: String
리소스 그룹이 생성되는 Azure 구독 ID입니다.
기본값: 없음
databricks.serviceCredential
유형: String
Databricks 서비스 자격 증명이름입니다.
기본값: 없음

Databricks 서비스 자격 증명을 사용할 수 없는 경우 다음 인증 옵션을 대신 제공할 수 있습니다.

옵션
cloudFiles.clientId
유형: String
서비스 주체의 클라이언트 ID 또는 애플리케이션 ID입니다.
기본값: 없음
cloudFiles.clientSecret
유형: String
서비스 주체의 클라이언트 비밀입니다.
기본값: 없음
cloudFiles.connectionString
유형: String
계정 액세스 키 또는 SAS(공유 액세스 서명)를 기반으로 하는 스토리지 계정의 연결 문자열입니다.
기본값: 없음
cloudFiles.tenantId
유형: String
서비스 주체가 만들어지는 Azure 테넌트 ID입니다.
기본값: 없음

중요

자동화된 알림 설정은 Databricks Runtime 9.1 이상이 설치된 Azure 중국 및 정부 지역에서 사용할 수 있습니다. 이전 DBR 버전에 대해 이러한 지역에서 파일 알림과 함께 자동 로더를 사용하려면 queueName을 제공해야 합니다.

cloudFiles.useNotifications = true를 선택하고 자동 로더가 이미 설정한 큐를 사용하도록 하려는 경우에만 다음 옵션을 제공합니다.

옵션
cloudFiles.queueName
유형: String
Azure 대기열의 이름입니다. 제공된 경우 클라우드 파일 원본은 고유한 Azure Event Grid 및 Queue Storage 서비스를 설정하는 대신 이 큐의 이벤트를 직접 사용합니다. 이 경우 databricks.serviceCredential 또는 cloudFiles.connectionString 큐에 대한 읽기 권한만 필요합니다.
기본값: 없음

Google 관련 옵션

Databricks 서비스 자격 증명을 활용하여 자동 로더가 알림 서비스를 자동으로 설정해 드립니다. Databricks 서비스 자격 증명을 사용하여 생성된 서비스 계정에는 '자동 로더 파일 알림 모드란 무엇인가?'에 명시된 권한이 필요합니다.

옵션
cloudFiles.projectId
유형: String
GCS 버킷이 있는 프로젝트의 ID입니다. Google Cloud Pub/Sub 구독도 이 프로젝트 내에서 만들어집니다.
기본값: 없음
databricks.serviceCredential
유형: String
Databricks 서비스 자격 증명이름입니다.
기본값: 없음

Databricks 서비스 자격 증명을 사용할 수 없는 경우 Google 서비스 계정을 직접 사용할 수 있습니다. Google 서비스 설정 따라 서비스 계정을 가정하도록 클러스터를 구성하거나 다음 인증 옵션을 직접 제공할 수 있습니다.

옵션
cloudFiles.client
유형: String
Google 서비스 계정의 클라이언트 ID입니다.
기본값: 없음
cloudFiles.clientEmail
유형: String
Google 서비스 계정의 이메일입니다.
기본값: 없음
cloudFiles.privateKey
유형: String
Google 서비스 계정에 대해 생성된 프라이빗 키입니다.
기본값: 없음
cloudFiles.privateKeyId
유형: String
Google 서비스 계정에 대해 생성된 프라이빗 키의 ID입니다.
기본값: 없음

cloudFiles.useNotifications = true를 선택하고 자동 로더가 이미 설정한 큐를 사용하도록 하려는 경우에만 다음 옵션을 제공합니다.

옵션
cloudFiles.subscription
유형: String
Google Cloud Pub/Sub 구독의 이름입니다. 제공되는 경우 클라우드 파일 원본은 자체 GCS 알림 및 Google Cloud Pub/Sub 서비스를 설정하는 대신 이 큐의 이벤트를 사용합니다.
기본값: 없음