This page was exported from Free Exams Dumps Materials [ http://exams.dumpsmaterials.com ] Export date:Sat Mar 29 1:45:53 2025 / +0000 GMT ___________________________________________________ Title: DEA-C01 Dumps PDF - DEA-C01 Real Exam Questions Answers [Q14-Q29] --------------------------------------------------- DEA-C01 Dumps PDF - DEA-C01 Real Exam Questions Answers Get Started: DEA-C01 Exam [year] Dumps Snowflake PDF Questions NO.14 A SQL UDF evaluates an arbitrary SQL expression and returns the result(s) of the expression. Which value type it can returns?  Single Value  A Set of Rows  Scaler or Tabular depend on input SQL expression  Regex NO.15 While running an external function, me following error message is received:Error:function received the wrong number of rowsWhat iscausing this to occur?  External functions do not support multiple rows  Nested arrays are not supported in the JSON response  The JSON returned by the remote service is not constructed correctly  The return message did not produce the same number of rows that it received ExplanationThe error message “function received the wrong number of rows” is caused by the return message not producing the same number of rows that it received. External functions require that the remote service returns exactly one row for each input row that it receives from Snowflake. If the remote service returns more or fewer rows than expected, Snowflake will raise an error and abort the function execution. The other options are not causes of this error message. Option A is incorrect because external functions do support multiple rows as long as they match the input rows. Option B is incorrect because nested arrays are supported in the JSON response as long as they conform to the return type definition of the external function. Option C is incorrect because the JSON returned by the remote service may be constructed correctly but still produce a different number of rows than expected.NO.16 A Data Engineer needs to ingest invoice data in PDF format into Snowflake so that the data can be queried and used in a forecasting solution.….. recommended way to ingest this data?  Use Snowpipe to ingest the files that land in an external stage into a Snowflake table  Use a COPY INTO command to ingest the PDF files in an external stage into a Snowflake table with a VARIANT column.  Create an external table on the PDF files that are stored in a stage and parse the data nto structured data  Create a Java User-Defined Function (UDF) that leverages Java-based PDF parser libraries to parse PDF data into structured data ExplanationThe recommended way to ingest invoice data in PDF format into Snowflake is to create a Java User-Defined Function (UDF) that leverages Java-based PDF parser libraries to parse PDF data into structured data. This option allows for more flexibility and control over how the PDF data is extracted and transformed. The other options are not suitable for ingesting PDF data into Snowflake. Option A and B are incorrect because Snowpipe and COPY INTO commands can only ingest files that are in supported file formats, such as CSV, JSON, XML, etc. PDF files are not supported by Snowflake and will cause errors or unexpected results.Option C is incorrect because external tables can only query files that are in supported file formats as well.PDF files cannot be parsed by external tables and will cause errors or unexpected results.NO.17 How Data Engineer can do Monitoring of Files which are Staged Internally during Continuous data pipelines loading process? [Select all that apply]  She Can Monitor the files using Metadata maintained by Snowflake i.e. file-name,last_modified date etc.  Snowflake retains historical data for COPY INTO commands executed within the pre-vious 14 days.  She can Monitor the status of each COPY INTO <table> 명령을 실행합니다. DATA_LOAD_HISTORY 정보 스키마 보기를 사용하여 COPY INTO 명령을 사용하여 테이블에 로드된 데이터의 기록을 검색할 수 있습니다. DATA_VALIDATE 함수를 사용하여 로드한 데이터 파일의 유효성을 검사하고 로드 중에 발생한 모든 오류를 검색할 수 있습니다. 설명내부 스테이지 파일 모니터링 스노우플레이크는 내부 스테이지(사용자, 테이블, 스테이지)에 업로드된 각 파일에 대해 다음과 같은 세부 메타데이터를 유지 관리합니다: 파일 이름 파일 크기(업로드 중에 압축을 지정한 경우 압축) 마지막 수정 날짜, 즉 데이터 파일이 처음 스테이징된 시점 또는 마지막으로 수정된 시점 중 늦은 시점 또한, Snowflake는 이전 14일 이내에 실행된 COPY INTO 명령에 대한 기록 데이터를 보관합니다. 이 메타데이터는 업로드 완료 후 파일 삭제 등 로딩 프로세스를 모니터링하고 관리하는 데 사용할 수 있습니다: LIST 명령을 사용해 준비된 데이터 파일의 상태를 확인합니다. 각 COPY INTO의 상태 모니터링 <table> 명령을 실행하세요. VALIDATE 함수를 사용하여 로드한 데이터 파일의 유효성을 검사하고 로드 중에 발생한 모든 오류를 검색할 수 있습니다. COPY INTO 명령을 사용하여 테이블에 로드된 데이터의 이력을 검색하려면 LOAD_HISTORY 정보 스키마 뷰를 사용합니다.NO.18 데이터 엔지니어는 언제 측면 평면화 조합 대신 FLATEN 함수가 있는 테이블을 사용하나요? TABLE with FLATTEN에 참조할 FROM 절에 다른 원본이 필요한 경우 TABLE에 FLATTEN이 포함 된 경우 참조 할 from 절에 추가 소스가 필요하지 않습니다. LATERALFLATTEN조합에 참조할 from 절에 다른 소스가 필요하지 않은 경우 반환된 각 행에 대해 실행되는 하위 쿼리처럼 작동하는 경우FLATTEN이 포함된 테이블의 경우 설명 FLATTEN 함수가 포함된 TABLE 함수는 JSON 또는 XML과 같은 반정형 데이터를 관계형 형식으로 플랫화하는 데 사용됩니다. TABLE 함수는 쿼리의 FROM 절에 사용할 수 있는 테이블 표현식을 반환합니다. FLATTEN 함수와 함께 TABLE 함수를 사용하려면 FROM 절에 참조할 다른 소스(예: 반정형 데이터가 포함된 테이블, 뷰 또는 하위 쿼리)가 필요합니다. 예:SELECT t.value:city::string AS city, f.value AS population FROM cities t, TABLE(FLATTEN(input =&gt; t.value:population)) f; 이 예에서 FLATTEN 함수가 포함된 TABLE 함수는 FROM 절에서 value라는 변형 열에 JSON 데이터가 포함된 cities 테이블을 참조합니다. FLATTEN 함수는 각 JSON 개체 내의 인구 배열을 평평하게 만들고 두 개의 열(key 및 value)이 있는 테이블 표현식을 반환하며, 쿼리는 테이블 표현식에서 도시 및 인구 값을 선택합니다.질문 19 감사에 동적 데이터 마스킹 목적으로 사용할 수 있는 계정 사용량 보기는 다음 중 두 가지입니까? 마스킹 정책 policy_references 동적 마스킹 정책 동적 정책_참조 NO.20 데이터 엔지니어인 Elon은 소스 파일에서 반정형 요소를 분할하여 별도의 열에 배열로 로드해야 합니다.소스 파일:1.+------------------------+2.| $1 |3.|------------------------|4.| {"mac_address": {"host1": “197.128.1.1”,”host2″: "197.168.0.1"}}, |5.| {"mac_address": {"host1": “197.168.2.1”,”host2″: "197.168.3.1"}} |6.+------------------------+ 출력: 아래와 같이 머신 주소를 분할합니다.1.COL1 | COL2 |2.|----+----|3.| [ | [ |4.| "197", | "197", |5.| "128", | "168", |6.| "1", | "0", |7.| "1" | "1" |8.| ] ] | ] |9.| [ | [ |10.| "197", | "197", |11.| "168", | "168", |12.| "2", | "3", |13.| "1" | "1" |14.| ] | ]Elon이 이 반정형 데이터를 출력용 매트릭스에서 변환하는 데 사용할 수 있는 SnowFlake 함수는 무엇인가요? convert_to_array SPLIT GROUP_BY_CONNECT NEST NO.21 데이터 엔지니어인 마크는 로컬 뷰에 스트림을 구현하려고 하며 데이터 로드 사용 사례 중 하나에 변경 추적 메타데이터를 사용하려고 합니다. 뷰의 스트림 사용과 관련하여 마크가 잘못 이해하고 있는 점은 무엇인가요? 뷰의 스트림의 경우 뷰 및 언더라이팅된 테이블에 대해 명시적으로 변경 추적을 사용하도록 설정해야 이러한 테이블에 숨겨진 열을 추가할 수 있습니다. 스트림을 쿼리할 때 반환되는 CDC 레코드는 스트림에 저장된 오프셋과 테이블에 저장된 변경 추적 메타데이터의 조합에 의존합니다. GROUP BY 및 LIMIT 절이 있는 뷰는 Snowflake에서 지원됩니다. 스트림의 대안으로, 스노우플레이크는 SELECT 문에 CHANGES 절을 사용하여 뷰에 대한 변경 내용 추적 메타데이터 쿼리를 지원합니다. 변경 추적을 사용하도록 설정하면 테이블에 숨겨진 열 쌍이 추가되고 변경 추적 메타데이터 저장이 시작됩니다. 이러한 숨겨진 CDC 데이터 열의 값은 스트림 메타데이터 열에 대한 입력을 제공합니다. 이 열은 소량의 저장 공간을 사용합니다. 설명 스트림 개체는 삽입, 업데이트, 삭제 등 테이블에 대한 DML(데이터 조작 언어) 변경 사항과 각 변경 사항에 대한 메타데이터를 기록하여 변경된 데이터를 사용하여 작업을 수행할 수 있도록 합니다. 이 프로세스를 변경 데이터 캡처(CDC)라고 합니다. 개별 테이블 스트림은 소스 테이블의 행에 대한 변경 사항을 추적합니다. 테이블 스트림(간단히 '스트림'이라고도 함)은 테이블의 두 트랜잭션 시점 사이에 행 수준에서 변경된 내용에 대한 '변경 테이블'을 제공합니다. 이를 통해 트랜잭션 방식으로 일련의 변경 기록을 쿼리하고 사용할 수 있습니다. 스트림을 만들어 다음 개체에 대한 변경 데이터를 쿼리할 수 있습니다: 공유 테이블을 포함한 표준 테이블 보안 뷰를 포함한 뷰 디렉터리 테이블 외부 테이블 스트림이 생성되면 스트림은 논리적으로 특정 시점(오프셋이라고 함)을 개체의 현재 트랜잭션 버전으로 초기화하여 소스 개체(예: 테이블, 외부 테이블 또는 뷰의 기본 테이블)의 모든 행에 대한 초기 스냅샷을 만듭니다. 그런 다음 스트림에서 사용하는 변경 추적 시스템은 이 스냅샷이 촬영된 후 DML 변경에 대한 정보를 기록합니다. 변경 기록은 변경 전과 후의 행 상태를 제공합니다. 변경 정보는 추적된 소스 개체의 열 구조를 반영하고 각 변경 이벤트를 설명하는 추가 메타데이터 열을 포함하며, 스트림 자체에는 테이블 데이터가 포함되지 않습니다. 스트림은 소스 개체에 대한 오프셋만 저장하고 소스 개체에 대한 버전 관리 기록을 활용하여 CDC 레코드를 반환합니다. 테이블에 대한 첫 번째 스트림이 생성되면 한 쌍의 숨겨진 열이 소스 테이블에 추가되고 변경 추적 메타데이터 저장이 시작됩니다. 이러한 열은 소량의 저장 공간을 사용합니다. 스트림을 쿼리할 때 반환되는 CDC 레코드는 스트림에 저장된 오프셋과 테이블에 저장된 변경 내용 추적 메타데이터의 조합에 의존합니다. 뷰의 스트림의 경우 뷰 및 기초 테이블에 대해 명시적으로 변경 추적을 사용하도록 설정해야 이러한 테이블에 숨겨진 열을 추가할 수 있으며, 뷰의 스트림은 보안 뷰를 포함하여 로컬 뷰와 Snowflake 보안 데이터 공유를 사용하여 공유되는 뷰를 모두 지원합니다. 현재 스트림은 구체화된 뷰의 변경 사항을 추적할 수 없으며, 다음 연산을 사용하는 뷰는 아직 지원되지 않습니다: GROUP BY 절 QUALIFY 절 FROM 절에 없는 하위 쿼리 상관된 하위 쿼리 LIMIT 절변경 추적: 기초 테이블에서 변경 추적을 사용하도록 설정해야 하며, 뷰에서 스트림을 만들기 전에 뷰의 기초 테이블에서 변경 추적을 사용하도록 설정해야 합니다.뷰를 만들 때(CREATE VIEW 사용) 또는 이후(ALTER VIEW 사용)에 CHANGE_TRACKING 매개 변수를 설정합니다.스트림 대신 Snowflake는 SELECT 문에 CHANGES 절을 사용하여 테이블 또는 뷰에 대한 변경 추적 메타데이터 쿼리를 지원합니다. 명시적인 트랜잭션 오프셋이 있는 스트림을 만들지 않고도 두 시점 간의 변경 추적 메타데이터를 쿼리할 수 있습니다.NO.22 테이블 함수라고도 하는 UDTF는 각 입력 행에 대해 0, 1 또는 여러 행을 반환합니까? 예 아니요 설명UDF는 스칼라 또는 테이블형일 수 있으며, 스칼라 함수는 각 입력 행에 대해 하나의 출력 행을 반환합니다. 반환되는 행은 단일 열/값으로 구성되며, 테이블 함수라고도 하는 표 형식 함수는 각 입력 행에 대해 0, 1 또는 여러 행을 반환합니다. 표 형식 UDF는 테이블 키워드가 포함된 반환 절을 지정하고 테이블 결과의 열 이름과 데이터 유형을 지정하여 정의됩니다. 표 형식 UDF를 UDTF(사용자 정의 테이블 함수) 또는 테이블 UDF라고도 합니다.NO.23 다른 Snowflake 계정과 공유할 보안 보기에 CURRENT_ROLE 및 CURRENT_USER 함수를 사용하는 경우, Snowflake는 이러한 함수에 대해 NULL 값을 반환합니까? FALSE TRUE 설명 다른 Snowflake 계정과 공유할 보안 보기와 함께 CURRENT_ROLE 및 CURRENT_USER 함수를 사용하는 경우 Snowflake는 이러한 함수에 대해 NULL 값을 반환합니다. 그 이유는 공유되는 데이터의 소유자가 일반적으로 뷰가 공유되는 계정의 사용자 또는 역할을 제어하지 않기 때문입니다.NO.24 연합 인증/SSO 사용과 관련하여 올바른 문은 무엇입니까? Snowflake는 추가적인 보안 수준을 제공하기 위해 MFA를 SSO와 함께 사용하는 것을 지원합니다. 스노우플레이크는 ID 공급자가 스노우플레이크에 보내는 SAML 2.0 어설션에서 여러 대상 값(즉, 대상 또는 대상 제한 필드)을 지원합니다. 스노우플레이크는 AWS(Amazon Web Services), Microsoft Azure 및 Google Cloud Platform의 스노우플레이크 계정에 대해 스노우플레이크 서비스에 대한 비공개 연결을 통한 SSO를 지원합니다. Snowflake는 조직과의 SSO 사용을 지원하며, SAML2 보안 통합에서 해당 URL을 사용할 수 있습니다. NO.25 데이터 엔지니어가 1TD 탭 e를 보조 테이블과 조인하여 변환하는 파이프라인을 구축하고 있습니다. 이 엔지니어는 Snowflake의 단일 쿼리에서 중간 크기의 가상 웨어하우스를 사용하여 공통 테이블 표현식(CTE)을 활용하여 필터와 여러 집계를 적용하고 있습니다. 쿼리 프로필을 확인한 후 프로필에 데이터 유출이 표시되는 경우 이 쿼리의 성능을 극대화하기 위해 권장되는 접근 방식은 무엇인가요? 테이블에서 클러스터링 사용 웨어하우스 크기 늘리기 쿼리를 다시 작성하여 CTE를 제거합니다. 멀티클러스터 가상 웨어하우스로 전환 설명 프로필에 데이터 유출이 표시되는 경우 이 쿼리의 성능을 최대화하기 위해 권장되는 방법은 웨어하우스 크기를 늘리는 것입니다. 데이터 유출은 쿼리가 웨어하우스가 제공할 수 있는 것보다 더 많은 메모리를 필요로 하고 일부 중간 결과를 디스크에 유출해야 할 때 발생합니다. 이렇게 되면 디스크 IO 시간이 증가하여 쿼리 성능이 저하될 수 있습니다. 웨어하우스 크기를 늘리면 쿼리에 사용할 수 있는 메모리 양을 늘리고 데이터 유출을 줄이거나 없앨 수 있습니다.NO.26 스노우파크 파이썬 패키지의 특징은 무엇인가요? (서드파티 패키지는 세션, import () 메서드를 사용하여 스노우파크 세션에 종속성으로 등록할 수 있습니다. Python 패키지는 모든 외부 엔드포인트에 액세스할 수 있습니다. Python 패키지는 로컬 환경에서만 로드할 수 있습니다. 타사 지원 Python 패키지는 히팅을 방지하기 위해 잠깁니다. SQL 명령 DESCRIBE FUNCTION은 가져온 Python 사용자 정의 함수(UDF)의 Python 패키지를 나열합니다. 정보__schema .packages를 쿼리하면 지원되는 Python 패키지 및 버전 목록이 제공됩니다. 설명 Snowpark Python 패키지의 특징은 다음과 같습니다.세션.import() 메서드를 사용하여 타사 패키지를 Snowpark 세션에 종속성으로 등록할 수 있습니다.SQL 명령 DESCRIBE FUNCTION은 Python 사용자 정의 함수(UDF)의 가져온 Python 패키지를 나열합니다.정보_schema.packages를 쿼리하면 지원되는 Python 패키지 및 버전 목록을 제공합니다.이러한 특징은 Snowflake에서 Snowpark Python 패키지를 가져오고, 검사 및 확인할 수 있는 방법을 나타냅니다. 다른 옵션은 스노우파크 파이썬 패키지의 특성이 아닙니다. 스노우파크를 사용하여 로컬 및 원격 환경 모두에서 Python 패키지를 로드할 수 있으므로 옵션 B는 올바르지 않습니다. 옵션 C는 외부 엔드포인트에 닿지 않도록 타사 지원 Python 패키지가 잠기지 않고 네트워크 정책 및 보안 설정에 의해 제한되기 때문에 올바르지 않습니다.27번 COPY INTO를 사용하는 데이터 엔지니어의 경우 잘못된 문장에 표시하세요. <table> 명령을 사용하여 파일에서 눈송이 테이블로 데이터를 로드할 수 있나요? 반정형 파일 형식(JSON, Avro 등)의 파일 데이터 로드의 경우, 지원되는 유일한 문자 집합은 UTF-16입니다. 지원되는 모든 반정형 파일 형식(JSON, Avro 등)의 데이터를 로드하고 데이터를 언로드할 때는 UTF-8만 지원되는 문자 집합입니다. 로컬 환경의 경우, 먼저 파일을 내부(눈송이) 단계로 복사('스테이징')한 다음 테이블에 로드합니다. 제한이 해제된 파일(CSV, TSV 등)에서 데이터를 로드하는 데 지원되는 인코딩 문자 집합은 UTF-32 및 UTF-16 두 가지입니다. 설명 구분된 파일(CSV, TSV 등)의 데이터 로드의 경우 기본 문자 집합은 UTF-8입니다. 다른 문자 집합을 사용하려면 로드에 사용할 인코딩을 명시적으로 지정해야 합니다.반구조화 파일 형식(JSON, Avro 등)의 경우 지원되는 유일한 문자 집합은 UTF-8입니다.나머지 문장은 올바릅니다.NO.28 생성한 스키마 중 하나에서 내부 단계를 생성해야 하는데, 아래 옵션에서 잘못된 고려 사항은 무엇인가요? [해당되는 모든 항목 선택] 사용자 스테이지도 테이블 스테이지와 마찬가지로 변경하거나 삭제할 수 있습니다. 테이블 스테이지 유형은 한 명 이상의 사용자가 단계별로 관리하지만 단일 테이블에만 로드되는 파일을 저장하도록 설계되었습니다. 명명된 내부 스테이지 유형은 한 명 이상의 사용자가 스테이지화 및 관리하고 하나 이상의 테이블에 로드되는 파일을 저장할 수 있습니다. 스노우플레이크에서 만든 각 테이블에 대해 테이블 스테이지를 사용할 수 있습니다. 설명 스테이지는 파일의 데이터를 테이블로 로드할 수 있도록 데이터 파일이 저장되는 위치(즉, "스테이징")를 지정합니다.내부 스테이지 유형 사용자 스테이지 테이블 스테이지 명명된 스테이지 기본적으로 Snowflake의 각 사용자 및 테이블에는 로드할 데이터 파일을 스테이징하기 위한 내부 스테이지가 자동으로 할당되어 있습니다. 또한 명명된 내부 스테이지를 생성할 수 있습니다.데이터 로드 프로세스의 두 단계 모두에서 파일 스테이징 정보가 필요합니다.스노우플레이크에 파일을 업로드할 때 PUT 명령에 내부 스테이지를 지정해야 하며, COPY INTO에 동일한 스테이지를 지정해야 합니다. <table> 명령을 사용하세요.특정 데이터 파일에 가장 적합한 스테이지 유형을 고려하세요. 각 옵션은 장점과 잠재적인 단점을 제공합니다.사용자 단계각 사용자에게는 기본적으로 파일 저장을 위해 눈송이 단계가 할당되어 있습니다. 이 단계는 단일 사용자만 파일에 액세스하지만 여러 개의 테이블에 복사해야 하는 경우에 편리한 옵션입니다.사용자 단계에는 다음과 같은 특징과 제한 사항이 있습니다.사용자 단계는 @~을 사용하여 참조됩니다(예: 사용자 단계의 파일을 나열하려면 LIST @~을 사용).명명된 단계와 달리 사용자 단계는 변경하거나 삭제할 수 없습니다.사용자 단계는 파일 형식 옵션 설정을 지원하지 않습니다. 대신, 파일 형식 및 복사 옵션을 COPY INTO <table> 명령.이 옵션은 다음과 같은 경우에 적합하지 않습니다.여러 사용자가 파일에 액세스해야 하는 경우.현재 사용자에게 데이터가 로드될 테이블에 대한 INSERT 권한이 없는 경우.테이블 단계각 테이블에는 기본적으로 파일 저장을 위해 할당된 눈송이 단계가 있습니다. 이 단계는 여러 사용자가 파일에 액세스할 수 있어야 하고 눈송이 테이블에만 복사해야 하는 경우에 편리한 옵션입니다.테이블 단계에는 다음과 같은 특징과 제한 사항이 있습니다.테이블 단계는 테이블과 동일한 이름을 갖습니다(예. mytable이라는 테이블에는 as@%mytable.Unlike 이라는 이름의 스테이지가 참조되며, 테이블 스테이지는 변경하거나 삭제할 수 없습니다.테이블 스테이지는 로드하는 동안 데이터 변환을 지원하지 않습니다(즉, 쿼리를 COPY 명령의 소스로 사용).테이블 스테이지는 별도의 데이터베이스 개체가 아니라 테이블 자체에 연결된 암시적 스테이지입니다. 테이블 스테이지에는 자체적으로 부여할 수 있는 권한이 없습니다. 파일을 테이블 스테이지에 스테이징하거나, 파일을 나열하거나, 스테이지에서 쿼리하거나, 삭제하려면 테이블 소유자여야 합니다(테이블에 대한 소유권 권한이 있는 역할이 있어야 함).이 옵션은 파일의 데이터를 여러 테이블에 복사해야 하는 경우에