AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Class: Aws::QuickSight::Types::CreateDataSetRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb

Overview

Note:

When making an API call, you may pass CreateDataSetRequest data as a hash:

{
  aws_account_id: "AwsAccountId", # required
  data_set_id: "ResourceId", # required
  name: "ResourceName", # required
  physical_table_map: { # required
    "PhysicalTableId" => {
      relational_table: {
        data_source_arn: "Arn", # required
        catalog: "RelationalTableCatalog",
        schema: "RelationalTableSchema",
        name: "RelationalTableName", # required
        input_columns: [ # required
          {
            name: "ColumnName", # required
            type: "STRING", # required, accepts STRING, INTEGER, DECIMAL, DATETIME, BIT, BOOLEAN, JSON
          },
        ],
      },
      custom_sql: {
        data_source_arn: "Arn", # required
        name: "CustomSqlName", # required
        sql_query: "SqlQuery", # required
        columns: [
          {
            name: "ColumnName", # required
            type: "STRING", # required, accepts STRING, INTEGER, DECIMAL, DATETIME, BIT, BOOLEAN, JSON
          },
        ],
      },
      s3_source: {
        data_source_arn: "Arn", # required
        upload_settings: {
          format: "CSV", # accepts CSV, TSV, CLF, ELF, XLSX, JSON
          start_from_row: 1,
          contains_header: false,
          text_qualifier: "DOUBLE_QUOTE", # accepts DOUBLE_QUOTE, SINGLE_QUOTE
          delimiter: "Delimiter",
        },
        input_columns: [ # required
          {
            name: "ColumnName", # required
            type: "STRING", # required, accepts STRING, INTEGER, DECIMAL, DATETIME, BIT, BOOLEAN, JSON
          },
        ],
      },
    },
  },
  logical_table_map: {
    "LogicalTableId" => {
      alias: "LogicalTableAlias", # required
      data_transforms: [
        {
          project_operation: {
            projected_columns: ["String"], # required
          },
          filter_operation: {
            condition_expression: "Expression", # required
          },
          create_columns_operation: {
            columns: [ # required
              {
                column_name: "ColumnName", # required
                column_id: "ColumnId", # required
                expression: "Expression", # required
              },
            ],
          },
          rename_column_operation: {
            column_name: "ColumnName", # required
            new_column_name: "ColumnName", # required
          },
          cast_column_type_operation: {
            column_name: "ColumnName", # required
            new_column_type: "STRING", # required, accepts STRING, INTEGER, DECIMAL, DATETIME
            format: "TypeCastFormat",
          },
          tag_column_operation: {
            column_name: "ColumnName", # required
            tags: [ # required
              {
                column_geographic_role: "COUNTRY", # accepts COUNTRY, STATE, COUNTY, CITY, POSTCODE, LONGITUDE, LATITUDE
                column_description: {
                  text: "ColumnDescriptiveText",
                },
              },
            ],
          },
          untag_column_operation: {
            column_name: "ColumnName", # required
            tag_names: ["COLUMN_GEOGRAPHIC_ROLE"], # required, accepts COLUMN_GEOGRAPHIC_ROLE, COLUMN_DESCRIPTION
          },
        },
      ],
      source: { # required
        join_instruction: {
          left_operand: "LogicalTableId", # required
          right_operand: "LogicalTableId", # required
          left_join_key_properties: {
            unique_key: false,
          },
          right_join_key_properties: {
            unique_key: false,
          },
          type: "INNER", # required, accepts INNER, OUTER, LEFT, RIGHT
          on_clause: "OnClause", # required
        },
        physical_table_id: "PhysicalTableId",
        data_set_arn: "Arn",
      },
    },
  },
  import_mode: "SPICE", # required, accepts SPICE, DIRECT_QUERY
  column_groups: [
    {
      geo_spatial_column_group: {
        name: "ColumnGroupName", # required
        country_code: "US", # required, accepts US
        columns: ["ColumnName"], # required
      },
    },
  ],
  field_folders: {
    "FieldFolderPath" => {
      description: "FieldFolderDescription",
      columns: ["String"],
    },
  },
  permissions: [
    {
      principal: "Principal", # required
      actions: ["String"], # required
    },
  ],
  row_level_permission_data_set: {
    namespace: "Namespace",
    arn: "Arn", # required
    permission_policy: "GRANT_ACCESS", # required, accepts GRANT_ACCESS, DENY_ACCESS
    format_version: "VERSION_1", # accepts VERSION_1, VERSION_2
    status: "ENABLED", # accepts ENABLED, DISABLED
  },
  row_level_permission_tag_configuration: {
    status: "ENABLED", # accepts ENABLED, DISABLED
    tag_rules: [ # required
      {
        tag_key: "SessionTagKey", # required
        column_name: "String", # required
        tag_multi_value_delimiter: "RowLevelPermissionTagDelimiter",
        match_all_value: "SessionTagValue",
      },
    ],
  },
  column_level_permission_rules: [
    {
      principals: ["String"],
      column_names: ["String"],
    },
  ],
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  data_set_usage_configuration: {
    disable_use_as_direct_query_source: false,
    disable_use_as_imported_source: false,
  },
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#aws_account_idString

The Amazon Web Services account ID.

Returns:

  • (String)


1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#column_groupsArray<Types::ColumnGroup>

Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#column_level_permission_rulesArray<Types::ColumnLevelPermissionRule>

A set of one or more definitions of a ColumnLevelPermissionRule.



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#data_set_idString

An ID for the dataset that you want to create. This ID is unique per Amazon Web Services Region for each Amazon Web Services account.

Returns:

  • (String)


1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#data_set_usage_configurationTypes::DataSetUsageConfiguration

The usage configuration to apply to child datasets that reference this dataset as a source.



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#field_foldersHash<String,Types::FieldFolder>

The folder that contains fields and nested subfolders for your dataset.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#import_modeString

Indicates whether you want to import the data into SPICE.

Returns:

  • (String)


1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#logical_table_mapHash<String,Types::LogicalTable>

Configures the combination and transformation of the data from the physical tables.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

The display name for the dataset.

Returns:

  • (String)


1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#permissionsArray<Types::ResourcePermission>

A list of resource permissions on the dataset.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#physical_table_mapHash<String,Types::PhysicalTable>

Declares the physical tables that are available in the underlying data sources.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#row_level_permission_data_setTypes::RowLevelPermissionDataSet

The row-level security configuration for the data that you want to create.



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#row_level_permission_tag_configurationTypes::RowLevelPermissionTagConfiguration

The configuration of tags on a dataset to set row-level security. Row-level security tags are currently supported for anonymous embedding only.



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#tagsArray<Types::Tag>

Contains a map of the key-value pairs for the resource tag or tags assigned to the dataset.

Returns:



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
# File 'gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb', line 1628

class CreateDataSetRequest < Struct.new(
  :aws_account_id,
  :data_set_id,
  :name,
  :physical_table_map,
  :logical_table_map,
  :import_mode,
  :column_groups,
  :field_folders,
  :permissions,
  :row_level_permission_data_set,
  :row_level_permission_tag_configuration,
  :column_level_permission_rules,
  :tags,
  :data_set_usage_configuration)
  SENSITIVE = []
  include Aws::Structure
end