Document AI로 비정형 데이터 로드하기¶
Document AI 가 통합됨으로써, 이제 Snowflake는 정형 및 반정형 데이터 로딩과 마찬가지로 비정형 데이터 로딩을 지원합니다.
비정형 데이터는 미리 정의된 데이터 모델이나 스키마에 맞지 않는 정보입니다. 일반적으로 양식 응답 및 소셜 미디어 대화와 같이 텍스트가 많은 비정형 데이터에는 이미지, 동영상 및 오디오도 포함됩니다.
이 미리 보기 기능을 사용하여 비정형 데이터를 로드하려면 동일한 COPY INTO 테이블 명령을 복사 옵션 file_processor
와 함께 실행하면 됩니다.
전제 조건¶
이 기능을 사용하기 전에 Document AI 모델을 준비하고 COPY 명령을 실행하는 사용자에게 이 모델에 대한 액세스 권한이 있는지 확인해야 합니다. 자세한 내용은 Document AI 섹션을 참조하십시오.
COPY INTO 명령 사용하기¶
COPY INTO 명령을 file_processor
복사 옵션과 함께 사용하여 비정형 데이터를 로드할 수 있습니다. file_processor
복사 옵션의 사용자 지정 스캐너 유형으로 document_ai
를 지정하고 스캐너에 대한 관련 속성을 지정할 수 있습니다.
자세한 내용은 COPY INTO TABLE 구문 및 COPY INTO 복사 옵션 을 참조하십시오.
비정형 데이터를 로드하려면 미리 보기에서 소스 스테이지의 유형을 스테이지 형식 유형인 CUSTOM
으로 지정하는 것이 좋습니다. 다른 스테이지 형식 유형 (TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML })
은 이전 버전과의 호환성을 위해 지원됩니다.
스테이지를 생성할 때 file_format
매개 변수를 사용하여 스테이지 유형을 지정할 수 있습니다. CUSTOM
스테이지 유형은 기본 스테이지가 비정형 데이터를 보관하고 FILE_PROCESSOR
복사 옵션과만 함께 사용할 수 있음을 지정합니다.
예¶
다음 예제는 모델 이름 predict
및 모델 버전 1
로 지정된 document_ai
함수를 사용하여 스테이지 custom_stage
에서 테이블 my_table
로 비정형 데이터 파일을 로드하는 방법을 보여줍니다.
COPY INTO my_table FROM @custom_stage FILE_PROCESSOR = ( SCANNER = 'document_ai' SCANNER_OPTIONS = (project_name = 'DEMO0200', model_name = 'predict' model_version = '1'));
다음 예제에서는 비정형 데이터 파일을 테이블 docai_results
에 로드하고 SELECT 문을 사용하여 원시 데이터를 변환하는 방법을 보여 줍니다.
CREATE OR REPLACE TABLE docai_results (inspection_date date, inspector varchar); COPY INTO docai_results FROM (SELECT $1:inspection_date[0].value::date, $1:inspector[0].value FROM @custom_stage) FILE_PROCESSOR = ( SCANNER = 'document_ai' SCANNER_OPTIONS = (project_name = 'DEMO0201', model_name = 'predict' model_version = '1'));
고려 사항 및 제한 사항¶
이 기능은 다음을 지원하지 않습니다.
MATCH_BY_COLUMN_NAME COPY 옵션
기본 ON_ERROR COPY 옵션
ON_ERROR = ABORT_STATEMENT
만 지원됩니다. 다른 ON_ERROR 옵션을 사용하려고 시도하면 컴파일에 실패합니다.쿼리당 파일 수는 1,000개를 초과할 수 없습니다.