AWS Quicksight提供了API来管理数据集,其中包括定期增量刷新的配置和管理。下面是一个Python代码示例,演示如何使用AWS Quicksight API来配置和触发数据集的定期增量刷新。
import boto3
import json
quicksight = boto3.client('quicksight')
# Create a new scheduled incremental refresh for a dataset
def create_incremental_refresh(dataset_name, data_source_name, incremental_columns, schedule_expression):
response = quicksight.create_data_set(
AwsAccountId='xxxxxxx',
DataSetId=dataset_name,
ImportMode='SPICE',
PhysicalTableMap={
data_source_name: {
'S3Source': {
'DataSourceArn': 'arn:aws:quicksight:us-east-1:xxxxxxxxxxxx:datasource/'+data_source_name,
'InputColumns': incremental_columns,
'UploadSettings': {
'Format': 'CSV',
'ContainsHeader': True
}
},
'Columns': incremental_columns
}
},
LogicalTableMap={
'data_set_name':{
'Alias': dataset_name,
'Source': {
'PhysicalTableId': data_source_name
},
'DataTransforms':[
{
'RenameColumnOperation': {
'ColumnName': 'column_name',
'NewColumnName': 'new_column_name'
}
}
]
}
},
Permissions=[
{
'Principal': 'arn:aws:iam::xxxxxxxxxxxx:user/username',
'Actions': [
'quicksight:DescribeDataSet',
'quicksight:DescribeDataSetPermissions',
'quicksight:PassDataSet',
'quicksight:UpdateDataSet'
],
'Permissions': [
'READ',
'WRITE',
'CREATE',
'DELETE',
'DESCRIBE',
'ALTER',
'VIEW'
],
'GrantOption': True
}
],
VersionDescription='1',
RowLevelPermissionDataSet='string',
ColumnGroups=[
{
'GeoSpatialColumnGroup': {
'Name': '