CleanRoomsService / Client / get_schema_analysis_rule
get_schema_analysis_rule#
- CleanRoomsService.Client.get_schema_analysis_rule(**kwargs)#
Retrieves a schema analysis rule.
See also: AWS API Documentation
Request Syntax
response = client.get_schema_analysis_rule( collaborationIdentifier='string', name='string', type='AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE' )
- Parameters:
collaborationIdentifier (string) –
[REQUIRED]
A unique identifier for the collaboration that the schema belongs to. Currently accepts a collaboration ID.
name (string) –
[REQUIRED]
The name of the schema to retrieve the analysis rule for.
type (string) –
[REQUIRED]
The type of the schema analysis rule to retrieve. Schema analysis rules are uniquely identified by a combination of the collaboration, the schema name, and their type.
- Return type:
dict
- Returns:
Response Syntax
{ 'analysisRule': { 'collaborationId': 'string', 'type': 'AGGREGATION'|'LIST'|'CUSTOM'|'ID_MAPPING_TABLE', 'name': 'string', 'createTime': datetime(2015, 1, 1), 'updateTime': datetime(2015, 1, 1), 'policy': { 'v1': { 'list': { 'joinColumns': [ 'string', ], 'allowedJoinOperators': [ 'OR'|'AND', ], 'listColumns': [ 'string', ], 'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED' }, 'aggregation': { 'aggregateColumns': [ { 'columnNames': [ 'string', ], 'function': 'SUM'|'SUM_DISTINCT'|'COUNT'|'COUNT_DISTINCT'|'AVG' }, ], 'joinColumns': [ 'string', ], 'joinRequired': 'QUERY_RUNNER', 'allowedJoinOperators': [ 'OR'|'AND', ], 'dimensionColumns': [ 'string', ], 'scalarFunctions': [ 'ABS'|'CAST'|'CEILING'|'COALESCE'|'CONVERT'|'CURRENT_DATE'|'DATEADD'|'EXTRACT'|'FLOOR'|'GETDATE'|'LN'|'LOG'|'LOWER'|'ROUND'|'RTRIM'|'SQRT'|'SUBSTRING'|'TO_CHAR'|'TO_DATE'|'TO_NUMBER'|'TO_TIMESTAMP'|'TRIM'|'TRUNC'|'UPPER', ], 'outputConstraints': [ { 'columnName': 'string', 'minimum': 123, 'type': 'COUNT_DISTINCT' }, ], 'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED' }, 'custom': { 'allowedAnalyses': [ 'string', ], 'allowedAnalysisProviders': [ 'string', ], 'additionalAnalyses': 'ALLOWED'|'REQUIRED'|'NOT_ALLOWED', 'disallowedOutputColumns': [ 'string', ], 'differentialPrivacy': { 'columns': [ { 'name': 'string' }, ] } }, 'idMappingTable': { 'joinColumns': [ 'string', ], 'queryConstraints': [ { 'requireOverlap': { 'columns': [ 'string', ] } }, ], 'dimensionColumns': [ 'string', ] } } } } }
Response Structure
(dict) –
analysisRule (dict) –
A specification about how data from the configured table can be used.
collaborationId (string) –
The unique ID for the associated collaboration.
type (string) –
The type of analysis rule.
name (string) –
The name for the analysis rule.
createTime (datetime) –
The time the analysis rule was created.
updateTime (datetime) –
The time the analysis rule was last updated.
policy (dict) –
A policy that describes the associated data usage limitations.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
v1
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
v1 (dict) –
Controls on the query specifications that can be run on configured table.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
list
,aggregation
,custom
,idMappingTable
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
list (dict) –
Analysis rule type that enables only list queries on a configured table.
joinColumns (list) –
Columns that can be used to join a configured table with the table of the member who can query and other members’ configured tables.
(string) –
allowedJoinOperators (list) –
The logical operators (if any) that are to be used in an INNER JOIN match condition. Default is
AND
.(string) –
listColumns (list) –
Columns that can be listed in the output.
(string) –
additionalAnalyses (string) –
An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.
aggregation (dict) –
Analysis rule type that enables only aggregation queries on a configured table.
aggregateColumns (list) –
The columns that query runners are allowed to use in aggregation queries.
(dict) –
Column in configured table that can be used in aggregate function in query.
columnNames (list) –
Column names in configured table of aggregate columns.
(string) –
function (string) –
Aggregation function that can be applied to aggregate column in query.
joinColumns (list) –
Columns in configured table that can be used in join statements and/or as aggregate columns. They can never be outputted directly.
(string) –
joinRequired (string) –
Control that requires member who runs query to do a join with their configured table and/or other configured table in query.
allowedJoinOperators (list) –
Which logical operators (if any) are to be used in an INNER JOIN match condition. Default is
AND
.(string) –
dimensionColumns (list) –
The columns that query runners are allowed to select, group by, or filter by.
(string) –
scalarFunctions (list) –
Set of scalar functions that are allowed to be used on dimension columns and the output of aggregation of metrics.
(string) –
outputConstraints (list) –
Columns that must meet a specific threshold value (after an aggregation function is applied to it) for each output row to be returned.
(dict) –
Constraint on query output removing output rows that do not meet a minimum number of distinct values of a specified column.
columnName (string) –
Column in aggregation constraint for which there must be a minimum number of distinct values in an output row for it to be in the query output.
minimum (integer) –
The minimum number of distinct values that an output row must be an aggregation of. Minimum threshold of distinct values for a specified column that must exist in an output row for it to be in the query output.
type (string) –
The type of aggregation the constraint allows. The only valid value is currently COUNT_DISTINCT.
additionalAnalyses (string) –
An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.
The
additionalAnalyses
parameter is currently supported for the list analysis rule (AnalysisRuleList
) and the custom analysis rule (AnalysisRuleCustom
).
custom (dict) –
Analysis rule type that enables custom SQL queries on a configured table.
allowedAnalyses (list) –
The ARN of the analysis templates that are allowed by the custom analysis rule.
(string) –
allowedAnalysisProviders (list) –
The IDs of the Amazon Web Services accounts that are allowed to query by the custom analysis rule. Required when
allowedAnalyses
isANY_QUERY
.(string) –
additionalAnalyses (string) –
An indicator as to whether additional analyses (such as Clean Rooms ML) can be applied to the output of the direct query.
disallowedOutputColumns (list) –
A list of columns that aren’t allowed to be shown in the query output.
(string) –
differentialPrivacy (dict) –
The differential privacy configuration.
columns (list) –
The name of the column (such as user_id) that contains the unique identifier of your users whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.
(dict) –
Specifies the name of the column that contains the unique identifier of your users, whose privacy you want to protect.
name (string) –
The name of the column, such as user_id, that contains the unique identifier of your users, whose privacy you want to protect. If you want to turn on differential privacy for two or more tables in a collaboration, you must configure the same column as the user identifier column in both analysis rules.
idMappingTable (dict) –
The ID mapping table.
joinColumns (list) –
The columns that query runners are allowed to use in an INNER JOIN statement.
(string) –
queryConstraints (list) –
The query constraints of the analysis rule ID mapping table.
(dict) –
Provides any necessary query constraint information.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
requireOverlap
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
requireOverlap (dict) –
An array of column names that specifies which columns are required in the JOIN statement.
columns (list) –
The columns that are required to overlap.
(string) –
dimensionColumns (list) –
The columns that query runners are allowed to select, group by, or filter by.
(string) –
Exceptions