AWS cli documentation change
Summary
Added detailed documentation for IcebergTableMetadata structure including schema definitions, partition specs, sort orders, and constraints. Updated AWS CLI version reference from 2.35.3 to 2.35.5.
Security assessment
The changes exclusively document Apache Iceberg table metadata features including schema evolution, partitioning, and data organization. No security vulnerabilities, mitigations, or security-specific features are mentioned. The constraints focus on data formatting requirements rather than security controls.
Diff
diff --git a/cli/latest/reference/glue/get-table-version.md b/cli/latest/reference/glue/get-table-version.md index 587a27d78..d9b86da8e 100644 --- a//cli/latest/reference/glue/get-table-version.md +++ b//cli/latest/reference/glue/get-table-version.md @@ -15 +15 @@ - * [AWS CLI 2.35.3 Command Reference](../../index.html) » + * [AWS CLI 2.35.5 Command Reference](../../index.html) » @@ -62,0 +63,2 @@ See also: [AWS API Documentation](https://docs.aws.amazon.com/goto/WebAPI/glue-2 +`get-table-version` uses document type values. Document types follow the JSON data model where valid values are: strings, numbers, booleans, null, arrays, and objects. For command input, options and nested parameters that are labeled with the type `document` must be provided as JSON. Shorthand syntax does not support document types. + @@ -1191,0 +1194,240 @@ TableVersion -> (structure) +>> IcebergTableMetadata -> (structure) +>> +>>> The latest Apache Iceberg table metadata for the table, including format version, schemas, partition specifications, and sort orders. This field is populated for Iceberg tables and reflects the current state of the table’s Iceberg metadata. +>>> +>>> FormatVersion -> (string) +>>> +>>>> The Apache Iceberg table format version, such as `1` or `2` . Determines the set of features and on-disk layout supported by the table. +>>>> +>>>> Constraints: +>>>> +>>>> * min: `1` +>>>> * max: `255` +>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*` +>>>> + +>>> +>>> TableUuid -> (string) +>>> +>>>> The unique identifier (UUID) for the Iceberg table, assigned when the table is created and used to track the table across metadata updates. +>>>> +>>>> Constraints: +>>>> +>>>> * max: `100` +>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*` +>>>> + +>>> +>>> Location -> (string) +>>> +>>>> The base S3 location where the Iceberg table’s data and metadata files are stored. +>>>> +>>>> Constraints: +>>>> +>>>> * max: `2056` +>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*` +>>>> + +>>> +>>> Properties -> (map) +>>> +>>>> A map of key-value pairs that define table-level properties and configuration settings for the Iceberg table. +>>>> +>>>> key -> (string) +>>>> +>>>> value -> (string) +>>> +>>> Schemas -> (list) +>>> +>>>> The list of schemas that have been associated with the Iceberg table over its history, supporting schema evolution. +>>>> +>>>> (structure) +>>>> +>>>>> Defines the schema structure for an Iceberg table, including field definitions, data types, and schema metadata. +>>>>> +>>>>> SchemaId -> (integer) +>>>>> +>>>>>> The unique identifier for this schema version within the Iceberg table’s schema evolution history. +>>>>> +>>>>> IdentifierFieldIds -> (list) +>>>>> +>>>>>> The list of field identifiers that uniquely identify records in the table, used for row-level operations and deduplication. +>>>>>> +>>>>>> (integer) +>>>>> +>>>>> Type -> (string) +>>>>> +>>>>>> The root type of the schema structure, typically “struct” for Iceberg table schemas. +>>>>>> +>>>>>> Possible values: +>>>>>> +>>>>>> * `struct` +>>>>>> + +>>>>> +>>>>> Fields -> (list) [required] +>>>>> +>>>>>> The list of field definitions that make up the table schema, including field names, types, and metadata. +>>>>>> +>>>>>> (structure) +>>>>>> +>>>>>>> Defines a single field within an Iceberg table schema, including its identifier, name, data type, nullability, and documentation. +>>>>>>> +>>>>>>> Id -> (integer) [required] +>>>>>>> +>>>>>>>> The unique identifier assigned to this field within the Iceberg table schema, used for schema evolution and field tracking. +>>>>>>> +>>>>>>> Name -> (string) [required] +>>>>>>> +>>>>>>>> The name of the field as it appears in the table schema and query operations. +>>>>>>>> +>>>>>>>> Constraints: +>>>>>>>> +>>>>>>>> * min: `1` +>>>>>>>> * max: `1024` +>>>>>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*` +>>>>>>>> + +>>>>>>> +>>>>>>> Type -> (document) [required] +>>>>>>> +>>>>>>>> The data type definition for this field, specifying the structure and format of the data it contains. +>>>>>>> +>>>>>>> Required -> (boolean) [required] +>>>>>>> +>>>>>>>> Indicates whether this field is required (non-nullable) or optional (nullable) in the table schema. +>>>>>>> +>>>>>>> Doc -> (string) +>>>>>>> +>>>>>>>> Optional documentation or description text that provides additional context about the purpose and usage of this field. +>>>>>>>> +>>>>>>>> Constraints: +>>>>>>>> +>>>>>>>> * min: `0` +>>>>>>>> * max: `255` +>>>>>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*` +>>>>>>>> + +>>>>>>> +>>>>>>> InitialDefault -> (document) +>>>>>>> +>>>>>>>> Default value used to populate the field’s value for all records that were written before the field was added to the schema. This enables backward compatibility when adding new fields to existing Iceberg tables. +>>>>>>> +>>>>>>> WriteDefault -> (document) +>>>>>>> +>>>>>>>> Default value used to populate the field’s value for any records written after the field was added to the schema, if the writer does not supply the field’s value. This can be changed through schema evolution. +>>> +>>> CurrentSchemaId -> (integer) +>>> +>>>> The identifier of the schema that is currently active for the Iceberg table. Matches an entry in `Schemas` . +>>> +>>> LastColumnId -> (integer) +>>> +>>>> The highest column identifier that has been assigned in the Iceberg table’s schema, used to ensure unique IDs as new columns are added. +>>> +>>> PartitionSpecs -> (list) +>>> +>>>> The list of partition specifications that have been associated with the Iceberg table over its history, supporting partition evolution. +>>>> +>>>> (structure) +>>>> +>>>>> Defines the partitioning specification for an Iceberg table, determining how table data will be organized and partitioned for optimal query performance. +>>>>> +>>>>> Fields -> (list) [required] +>>>>> +>>>>>> The list of partition fields that define how the table data should be partitioned, including source fields and their transformations. +>>>>>> +>>>>>> (structure) +>>>>>> +>>>>>>> Defines a single partition field within an Iceberg partition specification, including the source field, transformation function, partition name, and unique identifier. +>>>>>>> +>>>>>>> SourceId -> (integer) [required] +>>>>>>> +>>>>>>>> The identifier of the source field from the table schema that this partition field is based on. +>>>>>>> +>>>>>>> Transform -> (string) [required] +>>>>>>> +>>>>>>>> The transformation function applied to the source field to create the partition, such as identity, bucket, truncate, year, month, day, or hour. +>>>>>>> +>>>>>>> Name -> (string) [required] +>>>>>>> +>>>>>>>> The name of the partition field as it will appear in the partitioned table structure. +>>>>>>>> +>>>>>>>> Constraints: +>>>>>>>> +>>>>>>>> * min: `1` +>>>>>>>> * max: `1024` +>>>>>>>> * pattern: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*` +>>>>>>>> + +>>>>>>> +>>>>>>> FieldId -> (integer) +>>>>>>> +>>>>>>>> The unique identifier assigned to this partition field within the Iceberg table’s partition specification. +>>>>> +>>>>> SpecId -> (integer) +>>>>> +>>>>>> The unique identifier for this partition specification within the Iceberg table’s metadata history. +>>> +>>> DefaultSpecId -> (integer) +>>> +>>>> The identifier of the partition specification that is currently used by default when writing new data to the Iceberg table. +>>> +>>> LastPartitionId -> (integer) +>>> +>>>> The highest partition field identifier that has been assigned across the table’s partition specifications. +>>> +>>> SortOrders -> (list) +>>> +>>>> The list of sort order specifications that have been associated with the Iceberg table over its history.