데이터 분류 사용하기¶
이 항목에서는 스키마에서 테이블을 분류하고, 분류 결과를 검토하고, 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});
출력에 하나 이상의 테이블에 대한
failed
메시지가 포함된 경우 SNOW GRANTS ON TABLE 명령을 사용하여 지정된 테이블에 대한 권한 부여를 확인합니다. 예:SHOW GRANTS ON TABLE hr.tables.salary;
필요한 경우 분류되지 않은 테이블에 대한 권한을 SYSTEM$CLASSIFY_SCHEMA 저장 프로시저를 호출하는 역할에 부여합니다. 그렇지 않으면 스키마의 각 테이블에서 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 뷰를 쿼리하여 테이블의 최신 분류 결과를 확인할 수 있습니다.
분류하려는 테이블이 포함된 각 스키마에 대해 이러한 단계를 반복합니다.
Snowsight 을 사용하여 스키마의 테이블 분류하기¶
이 접근 방식에서는 Snowsight 를 사용하여 스키마의 테이블 분류를 스테이징하고 스키마의 각 테이블에 대한 열에 자동으로 태그를 지정합니다. 이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다.
스키마의 모든 테이블을 분류하고 스키마에 포함된 각 테이블의 각 열에 시스템 태그를 설정하려면 Snowsight 에서 다음 단계를 완료하십시오.
스키마에서 테이블의 분류 및 태그 지정을 트리거합니다.
Snowsight 에서 오브젝트 탐색기를 사용하여 선택한 스키마로 이동합니다.
More 메뉴(…)를 선택한 다음 Classify Data 를 선택합니다.
웨어하우스를 선택하고 Auto-tagging data 옵션을 켭니다.
Classify Data and Apply Tags 를 선택합니다.
이 옵션을 선택하면 이전에 분류된 테이블을 다시 분류할 수 있습니다.
Snowsight 는 한 번에 최대 1,000개의 테이블을 분류합니다. 스키마에 1,000개보다 많은 테이블이 포함된 경우 먼저 초기 테이블 배치에 대해 이 절차를 완료한 다음 나머지 테이블에 대해 절차를 반복합니다.
또는 SQL을 사용하여 스키마의 테이블 분류하기 에 표시된 대로 Worksheet 를 열고 SYSTEM$CLASSIFY_SCHEMA 를 호출할 수 있습니다. 이 옵션을 선택하는 경우 이 저장 프로시저를 호출한 후 오브젝트 탐색기에서 스키마로 다시 이동하십시오.
분류 프로세스가 완료되도록 합니다. 완료되면 CLASSIFICATION 열에 녹색 확인 표시가 나타납니다.
View Results 를 선택합니다.
Auto-tagging data 옵션을 끄기로 결정한 경우 Review Classification 을 선택하고 결과를 평가한 후 각 열에 설정할 태그 값을 결정하십시오.
Column details 탭의 열에 설정된 태그를 보려면 SNOWFLAKE 데이터베이스에서 IMPORTED PRIVILEGES가 부여된 역할을 사용하십시오.
VALUE TO BE APPLIED 열을 평가하고 필요에 따라 태그 값을 변경한 후 Complete classification 을 선택합니다.
Tables 탭에는 Classification results reviewed and applied 가 표시됩니다. 다음을 수행하여 태그 할당을 확인할 수 있습니다.
테이블을 선택합니다.
Columns 탭으로 이동합니다.
TAGS 열을 검토합니다.
또는 다음을 수행할 수 있습니다.
워크시트를 사용하여 TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하면 특정 테이블의 열에 대한 태그 할당을 확인할 수 있습니다. 다른 옵션은 시스템 태그 추적하기 섹션을 참조하십시오.
오브젝트 탐색기를 사용하여 뷰로 이동하거나 워크시트에서 뷰를 쿼리하여 Account Usage DATA_CLASSIFICATION_LATEST 뷰 레코드를 검토합니다.
분류할 테이블이 포함된 다른 스키마에 대해 이러한 단계를 반복합니다.