Manage data listings

Manage data listings (데이터 리스팅 관리)

데이터 리스팅을 생성할 때 고려할 사항들에 대해 설명해요. 데이터 익스체인지에서 데이터 리스팅을 만들고 구성하는 데 필요한 파라미터와 절차를 다루어요.

출처: Snowflake Documentation

본문

리스팅 생성 시 고려 사항

Note

이 고려 사항들은 원격 리전에서 리스팅을 만들 때도 적용돼요.

  • 데이터는 서로 다른 계정 간에 공유되므로 데이터 컨슈머는 이중 따옴표로 묶인 식별자를 사용하지 않고 공유 데이터 객체를 사용할 수 있어야 해요(식별자 요구 사항 참고). 그 결과 테이블, 컬럼, 공유 이름의 객체 식별자는 대문자여야 하고 영숫자 문자만 사용해야 해요.
  • 공유 데이터베이스의 민감 데이터가 컨슈머 계정의 사용자에게 노출되지 않도록 하려면 보안 객체로 데이터 접근 제어를 참고해요.
  • 현재 컨슈머 계정과 공유된(즉, 직접 공유로) 공유는 리스팅에 추가할 수 있어요. 컨슈머는 공유에서 데이터베이스를 만들기 전에 데이터 익스체인지 웹 인터페이스에서 리스팅 약관을 수락해야 해요.
  • 공유를 만든 역할만 그 공유를 리스팅에 연결할 수 있어요.
  • 공유는 하나의 리스팅에만 연결할 수 있어요. 공유가 이미 리스팅에 연결되었다면, 그 리스팅이 삭제되었더라도 다른 리스팅에는 연결할 수 없어요.
  • 새 무료 리스팅 또는 수정된 무료 리스팅을 게시하기 전에 모든 샘플 쿼리가 자동 검증되어 참조된 객체가 공유에 추가되고 쿼리가 성공적으로 실행될 수 있는지 확인해요.
  • 데이터는 법적으로 공유 가능해야 해요(즉, 프로바이더가 데이터를 소유하거나 공유할 권리가 있어야 해요).

Note

데이터 리스팅이나 데이터 세트의 데이터가 어떤 법률이나 계약상 의무의 적용을 받는 한, 그 데이터를 공유할 법적·계약적 권리가 있음을 보장해야 해요. 예를 들어 보호된 건강 정보(PHI)는 개인화된 데이터 공유를 통해서만 공유할 수 있으며, 그러려면 (1) Snowflake 및 PHI를 받는 컨슈머와 비즈니스 동료 협약(BAA)을 체결하고, (2) 컨슈머도 Snowflake와 BAA를 체결했는지 확인해야 해요. 또한 데이터 공유를 통해 개인 데이터를 공유할 수 있지만, 그 데이터가 공개적으로 이용 가능하지 않다면 적용 가능한 법적·계약적 권리가 있어야 해요.

원격 리전에서 리스팅 생성 및 데이터 복제 시 고려 사항

  • 리스팅을 게시하면 컨슈머가 선택한 모든 리전에서 리스팅을 볼 수 있어요.
  • 리스팅은 자동으로 복제되지만 데이터는 복제되지 않아요.
  • 무료 리스팅의 경우 리스팅을 게시하기 전에 선택한 각 리전으로 데이터를 복제해야 해요.
  • 개인화 리스팅의 경우 컨슈머의 요청에 따라 데이터를 복제할 수 있어요.
  • 복제를 설정하고 관련 비용을 이해할 시간을 할애해요.
  • 어떤 리전에서 데이터를 공유하려면 그 리전에 계정이 있어야 데이터를 복제할 수 있어요. 계정이 여러 개라면 모든 계정이 같은 조직에 속해야 해요.
  • 원격 리전에서 리스팅을 게시할 때 조직의 모든 계정이 리스팅 요청을 처리하도록 허용하거나, 개별 계정을 프로바이더로 명시적으로 추가할 수 있어요. 리스팅 요청을 누가 처리할 수 있는지 지정할 수 있는 것은 리스팅 소유자뿐이에요.
  • 리전 간 데이터 공유는 Snowflake 데이터 복제 기능을 활용해요. 자세한 내용은 리전 및 클라우드 플랫폼 간 데이터 안전 공유를 참고해요.
  • 컨슈머가 요청할 때까지 각 리전으로 데이터를 복제할 필요는 없어요.
  • 무료 리스팅의 경우 원격 리전의 리스팅에 공유를 미리 연결하는 옵션이 있어요. 이렇게 하면 컨슈머가 요청을 제출하지 않고도 즉시 공유를 받을 수 있어요.
  • 원격 리전의 리스팅에 연결된 공유 목록을 보려면 공유를 리스팅에 연결한 원격 계정에 로그인해야 해요.

데이터 리스팅 필드

다음 표는 데이터 익스체인지에서 데이터 리스팅을 만들고 구성하는 데 필요한 파라미터를 설명해요. 리스팅 유형은 리스팅 유형을 참고해요.

섹션 필드 이름 설명 예
기본 정보 리스팅 유형 리스팅 유형(무료, 개인화)을 참고. 사용 가능 값: Free, Personalized
프로필 공유를 소유한 프로바이더 프로필의 이름. 리스팅을 게시하기 전에 프로바이더 프로필을 만들어야 함.
제목 데이터 리스팅의 제목. 제목은 110자를 초과할 수 없음. Historical Weather by Postcode.
부제목 데이터 리스팅의 부제목. 부제목은 110자를 초과할 수 없음. 제목과 부제목은 중복되지 않아야 함. Historical Weather Data by Location.
데이터 업데이트 빈도 데이터가 업데이트되는 빈도. 사용 가능 값: Near real-time, Daily, Weekly, Monthly, Quarterly, Annually, Never (Static Data).
카테고리 데이터 리스팅은 쉽게 발견되도록 분류됨.
서비스 약관 프로바이더 웹사이트에 호스팅된 리스팅 약관 링크. 컨슈머는 데이터 접근 전에 약관을 수락함. 무료 리스팅에는 리스팅 약관이 필수이고, 개인화 리스팅에는 선택 사항. https://www.example.com/en/legal
세부 정보 설명 공유된 데이터 세트의 설명. 설명에는 (a) 데이터 규모 (b) 테이블/뷰 설명 (c) 데이터 세트가 샘플인지 여부 (d) 데이터 사전을 찾는 위치가 포함되어야 함. ACME는 대기업에 맞춤형·정밀 기상 경보를 공급하는 1위 공급업체이자 전 세계 기상 예보, 데이터, 기상 컨설팅 서비스의 핵심 정보 소스입니다. 이 데이터는 미국 우편번호별 과거 기상 데이터로, 기존 데이터를 더욱 향상해 더 깊은 분석을 제공하는 데 사용할 수 있습니다.
문서 링크 더 상세한 문서가 있는 프로바이더 웹사이트 페이지 링크. 문서는 명확해야 하고 Snowflake 공유에 있는 올바른 스키마 객체를 참조해야 함. 표준 문서만으로는 안 됨. https://developer.example.com
데이터 데이터베이스 객체 또는 보안 공유 공유할 데이터를 선택. 이 섹션은 무료 데이터 리스팅에서만 사용 가능.
비즈니스 요구 비즈니스 요구 데이터 리스팅은 쉽게 발견되도록 비즈니스 요구별로 그룹화됨. 리스팅에 대해 비즈니스 요구를 최대 6개 선택할 수 있음. 드롭다운 목록에 관련 비즈니스 요구가 없으면 사용자 정의 비즈니스 요구를 만들 수 있음. 컨슈머는 드롭다운 목록에 있는 비즈니스 요구를 기반으로 리스팅을 쉽게 발견할 수 있음. 단, 추가한 사용자 정의 비즈니스 요구는 포함되지 않으며 리스팅 세부 정보에서만 볼 수 있음.
설명 데이터 또는 데이터 서비스가 비즈니스 요구를 어떻게 해결하는지 설명.
샘플 SQL 쿼리 제목 쿼리가 데이터를 이해하는 데 도움이 되는 설명적 제목. 예를 여러 개 추가할 수 있음.
설명 (선택) 스키마 이름, 샘플 테이블, 필드, 사용 사례 등 추가 지침이 있는 예 설명.
SQL 쿼리 공유를 만드는 데 사용하는 데이터베이스에 대해 샘플 쿼리 테스트. Snowflake는 쿼리를 자동 검증해 모든 참조 객체가 공유에 추가되고 쿼리가 성공적으로 실행되는지 확인. 검증이 실패하면 이유를 담은 오류 메시지가 표시됨. 실패한 각 쿼리 옆에 느낌표가 보임.
리전 가용성 모든 사용 가능한 리전 또는 특정 리전 리스팅이 표시될 리전. 이 리전들로 데이터를 복제해야 함. 관리자 승인을 위해 다시 제출하지 않고 언제든지 사용 가능한 리전 목록을 편집할 수 있음. 이전에 사용 가능했던 리전을 제거하면 그 리전의 컨슈머는 더 이상 리스팅을 볼 수 없음.

데이터 리스팅 생성 및 게시

  1. Snowsight에 로그인해요.
  2. 탐색 메뉴에서 Data sharing » External sharing을 선택해요.
  3. Share Data 드롭다운 목록을 선택하고 데이터 익스체인지를 선택해요.
  4. New Listing 대화 상자에서 컨슈머에게 표시되는 리스팅 제목을 입력하고 리스팅 유형을 선택해요. 리스팅 유형에 대한 자세한 내용은 리스팅 유형을 참고해요.
  5. 새 리스팅의 각 섹션을 작성해요. 나중에 마치기 위해 언제든지 초안을 저장할 수 있어요. 각 섹션과 관련 필드의 설명은 리스팅 구성을 참고해요.

무료 리스팅의 경우 리스팅에 공유를 연결하려면 Data 섹션을 편집할 때:

Note

리스팅이 게시될 때까지는 로컬/기본 계정의 공유에만 연결할 수 있어요. 리스팅 게시 후에는 선택한 추가 리전의 공유에 연결할 수 있어요.

  1. Select Data를 선택해요.
  2. 보안 공유가 있다면 공유로 이동해 선택해요. 공유가 없다면 원하는 데이터베이스로 이동해 공유에 추가하려는 데이터베이스 객체를 선택해요.

Note

공유가 보이지 않으면 이미 다른 리스팅에 연결되었거나, 이전에 컨슈머와 공유된 것이에요.

  1. Done을 선택해요.
  2. (선택) 보안 공유의 기본 이름을 변경할 수 있어요.
  3. Save를 선택해요.
  4. 모든 섹션을 완료하면 Publish를 선택해 선택한 리전에 리스팅을 게시해요.

Publish 버튼은 다음 경우 활성화되지 않아요:

  • 제공된 샘플 SQL 쿼리 중 하나라도 검증에 실패한 경우. 자세한 내용은 데이터 리스팅 필드를 참고해요.
  • 공유 소유자가 아닌 경우.

개인화 리스팅 요청 보기

Note

데이터 요청을 알리기 위해 프로바이더에게 이메일 알림이 전송돼요. Settings 탭에서 특정 리스팅의 요청 알림 이메일을 변경할 수 있어요.

  1. 탐색 메뉴에서 Data sharing » External sharing을 선택해요.
  2. Requests 탭을 선택해요. 필터링 드롭다운 목록을 사용해 상태별로 요청을 확인해요.

원격 리전의 데이터 리스팅에 대한 컨슈머 요청 승인

Note

  • 개인화 리스팅의 경우 데이터가 원격 리전에서 자동으로 사용 가능하지 않아요. 프로바이더가 각 리전으로 데이터를 복제할 책임이 있어요.
  • 무료 리스팅의 경우 원격 리전의 리스팅에 공유를 미리 연결하는 옵션이 있어요. 이렇게 하면 요청을 제출하지 않고도 컨슈머가 즉시 공유를 받을 수 있어요. 리전의 첫 번째 컨슈머로부터 요청을 받은 후 데이터를 복제하고 공유를 리스팅에 연결할 수도 있어요. 공유가 리스팅에 연결되면 그 리전의 모든 컨슈머가 즉시 공유에 접근할 수 있어요.
  • 리스팅을 특정 프로바이더 계정(들)이 처리할지, 조직의 모든 계정이 처리할지 지정할 수 있어요.
  • 컨슈머가 다른 리전에 있다면, 공유를 연결하기 전에 각 원격 리전의 계정으로 데이터 복제를 설정해야 해요. 자세한 내용은 리전 및 클라우드 플랫폼 간 데이터 안전 공유를 참고해요.
  1. 탐색 메뉴에서 Data sharing » External sharing을 선택해요.
  2. Requests 탭을 선택해요.
  3. 리스팅 이름 옆의 Review를 선택해요.
  4. Associate Secure Share 섹션에서 공유를 만들 계정을 선택해요.
  5. 공유와 공유된 데이터베이스 객체를 소유한 역할(또는 데이터베이스 객체를 공유에 추가하는 데 필요한 권한이 있는 역할)을 선택해요.
  6. Select Data를 선택해요.
  7. 보안 공유가 있다면 공유로 이동해 선택해요. 공유가 없다면 원하는 데이터베이스로 이동해 공유에 추가하려는 데이터베이스 객체를 선택해요.

Note

공유가 보이지 않으면 이미 다른 리스팅에 연결되었거나, 이전에 컨슈머와 공유된 것이에요.

  1. Done을 선택해요.
  2. (선택) 보안 공유의 기본 이름을 변경해요.
  3. Fulfill Request를 선택해요.

Tip

원격 리전의 요청을 처리할 때 오류가 발생하면 다음을 고려해요.

  • 원격 계정이 프로바이더로 Marketplace에 추가되었는가?
  • 원격 계정이 리스팅을 게시한 계정과 같은 조직의 일부인가?
  • ACCOUNTADMIN 역할로 새 공유를 만들었는가?
  • 연결하려는 공유에 다른 컨슈머를 추가했는가?

처리된 리스팅 요청 보기

Snowsight를 사용해 무료 또는 개인화 리스팅 요청을 처리하는 프로바이더는 공유에 추가된 컨슈머의 기록을 볼 수 있어요. 기록을 보려면 탐색 메뉴에서 Data sharing » Internal sharing을 선택하고 Shared by your account 탭을 선택해요.

이 기록들은 QUERY_HISTORY 뷰에서도 사용할 수 있어요.

데이터 리스팅 편집

리스팅의 새 버전을 게시하면 이전에 게시된 리스팅을 덮어써요. 이전에 사용 가능했던 리전을 제거하면 그 리전의 컨슈머는 공유된 데이터 세트에 더 이상 접근할 수 없어요.

  1. ACCOUNTADMIN으로 Snowsight에 로그인해요.
  2. 탐색 메뉴에서 Data sharing » External sharing » Shared by your account를 선택해요.
  3. 업데이트하려는 리스팅의 이름을 클릭해요.
  4. 리스팅 제목 옆에서 New Draft를 클릭해요.
  5. 업데이트하려는 섹션의 Edit을 클릭해요.
  6. Publish를 클릭해요.

데이터 리스팅 게시 취소

데이터 리스팅 게시를 취소하면 기존 컨슈머는 공유에서 제거하지 않는 한 데이터 공유에 여전히 접근할 수 있어요. 새 컨슈머는 그것을 볼 수 없어요.

  1. ACCOUNTADMIN으로 Snowsight에 로그인해요.
  2. 탐색 메뉴에서 Data sharing » External sharing » Shared by your account를 선택해요.
  3. 게시를 취소하려는 리스팅의 이름을 선택해요.
  4. 오른쪽 위 모서리의 Live 드롭다운 목록에서 Unpublish를 선택해요.

데이터 리스팅 다시 게시

  1. ACCOUNTADMIN으로 Snowsight에 로그인해요.
  2. 탐색 메뉴에서 Data sharing » External sharing » Shared by your account를 선택해요.
  3. 다시 게시하려는 리스팅의 이름을 선택해요.
  4. 오른쪽 위 모서리에서 드롭다운 목록의 Re-publish를 선택해요.
  5. Re-publish를 선택해 리스팅을 다시 게시해요.

데이터 리스팅 제거

프로바이더로서 리스팅 제거를 참고해요.

데이터 공유 업데이트

Snowsight로 데이터 공유를 업데이트할 수 있어요. 데이터 리스팅을 수정할 때마다 프로세스가 깨지지 않도록 컨슈머에게 알려야 한다는 점을 명심해요. 중단 변경(breaking change)의 예는 다음과 같아요.

  • 컬럼 추가/제거.
  • 객체 이름 변경.
  • 객체 제거.

더 알아보기 (Learn more)