Data Set Args
Resource for managing a QuickSight Data Set.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.quicksight.DataSet;
import com.pulumi.aws.quicksight.DataSetArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceUploadSettingsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataSet("example", DataSetArgs.builder()
.dataSetId("example-id")
.importMode("SPICE")
.physicalTableMaps(DataSetPhysicalTableMapArgs.builder()
.physicalTableMapId("example-id")
.s3Source(DataSetPhysicalTableMapS3SourceArgs.builder()
.dataSourceArn(aws_quicksight_data_source.example().arn())
.inputColumns(DataSetPhysicalTableMapS3SourceInputColumnArgs.builder()
.name("Column1")
.type("STRING")
.build())
.uploadSettings(DataSetPhysicalTableMapS3SourceUploadSettingsArgs.builder()
.format("JSON")
.build())
.build())
.build())
.build());
}
}
With Column Level Permission Rules
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.quicksight.DataSet;
import com.pulumi.aws.quicksight.DataSetArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceUploadSettingsArgs;
import com.pulumi.aws.quicksight.inputs.DataSetColumnLevelPermissionRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataSet("example", DataSetArgs.builder()
.dataSetId("example-id")
.importMode("SPICE")
.physicalTableMaps(DataSetPhysicalTableMapArgs.builder()
.physicalTableMapId("example-id")
.s3Source(DataSetPhysicalTableMapS3SourceArgs.builder()
.dataSourceArn(aws_quicksight_data_source.example().arn())
.inputColumns(DataSetPhysicalTableMapS3SourceInputColumnArgs.builder()
.name("Column1")
.type("STRING")
.build())
.uploadSettings(DataSetPhysicalTableMapS3SourceUploadSettingsArgs.builder()
.format("JSON")
.build())
.build())
.build())
.columnLevelPermissionRules(DataSetColumnLevelPermissionRuleArgs.builder()
.columnNames("Column1")
.principals(aws_quicksight_user.example().arn())
.build())
.build());
}
}
With Field Folders
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.quicksight.DataSet;
import com.pulumi.aws.quicksight.DataSetArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceUploadSettingsArgs;
import com.pulumi.aws.quicksight.inputs.DataSetFieldFolderArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataSet("example", DataSetArgs.builder()
.dataSetId("example-id")
.importMode("SPICE")
.physicalTableMaps(DataSetPhysicalTableMapArgs.builder()
.physicalTableMapId("example-id")
.s3Source(DataSetPhysicalTableMapS3SourceArgs.builder()
.dataSourceArn(aws_quicksight_data_source.example().arn())
.inputColumns(DataSetPhysicalTableMapS3SourceInputColumnArgs.builder()
.name("Column1")
.type("STRING")
.build())
.uploadSettings(DataSetPhysicalTableMapS3SourceUploadSettingsArgs.builder()
.format("JSON")
.build())
.build())
.build())
.fieldFolders(DataSetFieldFolderArgs.builder()
.fieldFoldersId("example-id")
.columns("Column1")
.description("example description")
.build())
.build());
}
}
With Permissions
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.quicksight.DataSet;
import com.pulumi.aws.quicksight.DataSetArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceUploadSettingsArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPermissionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataSet("example", DataSetArgs.builder()
.dataSetId("example-id")
.importMode("SPICE")
.physicalTableMaps(DataSetPhysicalTableMapArgs.builder()
.physicalTableMapId("example-id")
.s3Source(DataSetPhysicalTableMapS3SourceArgs.builder()
.dataSourceArn(aws_quicksight_data_source.example().arn())
.inputColumns(DataSetPhysicalTableMapS3SourceInputColumnArgs.builder()
.name("Column1")
.type("STRING")
.build())
.uploadSettings(DataSetPhysicalTableMapS3SourceUploadSettingsArgs.builder()
.format("JSON")
.build())
.build())
.build())
.permissions(DataSetPermissionArgs.builder()
.actions(
"quicksight:DescribeDataSet",
"quicksight:DescribeDataSetPermissions",
"quicksight:PassDataSet",
"quicksight:DescribeIngestion",
"quicksight:ListIngestions")
.principal(aws_quicksight_user.example().arn())
.build())
.build());
}
}
With Row Level Permission Tag Configuration
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.quicksight.DataSet;
import com.pulumi.aws.quicksight.DataSetArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceArgs;
import com.pulumi.aws.quicksight.inputs.DataSetPhysicalTableMapS3SourceUploadSettingsArgs;
import com.pulumi.aws.quicksight.inputs.DataSetRowLevelPermissionTagConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataSet("example", DataSetArgs.builder()
.dataSetId("example-id")
.importMode("SPICE")
.physicalTableMaps(DataSetPhysicalTableMapArgs.builder()
.physicalTableMapId("example-id")
.s3Source(DataSetPhysicalTableMapS3SourceArgs.builder()
.dataSourceArn(aws_quicksight_data_source.example().arn())
.inputColumns(DataSetPhysicalTableMapS3SourceInputColumnArgs.builder()
.name("Column1")
.type("STRING")
.build())
.uploadSettings(DataSetPhysicalTableMapS3SourceUploadSettingsArgs.builder()
.format("JSON")
.build())
.build())
.build())
.rowLevelPermissionTagConfiguration(DataSetRowLevelPermissionTagConfigurationArgs.builder()
.status("ENABLED")
.tagRules(DataSetRowLevelPermissionTagConfigurationTagRuleArgs.builder()
.columnName("Column1")
.tagKey("tagkey")
.matchAllValue("*")
.tagMultiValueDelimiter(",")
.build())
.build())
.build());
}
}
Import
A QuickSight Data Set can be imported using the AWS account ID and data set ID separated by a comma (,
) e.g.,
$ pulumi import aws:quicksight/dataSet:DataSet example 123456789012,example-id
Constructors
Properties
AWS account ID.
Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported. See column_groups.
A set of 1 or more definitions of a ColumnLevelPermissionRule. See column_level_permission_rules.
The usage configuration to apply to child datasets that reference this dataset as a source. See data_set_usage_configuration.
The folder that contains fields and nested subfolders for your dataset. See field_folders.
Indicates whether you want to import the data into SPICE. Valid values are SPICE
and DIRECT_QUERY
.
Configures the combination and transformation of the data from the physical tables. Maximum of 1 entry. See logical_table_map.
A set of resource permissions on the data source. Maximum of 64 items. See permissions.
Declares the physical tables that are available in the underlying data sources. See physical_table_map. The following arguments are optional:
The refresh properties for the data set. NOTE: Only valid when import_mode
is set to SPICE
. See refresh_properties.
The row-level security configuration for the data that you want to create. See row_level_permission_data_set.
The configuration of tags on a dataset to set row-level security. Row-level security tags are currently supported for anonymous embedding only. See row_level_permission_tag_configuration.