데이터 분류 사용하기¶
이 항목에서는 스키마에서 테이블을 분류하고, 분류 결과를 검토하고, SQL 또는 Snowsight 를 사용하여 테이블의 열에 시스템 태그 를 설정하는 방법에 대한 정보를 제공합니다.
개요¶
데이터 관리자는 데이터 개인정보 보호 규정을 충족하기 위해 스키마의 테이블을 분류할 수 있습니다. 이러한 테이블에는 다음 시나리오가 포함됩니다.
스키마의 새 테이블.
동일한 스키마 내의 테이블에 있는 새 열 또는 변경된 열.
다시 분류해야 할 수도 있는 이전에 분류된 테이블.
이러한 시나리오를 평가하면 데이터 관리자가 민감한 개인 정보를 분류할 수 있습니다. 열에 시스템 태그를 설정하면 데이터 모니터링이 용이해집니다. 이후, 데이터 엔지니어는 Snowsight 의 마스킹 정책이나 행 액세스 정책을 사용하거나 SQL을 사용하여 개인 데이터와 민감한 데이터를 보호할 수 있습니다.
데이터 분류 시작하기¶
스키마에서 단일 테이블이나 여러 테이블을 분류하기 전에 다음을 수행하십시오.
워크플로를 선택합니다.
프로그래밍 방식을 선호하는 경우 다음 섹션의 단계를 따르십시오.
웹 인터페이스를 사용하려면 Snowsight 을 사용하여 스키마의 테이블 분류하기 섹션의 단계를 따르십시오.
사용할 웨어하우스를 결정합니다. 예를 들어, 정확한 보고 및 예산 책정을 활성화하려면 자신이 속한 비용 센터 또는 사업부와 일치하는 웨어하우스를 사용하십시오.
워크플로에 대기 시간을 고려하십시오. Snowsight 는 12시간마다 Snowsight 의 Databases 영역을 업데이트하며, 이때 업데이트된 테이블을 분류할 수 있습니다.
현재 역할에 대한 액세스 제어 구성을 확인합니다.
해당 역할을 가진 사용자가 액세스할 수 있는 오브젝트에 대한 권한 부여를 보려면 SHOW GRANTS TO ROLE 문을 사용하십시오. 사용 중인 역할에는 최소한 다음 권한을 부여해야 합니다.
분류 프로세스 중에 사용할 웨어하우스에 대한 USAGE.
분류 프로세스를 시작할 테이블에 대한 SELECT.
열에 시스템 태그를 설정할 수 있는 SNOWFLAKE.CORE_VIEWER 데이터베이스 역할.
Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하기 위한 SNOWFLAKE.GOVERNANCE_VIEWER 데이터베이스 역할.
다른 권한 부여 조합은 데이터 분류 권한 참조 를 확인하십시오.
액세스 제어 모델을 사용하면 다양한 가상 사용자가 워크플로에 참여할 수 있습니다. 예를 들어, 데이터 관리자는 스키마에서 테이블 분류를 스테이징할 수 있고 데이터 엔지니어는 Snowsight 에서 결과를 평가할 수 있습니다. 자신에게 가장 적합한 액세스 제어 모델과 워크플로를 선택하십시오.
SQL을 사용하여 단일 테이블 분류하기¶
이 접근 방식에서는 SQL을 사용하여 테이블을 분류하고 테이블의 열에 시스템 태그를 설정합니다. 데이터 분류 시작하기 섹션을 검토하여 사용 중인 역할에 스키마의 테이블을 분류하는 데 필요한 액세스 제어 권한이 있는지 확인하십시오.
이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다. SQL을 사용하여 스키마의 테이블을 분류하고 테이블 열에 시스템 태그를 설정하려면 다음 단계를 완료하십시오.
분류할 테이블을 식별합니다.
SYSTEM$CLASSIFY 저장 프로시저를 호출하여 테이블의 열을 분류하고 태그를 지정합니다.
CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'auto_tag': true});
TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하여 테이블 열의 태그 할당을 확인합니다.
SELECT * FROM TABLE( hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS( 'hr.tables.empl_info', 'table' ));
그 이후에는 Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하여 테이블의 최신 분류 결과를 확인할 수 있습니다.
분류하려는 각 테이블에 대해 이러한 단계를 반복합니다.
SQL을 사용하여 비동기 방식으로 스키마의 테이블 분류하기¶
이 접근 방식에서는 SQL을 사용하여 스키마의 모든 테이블을 비동기 방식으로 분류하고 각 테이블의 열에 시스템 태그를 설정합니다. 이 절차에서는 다음과 같이 가정합니다.
이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다.
1,000개 미만의 테이블 오브젝트를 포함하는 스키마를 선택합니다. SHOW TABLES IN SCHEMA 명령을 사용하여 스키마의 테이블 오브젝트 수를 확인할 수 있습니다.
SQL을 사용하여 스키마의 모든 테이블을 분류하고 각 테이블의 각 열에 시스템 태그를 설정하려면 다음 단계를 완료하십시오.
분류할 테이블이 포함된 스키마를 식별합니다.
SYSTEM$CLASSIFY_SCHEMA 저장 프로시저를 호출하여 스키마에서 테이블 분류를 예약합니다.
CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables', {'auto_tag': true});
동시에 너무 많은 스키마를 분류하지 않도록 주의하십시오. 자세한 내용은 사용법 노트 를 참조하십시오.
결과를 보려면 스키마의 각 테이블에서 SYSTEM$GET_CLASSIFICATION_RESULT 함수를 호출합니다.
SELECT SYSTEM$GET_CLASSIFICATION_RESULT('hr.tables.empl_info');
TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하여 테이블 열의 태그 할당을 확인합니다.
SELECT * FROM TABLE( hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS( 'hr.tables.empl_info', 'table' ));
그 이후에는 Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하여 테이블의 최신 분류 결과를 확인할 수 있습니다.
분류하려는 테이블이 포함된 각 스키마에 대해 이러한 단계를 반복합니다.
팁
스키마에서 테이블 분류를 취소하려면 SYSTEM$CANCEL_CLASSIFY_SCHEMA 저장 프로시저를 호출합니다.
Snowsight 을 사용하여 스키마의 테이블 분류하기¶
이 접근 방식에서는 Snowsight 를 사용하여 스키마의 테이블 분류를 스테이징하고 스키마의 각 테이블에 대한 열에 자동으로 태그를 지정합니다. 이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다.
스키마의 모든 테이블을 분류하고 스키마에 포함된 각 테이블의 각 열에 시스템 태그를 설정하려면 Snowsight 에서 다음 단계를 완료하십시오.
스키마에서 테이블의 분류 및 태그 지정을 트리거합니다.
Snowsight 에서 오브젝트 탐색기를 사용하여 선택한 스키마로 이동합니다.
More 메뉴(…)를 선택한 다음 Classify and Tag Sensitive Data 를 선택합니다.
웨어하우스가 아직 사용 중이 아니면 웨어하우스를 선택합니다.
분류할 테이블을 선택합니다. 기본적으로, 테이블은 선택되어 있지 않습니다.
Advanced Options 를 평가하고 필요에 따라 선택합니다.
Auto-tagging data 옵션을 사용하면 데이터를 분류한 후 열에 자동으로 태그를 할당할 수 있습니다. 이 옵션은 기본적으로 활성화되어 있으며 필요한 경우 비활성화할 수 있습니다.
Include custom classifiers 옵션을 사용하면 데이터를 분류하는 데 액세스할 수 있는 사용자 지정 분류기 를 사용할 수 있습니다.
액세스할 수 있는 사용자 지정 분류기를 확인하려면 View custom classifiers 를 선택하고 워크시트에서 명령을 실행합니다.
Classify and Tag Sensitive Data 를 선택합니다.
이 옵션을 선택하면 이전에 분류된 테이블을 다시 분류할 수 있습니다.
Snowsight 는 최대 1,000개의 테이블을 분류합니다.
또는 SQL을 사용하여 비동기 방식으로 스키마의 테이블 분류하기 에 표시된 대로 Worksheet 를 열고 SYSTEM$CLASSIFY_SCHEMA 를 호출할 수 있습니다. 이 옵션을 선택하는 경우 이 저장 프로시저를 호출한 후 오브젝트 탐색기에서 스키마로 다시 이동하십시오. 비교적 짧은 기간 동안 이 저장 프로시저를 호출하는 횟수를 염두에 두어야 합니다. 자세한 내용은 사용법 노트 를 참조하십시오.
분류 프로세스가 완료되도록 합니다. 완료되면 CLASSIFICATION 열에 녹색 확인 표시가 나타납니다.
View Results 를 선택합니다.
필요에 따라 태그 값을 변경합니다. 이렇게 하려면 SNOWFLAKE 데이터베이스에서 IMPORTED PRIVILEGES 권한이 부여된 역할을 사용하십시오.
프롬프트에 따라 스키마의 테이블을 검토하고 승인합니다. 필요에 따라 태그 값을 업데이트합니다.
Complete classification 를 선택합니다.
Tables 탭에는 Classification results reviewed and applied 가 표시됩니다. 다음을 수행하여 태그 할당을 확인할 수 있습니다.
테이블을 선택합니다.
Columns 탭으로 이동합니다.
TAGS 열을 검토합니다.
또는 다음을 수행할 수 있습니다.
워크시트를 사용하여 TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하면 특정 테이블의 열에 대한 태그 할당을 확인할 수 있습니다. 다른 옵션은 시스템 태그 추적하기 섹션을 참조하십시오.
오브젝트 탐색기를 사용하여 뷰로 이동하거나 워크시트에서 뷰를 쿼리하여 Account Usage DATA_CLASSIFICATION_LATEST 뷰 레코드를 검토합니다.
분류할 테이블이 포함된 다른 스키마에 대해 이러한 단계를 반복합니다.