class Aws::Glue::Types::CreateTableRequest

@note When making an API call, you may pass CreateTableRequest

data as a hash:

    {
      catalog_id: "CatalogIdString",
      database_name: "NameString", # required
      table_input: { # required
        name: "NameString", # required
        description: "DescriptionString",
        owner: "NameString",
        last_access_time: Time.now,
        last_analyzed_time: Time.now,
        retention: 1,
        storage_descriptor: {
          columns: [
            {
              name: "NameString", # required
              type: "ColumnTypeString",
              comment: "CommentString",
              parameters: {
                "KeyString" => "ParametersMapValue",
              },
            },
          ],
          location: "LocationString",
          input_format: "FormatString",
          output_format: "FormatString",
          compressed: false,
          number_of_buckets: 1,
          serde_info: {
            name: "NameString",
            serialization_library: "NameString",
            parameters: {
              "KeyString" => "ParametersMapValue",
            },
          },
          bucket_columns: ["NameString"],
          sort_columns: [
            {
              column: "NameString", # required
              sort_order: 1, # required
            },
          ],
          parameters: {
            "KeyString" => "ParametersMapValue",
          },
          skewed_info: {
            skewed_column_names: ["NameString"],
            skewed_column_values: ["ColumnValuesString"],
            skewed_column_value_location_maps: {
              "ColumnValuesString" => "ColumnValuesString",
            },
          },
          stored_as_sub_directories: false,
          schema_reference: {
            schema_id: {
              schema_arn: "GlueResourceArn",
              schema_name: "SchemaRegistryNameString",
              registry_name: "SchemaRegistryNameString",
            },
            schema_version_id: "SchemaVersionIdString",
            schema_version_number: 1,
          },
        },
        partition_keys: [
          {
            name: "NameString", # required
            type: "ColumnTypeString",
            comment: "CommentString",
            parameters: {
              "KeyString" => "ParametersMapValue",
            },
          },
        ],
        view_original_text: "ViewTextString",
        view_expanded_text: "ViewTextString",
        table_type: "TableTypeString",
        parameters: {
          "KeyString" => "ParametersMapValue",
        },
        target_table: {
          catalog_id: "CatalogIdString",
          database_name: "NameString",
          name: "NameString",
        },
      },
      partition_indexes: [
        {
          keys: ["NameString"], # required
          index_name: "NameString", # required
        },
      ],
    }

@!attribute [rw] catalog_id

The ID of the Data Catalog in which to create the `Table`. If none
is supplied, the Amazon Web Services account ID is used by default.
@return [String]

@!attribute [rw] database_name

The catalog database in which to create the new table. For Hive
compatibility, this name is entirely lowercase.
@return [String]

@!attribute [rw] table_input

The `TableInput` object that defines the metadata table to create in
the catalog.
@return [Types::TableInput]

@!attribute [rw] partition_indexes

A list of partition indexes, `PartitionIndex` structures, to create
in the table.
@return [Array<Types::PartitionIndex>]

@see docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateTableRequest AWS API Documentation

Constants

SENSITIVE