사용자 지정 분석 규칙 입력 AWS Clean Rooms - AWS Clean Rooms

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

사용자 지정 분석 규칙 입력 AWS Clean Rooms

에서 AWS Clean Rooms사용자 지정 분석 규칙은 구성된 테이블에서 사용자 지정 쿼리를 실행할 수 있는 새로운 유형의 분석 규칙입니다. 사용자 지정 SQL 쿼리는 여전히 SELECT 명령만 사용하는 것으로 제한되지만 집계목록 쿼리보다 더 많은 SQL 구성을 사용할 수 있습니다(예: 창 함수, OUTER JOIN, CTE 또는 하위 쿼리가 있고, 전체 목록은 AWS Clean Rooms SQL 참조를 참조하세요). 사용자 지정 SQL 쿼리는 집계목록 쿼리와 같은 쿼리 구조를 따를 필요가 없습니다.

사용자 지정 분석 규칙은 사용자 지정 속성 분석, 벤치마킹, 증분 분석, 대상 발견과 같은 집계 및 목록 분석 규칙이 지원하는 것보다 더 고급 사용 사례를 지원합니다. 이는 집계 및 목록 분석 규칙이 지원하는 사용 사례의 일부에 추가됩니다.

사용자 지정 분석 규칙은 차등 프라이버시 기능도 지원합니다. 차등 프라이버시는 데이터 프라이버시를 보호하기 위해 수학적으로 엄격한 프레임워크입니다. 자세한 정보는 AWS Clean Rooms 차별적 프라이버시을 참조하세요. 분석 템플릿을 만들면 AWS Clean Rooms 차등 개인 정보 보호는 해당 템플릿을 검사하여 해당 템플릿이 AWS Clean Rooms 차등 개인 정보 보호에 대한 범용 쿼리 구조와 호환되는지 여부를 확인합니다. 이 검증을 통해 차등 개인 정보 보호 테이블에서 허용되지 않는 분석 템플릿을 만들지 않아도 됩니다.

사용자 지정 분석 규칙을 구성하기 위해 데이터 소유자는 분석 템플릿에 저장된 특정 사용자 지정 쿼리가 구성된 테이블에서 실행되도록 허용하도록 선택할 수 있습니다. 데이터 소유자는 사용자 지정 분석 규칙에서 허용된 분석 컨트롤에 추가하기 전에 분석 템플릿을 검토합니다. 분석 템플릿은 테이블이 다른 공동 작업과 연결되어 있더라도 해당 템플릿을 만든 공동 작업에서만 사용할 수 있고 볼 수 있으며 해당 공동 작업에서 쿼리할 수 있는 구성원만 실행할 수 있습니다.

또는 구성원이 다른 구성원(쿼리 제공자)이 검토 없이 쿼리를 생성하도록 허용할 수도 있습니다. 구성원은 사용자 지정 분석 규칙에서 허용된 쿼리 제공자가 제어하는 쿼리 제공자의 계정을 추가합니다. 쿼리 제공자가 쿼리를 수행할 수 있는 구성원인 경우 구성원은 구성된 테이블에서 직접 모든 쿼리를 실행할 수 있습니다. 쿼리 제공자는 분석 템플릿을 생성하여 쿼리를 생성할 수도 있습니다. 쿼리 제공자가 생성한 쿼리는 존재하고 테이블이 연결된 모든 공동 작업에서 테이블에서 자동으로 실행되도록 허용됩니다. AWS 계정

데이터 소유자는 분석 템플릿 또는 계정만 쿼리를 생성하도록 허용할 수 있으며 둘 다 생성할 수는 없습니다. 데이터 소유자가 테이블을 비워 두면 쿼리를 할 수 있는 구성원은 구성된 테이블에서 쿼리를 실행할 수 없습니다.

사용자 지정 분석 규칙, 사전 정의된 구조

다음 예제에는 차등 프라이버시 기능을 켜고 사용자 지정 분석 규칙을 완성하는 방법을 보여 주는 사전 정의된 구조가 포함되어 있습니다. userIdentifier 값은 사용자를 고유하게 식별하는 열(예: user_id)입니다. 공동 작업에서 개인 정보 보호 차등 기능이 설정된 두 개 이상의 테이블이 있는 경우 테이블 전체에서 사용자에 대한 일관된 정의를 유지하려면 두 분석 규칙의 사용자 식별자 열과 동일한 열을 구성해야 합니다. AWS Clean Rooms

{ "allowedAnalyses": ["ANY_QUERY"] | string[], "allowedAnalysisProviders": [], "differentialPrivacy": { "columns": [ { "name": "userIdentifier" } ] } }

다음 작업 중 하나를 수행할 수 있습니다.

  • 허용된 분석 제어에 분석 템플릿 ARN을 추가합니다. 이 경우 allowedAnalysisProviders 컨트롤은 포함되지 않습니다.

    { allowedAnalyses: string[] }
  • allowedAnalysisProviders컨트롤에 멤버 AWS 계정 ID를 추가하세요. 이 경우에는 ANY_QUERYallowedAnalyses 컨트롤에 추가합니다.

    { allowedAnalyses: ["ANY_QUERY"], allowedAnalysisProviders: string[] }

사용자 지정 분석 규칙 예제

다음 예는 사용자 지정 분석 규칙을 AWS Clean Rooms 사용하여 두 회사가 협업하는 방법을 보여줍니다.

회사 A에는 고객 및 판매 데이터가 있습니다. 회사 A는 회사 B 사이트에서 광고 캠페인의 매출 증대를 파악하는 데 관심이 있습니다. 회사 B에는 회사에 유용한 시청률 데이터 및 세그먼트 속성(예: 광고를 볼 때 사용한 장치)이 있습니다.

회사 A에는 공동 작업에서 실행하려는 특정 증분 쿼리가 있습니다.

공동 작업을 생성하고 공동 작업을 통해 사용자 지정 분석을 실행하기 위해 회사는 다음을 수행합니다.

  1. 회사 A는 공동 작업을 만들고 멤버십을 생성합니다. 공동 작업에는 회사 B가 공동 작업의 또 다른 구성원으로 참여합니다. 회사 A는 공동 작업에서 쿼리 로깅을 활성화하고 해당 계정에서 쿼리 로깅을 활성화합니다.

  2. 회사 B는 공동 작업 멤버십을 생성합니다. 이를 통해 해당 계정에서 쿼리 로깅이 가능합니다.

  3. 회사 A는 CRM으로 구성된 테이블을 생성합니다.

  4. 회사 A는 판매 구성 테이블에 빈 사용자 지정 분석 규칙을 추가합니다.

  5. 회사 A는 판매 구성 테이블을 공동 작업에 연결합니다.

  6. 회사 B는 시청률 구성 테이블을 만듭니다.

  7. 회사 B는 시청률 구성 테이블에 빈 사용자 지정 분석 규칙을 추가합니다.

  8. 회사 B는 시청률 구성 테이블을 공동 작업과 연결합니다.

  9. 회사 A는 공동 작업과 관련된 판매 테이블 및 시청률 테이블을 보고 캠페인 월의 증분 쿼리 및 매개 변수를 추가하여 분석 템플릿을 만듭니다.

    { "analysisParameters": [ { "defaultValue": "" "type": "DATE" "name": "campaign_month" } ], "description": "Monthly incrementality query using sales and viewership data" "format": "SQL" "name": "Incrementality analysis" "source": "WITH labeleddata AS ( SELECT hashedemail, deviceid, purchases, unitprice, purchasedate, CASE WHEN testvalue IN ('value1', 'value2', 'value3') THEN 0 ELSE 1 END AS testgroup FROM viewershipdata ) SELECT labeleddata.purchases, provider.impressions FROM labeleddata INNER JOIN salesdata ON labeleddata.hashedemail = provider.hashedemail WHERE MONTH(labeleddata.purchasedate) > :campaignmonth AND testgroup = :group " }
  10. 회사 A는 사용자 지정 분석 규칙에서 허용된 분석 제공자 컨트롤에 해당 계정 (예: 444455556666) 을 추가합니다. 이들은 자신이 만든 모든 쿼리가 판매 구성 테이블에서 실행되도록 허용하기를 원하기 때문에 허용된 분석 공급자 컨트롤을 사용합니다.

    { "allowedAnalyses": [ "ANY_QUERY" ], "allowedAnalysisProviders": [ "444455556666" ] }
  11. 회사 B는 공동 작업에서 생성된 분석 템플릿을 보고 쿼리 문자열 및 파라미터를 포함한 내용을 검토합니다.

  12. 회사 B는 분석 템플릿이 증분 사용 사례를 충족하고 시청률 구성 테이블을 쿼리할 수 있는 방법에 대한 프라이버시 요구 사항을 충족한다고 판단합니다.

  13. 회사 B는 시청률 테이블의 사용자 지정 분석 규칙에서 허용된 분석 컨트롤에 분석 템플릿 ARN을 추가합니다. 시청률이 구성된 테이블에서 증분 쿼리만 실행되도록 허용하려고 하기 때문에 허용된 분석 제어를 사용합니다.

    { "allowedAnalyses": [ "arn:aws:cleanrooms:us-east-1:111122223333:membership/41327cc4-bbf0-43f1-b70c-a160dddceb08/analysistemplate/1ff1bf9d-781c-418d-a6ac-2b80c09d6292" ] }
  14. 회사 A는 분석 템플릿을 실행하고 매개변수 값 05-01-2023을 사용합니다.

차등 프라이버시가 사용되는 사용자 지정 분석 규칙

에서 사용자 지정 분석 AWS Clean Rooms규칙은 차등 개인 정보를 지원합니다. 차등 프라이버시는 재식별 시도로부터 데이터를 보호하는 데 도움이 되는 수학적으로 엄격한 데이터 프라이버시 보호 프레임워크입니다.

차등 개인 정보 보호는 광고 캠페인 계획, post-ad-campaign 측정, 금융 기관 컨소시엄에서의 벤치마킹, 의료 연구를 위한 A/B 테스트와 같은 집계 분석을 지원합니다.

지원되는 쿼리 구조 및 구문은 쿼리 구조 및 구문에 정의되어 있습니다.

차등 프라이버시가 사용되는 사용자 지정 분석 규칙 예제

이전 섹션에 제시된 사용자 지정 분석 규칙 예제를 생각해 봅니다. 이 예제는 차등 프라이버시를 사용하여 재식별 시도로부터 데이터를 보호하는 동시에 파트너가 데이터에서 비즈니스에 중요한 인사이트를 얻을 수 있도록 하는 방법을 보여 줍니다. 시청률 데이터를 보유한 회사 B가 차등 프라이버시를 통해 데이터를 보호하고자 한다고 가정해 보겠습니다. 차등 프라이버시 설정을 완료하기 위해 회사 B는 다음 단계를 완료합니다.

  1. 회사 B는 시청률 구성 테이블에 사용자 지정 분석 규칙을 추가하면서 차등 프라이버시를 사용 설정합니다. 회사 B는 사용자 식별자 열로 viewershipdata.hashedemail을 선택합니다.

  2. 회사 B는 시청률 데이터 테이블을 쿼리에 사용할 수 있도록 공동 작업에 차등 프라이버시 정책을 추가합니다. 회사 B는 설정을 빠르게 완료하기 위해 기본 정책을 선택합니다.

회사 B의 사이트에서 광고 캠페인의 매출 증대를 파악하려는 회사 A가 분석 템플릿을 실행합니다. 쿼리가 AWS Clean Rooms 차등 프라이버시의 범용 쿼리 구조와 호환되므로 쿼리가 성공적으로 실행됩니다.

쿼리 구조 및 구문

차등 프라이버시 기능이 켜진 테이블이 적어도 하나 이상 포함된 쿼리는 다음 구문을 따라야 합니다.

query_statement: [cte, ...] final_select cte: WITH sub_query AS ( inner_select [ UNION | INTERSECT | UNION_ALL | EXCEPT/MINUS ] [ inner_select ] ) inner_select: SELECT [user_id_column, ] expression [, ...] FROM table_reference [, ...] [ WHERE condition ] [ GROUP BY user_id_column[, expression] [, ...] ] [ HAVING condition ] final_select: SELECT [expression, ...] | COUNT | COUNT_DISTINCT | SUM | AVG | STDDEV FROM table_reference [, ...] [ WHERE condition ] [ GROUP BY expression [, ...] ] [ HAVING COUNT | COUNT_DISTINCT | SUM | AVG | STDDEV | condition ] [ ORDER BY column_list ASC | DESC ] [ OFFSET literal ] [ LIMIT literal ] expression: column_name [, ...] | expression AS alias | aggregation_functions | window_functions_on_user_id | scalar_function | CASE | column_name math_expression [, expression] window_functions_on_user_id: function () OVER (PARTITION BY user_id_column, [column_name] [ORDER BY column_list ASC|DESC])
참고

차등 프라이버시 쿼리 구조 및 구문에 대해서는 다음 사항에 유의해야 합니다.

  • 하위 쿼리는 지원되지 않습니다.

  • 테이블 또는 CTE에 차등 프라이버시로 보호되는 데이터가 포함된 경우 일반 테이블 표현식(CTE)에서 사용자 식별자 열을 내보내야 합니다. 필터, 그룹화 및 집계는 사용자 수준에서 수행해야 합니다.

  • Final_select는 COUNT DISTINCT, COUNT, SUM, AVG, STDDEV 집계 함수를 허용합니다.

차등 프라이버시에서 지원되는 SQL 키워드에 대한 자세한 내용은 SQL AWS Clean Rooms 차등 프라이버시의 기능 섹션을 참조하세요.