From be3723ee612aa589746b3a9245f1c3a0b7f3800c Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 8 Aug 2024 18:14:34 +0000 Subject: [PATCH] feat(client-glue): This release adds support to retrieve the validation status when creating or updating Glue Data Catalog Views. Also added is support for BasicCatalogTarget partition keys. --- .../src/commands/BatchGetJobsCommand.ts | 9 +- .../src/commands/CreateConnectionCommand.ts | 2 +- .../src/commands/CreateJobCommand.ts | 9 +- .../src/commands/GetConnectionCommand.ts | 2 +- .../src/commands/GetConnectionsCommand.ts | 4 +- .../client-glue/src/commands/GetJobCommand.ts | 9 +- .../src/commands/GetJobsCommand.ts | 9 +- .../src/commands/GetTableCommand.ts | 145 ++++- .../src/commands/GetTableVersionCommand.ts | 144 ++++- .../src/commands/GetTableVersionsCommand.ts | 144 ++++- .../src/commands/GetTablesCommand.ts | 145 ++++- .../GetUnfilteredTableMetadataCommand.ts | 144 ++++- .../src/commands/SearchTablesCommand.ts | 145 ++++- .../src/commands/UpdateConnectionCommand.ts | 2 +- .../src/commands/UpdateJobCommand.ts | 9 +- .../src/commands/UpdateUsageProfileCommand.ts | 3 +- .../UpdateUserDefinedFunctionCommand.ts | 2 +- .../src/commands/UpdateWorkflowCommand.ts | 2 +- clients/client-glue/src/models/models_0.ts | 6 + clients/client-glue/src/models/models_1.ts | 34 ++ clients/client-glue/src/models/models_2.ts | 492 ++++++----------- clients/client-glue/src/models/models_3.ts | 508 +++++++++++++++--- .../client-glue/src/protocols/Aws_json1_1.ts | 78 ++- codegen/sdk-codegen/aws-models/glue.json | 247 ++++++++- 24 files changed, 1835 insertions(+), 459 deletions(-) diff --git a/clients/client-glue/src/commands/BatchGetJobsCommand.ts b/clients/client-glue/src/commands/BatchGetJobsCommand.ts index 895e3b76d13cf..f96d6e71de6c7 100644 --- a/clients/client-glue/src/commands/BatchGetJobsCommand.ts +++ b/clients/client-glue/src/commands/BatchGetJobsCommand.ts @@ -310,6 +310,9 @@ export interface BatchGetJobsCommandOutput extends BatchGetJobsResponse, __Metad * // Inputs: [ // required * // "STRING_VALUE", * // ], + * // PartitionKeys: [ // GlueStudioPathList + * // "", + * // ], * // Database: "STRING_VALUE", // required * // Table: "STRING_VALUE", // required * // }, @@ -335,7 +338,7 @@ export interface BatchGetJobsCommandOutput extends BatchGetJobsResponse, __Metad * // Inputs: [ // required * // "STRING_VALUE", * // ], - * // PartitionKeys: [ // GlueStudioPathList + * // PartitionKeys: [ * // "", * // ], * // Table: "STRING_VALUE", // required @@ -409,9 +412,7 @@ export interface BatchGetJobsCommandOutput extends BatchGetJobsResponse, __Metad * // DropFields: { // DropFields * // Name: "STRING_VALUE", // required * // Inputs: "", // required - * // Paths: [ // required - * // "", - * // ], + * // Paths: "", // required * // }, * // RenameField: { // RenameField * // Name: "STRING_VALUE", // required diff --git a/clients/client-glue/src/commands/CreateConnectionCommand.ts b/clients/client-glue/src/commands/CreateConnectionCommand.ts index 5aadf8e167659..6838b065d4a98 100644 --- a/clients/client-glue/src/commands/CreateConnectionCommand.ts +++ b/clients/client-glue/src/commands/CreateConnectionCommand.ts @@ -41,7 +41,7 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse, * ConnectionInput: { // ConnectionInput * Name: "STRING_VALUE", // required * Description: "STRING_VALUE", - * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE", // required + * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", // required * MatchCriteria: [ // MatchCriteria * "STRING_VALUE", * ], diff --git a/clients/client-glue/src/commands/CreateJobCommand.ts b/clients/client-glue/src/commands/CreateJobCommand.ts index 3d9de2856e8e3..19d36979a1537 100644 --- a/clients/client-glue/src/commands/CreateJobCommand.ts +++ b/clients/client-glue/src/commands/CreateJobCommand.ts @@ -301,6 +301,9 @@ export interface CreateJobCommandOutput extends CreateJobResponse, __MetadataBea * Inputs: [ // required * "STRING_VALUE", * ], + * PartitionKeys: [ // GlueStudioPathList + * "", + * ], * Database: "STRING_VALUE", // required * Table: "STRING_VALUE", // required * }, @@ -326,7 +329,7 @@ export interface CreateJobCommandOutput extends CreateJobResponse, __MetadataBea * Inputs: [ // required * "STRING_VALUE", * ], - * PartitionKeys: [ // GlueStudioPathList + * PartitionKeys: [ * "", * ], * Table: "STRING_VALUE", // required @@ -400,9 +403,7 @@ export interface CreateJobCommandOutput extends CreateJobResponse, __MetadataBea * DropFields: { // DropFields * Name: "STRING_VALUE", // required * Inputs: "", // required - * Paths: [ // required - * "", - * ], + * Paths: "", // required * }, * RenameField: { // RenameField * Name: "STRING_VALUE", // required diff --git a/clients/client-glue/src/commands/GetConnectionCommand.ts b/clients/client-glue/src/commands/GetConnectionCommand.ts index 1ea7ef5bc4993..e21c6082ea8fa 100644 --- a/clients/client-glue/src/commands/GetConnectionCommand.ts +++ b/clients/client-glue/src/commands/GetConnectionCommand.ts @@ -46,7 +46,7 @@ export interface GetConnectionCommandOutput extends GetConnectionResponse, __Met * // Connection: { // Connection * // Name: "STRING_VALUE", * // Description: "STRING_VALUE", - * // ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE", + * // ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", * // MatchCriteria: [ // MatchCriteria * // "STRING_VALUE", * // ], diff --git a/clients/client-glue/src/commands/GetConnectionsCommand.ts b/clients/client-glue/src/commands/GetConnectionsCommand.ts index 3fd07460e872c..82e3b5216895e 100644 --- a/clients/client-glue/src/commands/GetConnectionsCommand.ts +++ b/clients/client-glue/src/commands/GetConnectionsCommand.ts @@ -41,7 +41,7 @@ export interface GetConnectionsCommandOutput extends GetConnectionsResponse, __M * MatchCriteria: [ // MatchCriteria * "STRING_VALUE", * ], - * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE", + * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", * }, * HidePassword: true || false, * NextToken: "STRING_VALUE", @@ -54,7 +54,7 @@ export interface GetConnectionsCommandOutput extends GetConnectionsResponse, __M * // { // Connection * // Name: "STRING_VALUE", * // Description: "STRING_VALUE", - * // ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE", + * // ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", * // MatchCriteria: [ // MatchCriteria * // "STRING_VALUE", * // ], diff --git a/clients/client-glue/src/commands/GetJobCommand.ts b/clients/client-glue/src/commands/GetJobCommand.ts index 600d1c4fc9a91..4e165bd6bfc0f 100644 --- a/clients/client-glue/src/commands/GetJobCommand.ts +++ b/clients/client-glue/src/commands/GetJobCommand.ts @@ -306,6 +306,9 @@ export interface GetJobCommandOutput extends GetJobResponse, __MetadataBearer {} * // Inputs: [ // required * // "STRING_VALUE", * // ], + * // PartitionKeys: [ // GlueStudioPathList + * // "", + * // ], * // Database: "STRING_VALUE", // required * // Table: "STRING_VALUE", // required * // }, @@ -331,7 +334,7 @@ export interface GetJobCommandOutput extends GetJobResponse, __MetadataBearer {} * // Inputs: [ // required * // "STRING_VALUE", * // ], - * // PartitionKeys: [ // GlueStudioPathList + * // PartitionKeys: [ * // "", * // ], * // Table: "STRING_VALUE", // required @@ -405,9 +408,7 @@ export interface GetJobCommandOutput extends GetJobResponse, __MetadataBearer {} * // DropFields: { // DropFields * // Name: "STRING_VALUE", // required * // Inputs: "", // required - * // Paths: [ // required - * // "", - * // ], + * // Paths: "", // required * // }, * // RenameField: { // RenameField * // Name: "STRING_VALUE", // required diff --git a/clients/client-glue/src/commands/GetJobsCommand.ts b/clients/client-glue/src/commands/GetJobsCommand.ts index 405b47c996aaa..8b38990b49189 100644 --- a/clients/client-glue/src/commands/GetJobsCommand.ts +++ b/clients/client-glue/src/commands/GetJobsCommand.ts @@ -308,6 +308,9 @@ export interface GetJobsCommandOutput extends GetJobsResponse, __MetadataBearer * // Inputs: [ // required * // "STRING_VALUE", * // ], + * // PartitionKeys: [ // GlueStudioPathList + * // "", + * // ], * // Database: "STRING_VALUE", // required * // Table: "STRING_VALUE", // required * // }, @@ -333,7 +336,7 @@ export interface GetJobsCommandOutput extends GetJobsResponse, __MetadataBearer * // Inputs: [ // required * // "STRING_VALUE", * // ], - * // PartitionKeys: [ // GlueStudioPathList + * // PartitionKeys: [ * // "", * // ], * // Table: "STRING_VALUE", // required @@ -407,9 +410,7 @@ export interface GetJobsCommandOutput extends GetJobsResponse, __MetadataBearer * // DropFields: { // DropFields * // Name: "STRING_VALUE", // required * // Inputs: "", // required - * // Paths: [ // required - * // "", - * // ], + * // Paths: "", // required * // }, * // RenameField: { // RenameField * // Name: "STRING_VALUE", // required diff --git a/clients/client-glue/src/commands/GetTableCommand.ts b/clients/client-glue/src/commands/GetTableCommand.ts index ef9eced79d1e1..f79b4cc5c46dc 100644 --- a/clients/client-glue/src/commands/GetTableCommand.ts +++ b/clients/client-glue/src/commands/GetTableCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { GetTableRequest, GetTableResponse } from "../models/models_2"; +import { GetTableRequest } from "../models/models_2"; +import { GetTableResponse } from "../models/models_3"; import { de_GetTableCommand, se_GetTableCommand } from "../protocols/Aws_json1_1"; /** @@ -42,6 +43,7 @@ export interface GetTableCommandOutput extends GetTableResponse, __MetadataBeare * Name: "STRING_VALUE", // required * TransactionId: "STRING_VALUE", * QueryAsOfTime: new Date("TIMESTAMP"), + * IncludeStatusDetails: true || false, * }; * const command = new GetTableCommand(input); * const response = await client.send(command); @@ -159,6 +161,147 @@ export interface GetTableCommandOutput extends GetTableResponse, __MetadataBeare * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-glue/src/commands/GetTableVersionCommand.ts b/clients/client-glue/src/commands/GetTableVersionCommand.ts index 721755e96027c..64aaa741c8db2 100644 --- a/clients/client-glue/src/commands/GetTableVersionCommand.ts +++ b/clients/client-glue/src/commands/GetTableVersionCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { GetTableVersionRequest, GetTableVersionResponse } from "../models/models_2"; +import { GetTableVersionRequest } from "../models/models_2"; +import { GetTableVersionResponse } from "../models/models_3"; import { de_GetTableVersionCommand, se_GetTableVersionCommand } from "../protocols/Aws_json1_1"; /** @@ -158,6 +159,147 @@ export interface GetTableVersionCommandOutput extends GetTableVersionResponse, _ * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "
", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // VersionId: "STRING_VALUE", * // }, diff --git a/clients/client-glue/src/commands/GetTableVersionsCommand.ts b/clients/client-glue/src/commands/GetTableVersionsCommand.ts index 42dd5f277a829..aa5661d43ac8b 100644 --- a/clients/client-glue/src/commands/GetTableVersionsCommand.ts +++ b/clients/client-glue/src/commands/GetTableVersionsCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { GetTableVersionsRequest, GetTableVersionsResponse } from "../models/models_2"; +import { GetTableVersionsRequest } from "../models/models_2"; +import { GetTableVersionsResponse } from "../models/models_3"; import { de_GetTableVersionsCommand, se_GetTableVersionsCommand } from "../protocols/Aws_json1_1"; /** @@ -161,6 +162,147 @@ export interface GetTableVersionsCommandOutput extends GetTableVersionsResponse, * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "
", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // VersionId: "STRING_VALUE", * // }, diff --git a/clients/client-glue/src/commands/GetTablesCommand.ts b/clients/client-glue/src/commands/GetTablesCommand.ts index 0a545d3b0ef5d..03afd7464bb42 100644 --- a/clients/client-glue/src/commands/GetTablesCommand.ts +++ b/clients/client-glue/src/commands/GetTablesCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { GetTablesRequest, GetTablesResponse } from "../models/models_2"; +import { GetTablesRequest } from "../models/models_2"; +import { GetTablesResponse } from "../models/models_3"; import { de_GetTablesCommand, se_GetTablesCommand } from "../protocols/Aws_json1_1"; /** @@ -44,6 +45,7 @@ export interface GetTablesCommandOutput extends GetTablesResponse, __MetadataBea * MaxResults: Number("int"), * TransactionId: "STRING_VALUE", * QueryAsOfTime: new Date("TIMESTAMP"), + * IncludeStatusDetails: true || false, * }; * const command = new GetTablesCommand(input); * const response = await client.send(command); @@ -162,6 +164,147 @@ export interface GetTablesCommandOutput extends GetTablesResponse, __MetadataBea * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "
", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-glue/src/commands/GetUnfilteredTableMetadataCommand.ts b/clients/client-glue/src/commands/GetUnfilteredTableMetadataCommand.ts index 3e5a4c69d0238..69aaab8600757 100644 --- a/clients/client-glue/src/commands/GetUnfilteredTableMetadataCommand.ts +++ b/clients/client-glue/src/commands/GetUnfilteredTableMetadataCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { GetUnfilteredTableMetadataRequest, GetUnfilteredTableMetadataResponse } from "../models/models_2"; +import { GetUnfilteredTableMetadataRequest } from "../models/models_2"; +import { GetUnfilteredTableMetadataResponse } from "../models/models_3"; import { de_GetUnfilteredTableMetadataCommand, se_GetUnfilteredTableMetadataCommand } from "../protocols/Aws_json1_1"; /** @@ -186,6 +187,147 @@ export interface GetUnfilteredTableMetadataCommandOutput extends GetUnfilteredTa * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "
", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // AuthorizedColumns: "", * // IsRegisteredWithLakeFormation: true || false, diff --git a/clients/client-glue/src/commands/SearchTablesCommand.ts b/clients/client-glue/src/commands/SearchTablesCommand.ts index c48322396b97f..eab34bb5b2d58 100644 --- a/clients/client-glue/src/commands/SearchTablesCommand.ts +++ b/clients/client-glue/src/commands/SearchTablesCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { SearchTablesRequest, SearchTablesResponse } from "../models/models_2"; +import { SearchTablesRequest } from "../models/models_2"; +import { SearchTablesResponse } from "../models/models_3"; import { de_SearchTablesCommand, se_SearchTablesCommand } from "../protocols/Aws_json1_1"; /** @@ -55,6 +56,7 @@ export interface SearchTablesCommandOutput extends SearchTablesResponse, __Metad * ], * MaxResults: Number("int"), * ResourceShareType: "FOREIGN" || "ALL" || "FEDERATED", + * IncludeStatusDetails: true || false, * }; * const command = new SearchTablesCommand(input); * const response = await client.send(command); @@ -174,6 +176,147 @@ export interface SearchTablesCommandOutput extends SearchTablesResponse, __Metad * // ], * // }, * // IsMultiDialectView: true || false, + * // Status: { // TableStatus + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { // ErrorDetail + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { // StatusDetails + * // RequestedChange: { + * // Name: "STRING_VALUE", // required + * // DatabaseName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Owner: "STRING_VALUE", + * // CreateTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // LastAccessTime: new Date("TIMESTAMP"), + * // LastAnalyzedTime: new Date("TIMESTAMP"), + * // Retention: Number("int"), + * // StorageDescriptor: { + * // Columns: "", + * // Location: "STRING_VALUE", + * // AdditionalLocations: [ + * // "STRING_VALUE", + * // ], + * // InputFormat: "STRING_VALUE", + * // OutputFormat: "STRING_VALUE", + * // Compressed: true || false, + * // NumberOfBuckets: Number("int"), + * // SerdeInfo: { + * // Name: "STRING_VALUE", + * // SerializationLibrary: "STRING_VALUE", + * // Parameters: "", + * // }, + * // BucketColumns: "", + * // SortColumns: [ + * // { + * // Column: "STRING_VALUE", // required + * // SortOrder: Number("int"), // required + * // }, + * // ], + * // Parameters: "", + * // SkewedInfo: { + * // SkewedColumnNames: "", + * // SkewedColumnValues: [ + * // "STRING_VALUE", + * // ], + * // SkewedColumnValueLocationMaps: { + * // "": "STRING_VALUE", + * // }, + * // }, + * // StoredAsSubDirectories: true || false, + * // SchemaReference: { + * // SchemaId: { + * // SchemaArn: "STRING_VALUE", + * // SchemaName: "STRING_VALUE", + * // RegistryName: "STRING_VALUE", + * // }, + * // SchemaVersionId: "STRING_VALUE", + * // SchemaVersionNumber: Number("long"), + * // }, + * // }, + * // PartitionKeys: "", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // TableType: "STRING_VALUE", + * // Parameters: "", + * // CreatedBy: "STRING_VALUE", + * // IsRegisteredWithLakeFormation: true || false, + * // TargetTable: { + * // CatalogId: "STRING_VALUE", + * // DatabaseName: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Region: "STRING_VALUE", + * // }, + * // CatalogId: "STRING_VALUE", + * // VersionId: "STRING_VALUE", + * // FederatedTable: { + * // Identifier: "STRING_VALUE", + * // DatabaseIdentifier: "STRING_VALUE", + * // ConnectionName: "STRING_VALUE", + * // }, + * // ViewDefinition: { + * // IsProtected: true || false, + * // Definer: "STRING_VALUE", + * // SubObjects: [ + * // "STRING_VALUE", + * // ], + * // Representations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewOriginalText: "STRING_VALUE", + * // ViewExpandedText: "STRING_VALUE", + * // ValidationConnection: "STRING_VALUE", + * // IsStale: true || false, + * // }, + * // ], + * // }, + * // IsMultiDialectView: true || false, + * // Status: { + * // RequestedBy: "STRING_VALUE", + * // UpdatedBy: "STRING_VALUE", + * // RequestTime: new Date("TIMESTAMP"), + * // UpdateTime: new Date("TIMESTAMP"), + * // Action: "UPDATE" || "CREATE", + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: { + * // ErrorCode: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // Details: { + * // RequestedChange: "
", + * // ViewValidations: [ // ViewValidationList + * // { // ViewValidation + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, + * // }, + * // ViewValidations: [ + * // { + * // Dialect: "REDSHIFT" || "ATHENA" || "SPARK", + * // DialectVersion: "STRING_VALUE", + * // ViewValidationText: "STRING_VALUE", + * // UpdateTime: new Date("TIMESTAMP"), + * // State: "QUEUED" || "IN_PROGRESS" || "SUCCESS" || "STOPPED" || "FAILED", + * // Error: "", + * // }, + * // ], + * // }, + * // }, * // }, * // ], * // }; diff --git a/clients/client-glue/src/commands/UpdateConnectionCommand.ts b/clients/client-glue/src/commands/UpdateConnectionCommand.ts index 60ce6d02dc749..6464424e4b998 100644 --- a/clients/client-glue/src/commands/UpdateConnectionCommand.ts +++ b/clients/client-glue/src/commands/UpdateConnectionCommand.ts @@ -41,7 +41,7 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse, * ConnectionInput: { // ConnectionInput * Name: "STRING_VALUE", // required * Description: "STRING_VALUE", - * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE", // required + * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", // required * MatchCriteria: [ // MatchCriteria * "STRING_VALUE", * ], diff --git a/clients/client-glue/src/commands/UpdateJobCommand.ts b/clients/client-glue/src/commands/UpdateJobCommand.ts index 06f61340efd2d..42f4a7ec6811d 100644 --- a/clients/client-glue/src/commands/UpdateJobCommand.ts +++ b/clients/client-glue/src/commands/UpdateJobCommand.ts @@ -299,6 +299,9 @@ export interface UpdateJobCommandOutput extends UpdateJobResponse, __MetadataBea * Inputs: [ // required * "STRING_VALUE", * ], + * PartitionKeys: [ // GlueStudioPathList + * "", + * ], * Database: "STRING_VALUE", // required * Table: "STRING_VALUE", // required * }, @@ -324,7 +327,7 @@ export interface UpdateJobCommandOutput extends UpdateJobResponse, __MetadataBea * Inputs: [ // required * "STRING_VALUE", * ], - * PartitionKeys: [ // GlueStudioPathList + * PartitionKeys: [ * "", * ], * Table: "STRING_VALUE", // required @@ -398,9 +401,7 @@ export interface UpdateJobCommandOutput extends UpdateJobResponse, __MetadataBea * DropFields: { // DropFields * Name: "STRING_VALUE", // required * Inputs: "", // required - * Paths: [ // required - * "", - * ], + * Paths: "", // required * }, * RenameField: { // RenameField * Name: "STRING_VALUE", // required diff --git a/clients/client-glue/src/commands/UpdateUsageProfileCommand.ts b/clients/client-glue/src/commands/UpdateUsageProfileCommand.ts index 0ced738294c0d..d3dca0387c1ec 100644 --- a/clients/client-glue/src/commands/UpdateUsageProfileCommand.ts +++ b/clients/client-glue/src/commands/UpdateUsageProfileCommand.ts @@ -6,8 +6,7 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateUsageProfileRequest } from "../models/models_2"; -import { UpdateUsageProfileResponse } from "../models/models_3"; +import { UpdateUsageProfileRequest, UpdateUsageProfileResponse } from "../models/models_2"; import { de_UpdateUsageProfileCommand, se_UpdateUsageProfileCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-glue/src/commands/UpdateUserDefinedFunctionCommand.ts b/clients/client-glue/src/commands/UpdateUserDefinedFunctionCommand.ts index 4dc60f1bddb9e..fbc37f3c428b6 100644 --- a/clients/client-glue/src/commands/UpdateUserDefinedFunctionCommand.ts +++ b/clients/client-glue/src/commands/UpdateUserDefinedFunctionCommand.ts @@ -6,7 +6,7 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateUserDefinedFunctionRequest, UpdateUserDefinedFunctionResponse } from "../models/models_3"; +import { UpdateUserDefinedFunctionRequest, UpdateUserDefinedFunctionResponse } from "../models/models_2"; import { de_UpdateUserDefinedFunctionCommand, se_UpdateUserDefinedFunctionCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-glue/src/commands/UpdateWorkflowCommand.ts b/clients/client-glue/src/commands/UpdateWorkflowCommand.ts index 671d25c880007..43cea7e836218 100644 --- a/clients/client-glue/src/commands/UpdateWorkflowCommand.ts +++ b/clients/client-glue/src/commands/UpdateWorkflowCommand.ts @@ -6,7 +6,7 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateWorkflowRequest, UpdateWorkflowResponse } from "../models/models_3"; +import { UpdateWorkflowRequest, UpdateWorkflowResponse } from "../models/models_2"; import { de_UpdateWorkflowCommand, se_UpdateWorkflowCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-glue/src/models/models_0.ts b/clients/client-glue/src/models/models_0.ts index 37fe9640b4f57..9e43c95cdca53 100644 --- a/clients/client-glue/src/models/models_0.ts +++ b/clients/client-glue/src/models/models_0.ts @@ -3663,6 +3663,12 @@ export interface BasicCatalogTarget { */ Inputs: string[] | undefined; + /** + *

The partition keys used to distribute data across multiple partitions or shards based on a specific key or set of key.

+ * @public + */ + PartitionKeys?: string[][]; + /** *

The database that contains the table you want to use as the target. This database must already exist in the Data Catalog.

* @public diff --git a/clients/client-glue/src/models/models_1.ts b/clients/client-glue/src/models/models_1.ts index 2f8a3eee5f4ae..8d8fcbfbeca8b 100644 --- a/clients/client-glue/src/models/models_1.ts +++ b/clients/client-glue/src/models/models_1.ts @@ -299,6 +299,7 @@ export interface CreateClassifierResponse {} * @enum */ export const ConnectionPropertyKey = { + CLUSTER_IDENTIFIER: "CLUSTER_IDENTIFIER", CONFIG_FILES: "CONFIG_FILES", CONNECTION_URL: "CONNECTION_URL", CONNECTOR_CLASS_NAME: "CONNECTOR_CLASS_NAME", @@ -306,6 +307,7 @@ export const ConnectionPropertyKey = { CONNECTOR_URL: "CONNECTOR_URL", CUSTOM_JDBC_CERT: "CUSTOM_JDBC_CERT", CUSTOM_JDBC_CERT_STRING: "CUSTOM_JDBC_CERT_STRING", + DATABASE: "DATABASE", ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD: "ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD", ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD: "ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD", ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD: "ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD", @@ -338,10 +340,12 @@ export const ConnectionPropertyKey = { KAFKA_SSL_ENABLED: "KAFKA_SSL_ENABLED", PASSWORD: "PASSWORD", PORT: "PORT", + REGION: "REGION", ROLE_ARN: "ROLE_ARN", SECRET_ID: "SECRET_ID", SKIP_CUSTOM_JDBC_CERT_VALIDATION: "SKIP_CUSTOM_JDBC_CERT_VALIDATION", USER_NAME: "USERNAME", + WORKGROUP_NAME: "WORKGROUP_NAME", } as const; /** @@ -362,6 +366,8 @@ export const ConnectionType = { NETWORK: "NETWORK", SALESFORCE: "SALESFORCE", SFTP: "SFTP", + VIEW_VALIDATION_ATHENA: "VIEW_VALIDATION_ATHENA", + VIEW_VALIDATION_REDSHIFT: "VIEW_VALIDATION_REDSHIFT", } as const; /** @@ -481,6 +487,14 @@ export interface ConnectionInput { * *
  • *

    + * VIEW_VALIDATION_REDSHIFT - Designates a connection used for view validation by Amazon Redshift.

    + *
  • + *
  • + *

    + * VIEW_VALIDATION_ATHENA - Designates a connection used for view validation by Amazon Athena.

    + *
  • + *
  • + *

    * NETWORK - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC).

    *

    * NETWORK Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements.

    @@ -5666,6 +5680,26 @@ export interface Connection { *

    * KAFKA_SASL_GSSAPI_PRINCIPAL - The name of the Kerberos princial used by Glue. For more information, see Kafka Documentation: Configuring Kafka Brokers.

    *
  • + *
  • + *

    + * ROLE_ARN - The role to be used for running queries.

    + *
  • + *
  • + *

    + * REGION - The Amazon Web Services Region where queries will be run.

    + *
  • + *
  • + *

    + * WORKGROUP_NAME - The name of an Amazon Redshift serverless workgroup or Amazon Athena workgroup in which queries will run.

    + *
  • + *
  • + *

    + * CLUSTER_IDENTIFIER - The cluster identifier of an Amazon Redshift cluster in which queries will run.

    + *
  • + *
  • + *

    + * DATABASE - The Amazon Redshift database that you are connecting to.

    + *
  • * * @public */ diff --git a/clients/client-glue/src/models/models_2.ts b/clients/client-glue/src/models/models_2.ts index 29a68847ac459..523c47f7cf0f7 100644 --- a/clients/client-glue/src/models/models_2.ts +++ b/clients/client-glue/src/models/models_2.ts @@ -6,7 +6,6 @@ import { GlueServiceException as __BaseException } from "./GlueServiceException" import { Action, AuditContext, - Column, CrawlerTargets, CustomEntityType, DataFormat, @@ -29,7 +28,6 @@ import { SourceControlAuthStrategy, SourceControlProvider, StatisticAnnotation, - StorageDescriptor, TableOptimizer, TableOptimizerConfiguration, TableOptimizerRun, @@ -70,13 +68,13 @@ import { SchemaStatus, SchemaVersionStatus, Session, - TableIdentifier, TableInput, TransformEncryption, TransformFilterCriteria, TransformParameters, TransformSortCriteria, TransformStatusType, + UserDefinedFunctionInput, ViewDialect, } from "./models_1"; @@ -1585,6 +1583,12 @@ export interface GetTableRequest { * @public */ QueryAsOfTime?: Date; + + /** + *

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    + * @public + */ + IncludeStatusDetails?: boolean; } /** @@ -1612,263 +1616,154 @@ export interface FederatedTable { } /** - *

    A structure that contains the dialect of the view, and the query that defines the view.

    * @public + * @enum */ -export interface ViewRepresentation { - /** - *

    The dialect of the query engine.

    - * @public - */ - Dialect?: ViewDialect; - - /** - *

    The version of the dialect of the query engine. For example, 3.0.0.

    - * @public - */ - DialectVersion?: string; - - /** - *

    The SELECT query provided by the customer during CREATE VIEW DDL. This SQL is not used during a query on a view (ViewExpandedText is used instead). ViewOriginalText is used for cases like SHOW CREATE VIEW where users want to see the original DDL command that created the view.

    - * @public - */ - ViewOriginalText?: string; - - /** - *

    The expanded SQL for the view. This SQL is used by engines while processing a query on a view. Engines may perform operations during view creation to transform ViewOriginalText to ViewExpandedText. For example:

    - *
      - *
    • - *

      Fully qualified identifiers: SELECT * from table1 -> SELECT * from db1.table1 - *

      - *
    • - *
    - * @public - */ - ViewExpandedText?: string; - - /** - *

    The name of the connection to be used to validate the specific representation of the view.

    - * @public - */ - ValidationConnection?: string; - - /** - *

    Dialects marked as stale are no longer valid and must be updated before they can be queried in their respective query engines.

    - * @public - */ - IsStale?: boolean; -} +export const ResourceAction = { + CREATE: "CREATE", + UPDATE: "UPDATE", +} as const; /** - *

    A structure containing details for representations.

    * @public */ -export interface ViewDefinition { - /** - *

    You can set this flag as true to instruct the engine not to push user-provided operations into the logical plan of the view during query planning. However, setting this flag does not guarantee that the engine will comply. Refer to the engine's documentation to understand the guarantees provided, if any.

    - * @public - */ - IsProtected?: boolean; - - /** - *

    The definer of a view in SQL.

    - * @public - */ - Definer?: string; - - /** - *

    A list of table Amazon Resource Names (ARNs).

    - * @public - */ - SubObjects?: string[]; - - /** - *

    A list of representations.

    - * @public - */ - Representations?: ViewRepresentation[]; -} +export type ResourceAction = (typeof ResourceAction)[keyof typeof ResourceAction]; /** - *

    Represents a collection of related data organized in columns and rows.

    * @public + * @enum */ -export interface Table { - /** - *

    The table name. For Hive compatibility, this must be entirely - * lowercase.

    - * @public - */ - Name: string | undefined; +export const ResourceState = { + FAILED: "FAILED", + IN_PROGRESS: "IN_PROGRESS", + QUEUED: "QUEUED", + STOPPED: "STOPPED", + SUCCESS: "SUCCESS", +} as const; - /** - *

    The name of the database where the table metadata resides. - * For Hive compatibility, this must be all lowercase.

    - * @public - */ - DatabaseName?: string; +/** + * @public + */ +export type ResourceState = (typeof ResourceState)[keyof typeof ResourceState]; +/** + *

    A structure that contains information for an analytical engine to validate a view, prior to persisting the view metadata. Used in the case of direct UpdateTable or CreateTable API calls.

    + * @public + */ +export interface ViewValidation { /** - *

    A description of the table.

    + *

    The dialect of the query engine.

    * @public */ - Description?: string; + Dialect?: ViewDialect; /** - *

    The owner of the table.

    + *

    The version of the dialect of the query engine. For example, 3.0.0.

    * @public */ - Owner?: string; + DialectVersion?: string; /** - *

    The time when the table definition was created in the Data Catalog.

    + *

    The SELECT query that defines the view, as provided by the customer.

    * @public */ - CreateTime?: Date; + ViewValidationText?: string; /** - *

    The last time that the table was updated.

    + *

    The time of the last update.

    * @public */ UpdateTime?: Date; /** - *

    The last time that the table was accessed. This is usually taken from HDFS, and might not - * be reliable.

    + *

    The state of the validation.

    * @public */ - LastAccessTime?: Date; + State?: ResourceState; /** - *

    The last time that column statistics were computed for this table.

    + *

    An error associated with the validation.

    * @public */ - LastAnalyzedTime?: Date; - - /** - *

    The retention time for this table.

    - * @public - */ - Retention?: number; + Error?: ErrorDetail; +} +/** + *

    A structure that contains the dialect of the view, and the query that defines the view.

    + * @public + */ +export interface ViewRepresentation { /** - *

    A storage descriptor containing information about the physical storage - * of this table.

    + *

    The dialect of the query engine.

    * @public */ - StorageDescriptor?: StorageDescriptor; + Dialect?: ViewDialect; /** - *

    A list of columns by which the table is partitioned. Only primitive - * types are supported as partition keys.

    - *

    When you create a table used by Amazon Athena, and you do not specify any - * partitionKeys, you must at least set the value of partitionKeys to - * an empty list. For example:

    - *

    - * "PartitionKeys": [] - *

    + *

    The version of the dialect of the query engine. For example, 3.0.0.

    * @public */ - PartitionKeys?: Column[]; + DialectVersion?: string; /** - *

    Included for Apache Hive compatibility. Not used in the normal course of Glue operations. - * If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

    + *

    The SELECT query provided by the customer during CREATE VIEW DDL. This SQL is not used during a query on a view (ViewExpandedText is used instead). ViewOriginalText is used for cases like SHOW CREATE VIEW where users want to see the original DDL command that created the view.

    * @public */ ViewOriginalText?: string; /** - *

    Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

    + *

    The expanded SQL for the view. This SQL is used by engines while processing a query on a view. Engines may perform operations during view creation to transform ViewOriginalText to ViewExpandedText. For example:

    + *
      + *
    • + *

      Fully qualified identifiers: SELECT * from table1 -> SELECT * from db1.table1 + *

      + *
    • + *
    * @public */ ViewExpandedText?: string; /** - *

    The type of this table. - * Glue will create tables with the EXTERNAL_TABLE type. - * Other services, such as Athena, may create tables with additional table types. - *

    - *

    Glue related table types:

    - *
    - *
    EXTERNAL_TABLE
    - *
    - *

    Hive compatible attribute - indicates a non-Hive managed table.

    - *
    - *
    GOVERNED
    - *
    - *

    Used by Lake Formation. - * The Glue Data Catalog understands GOVERNED.

    - *
    - *
    - * @public - */ - TableType?: string; - - /** - *

    These key-value pairs define properties associated with the table.

    - * @public - */ - Parameters?: Record; - - /** - *

    The person or entity who created the table.

    - * @public - */ - CreatedBy?: string; - - /** - *

    Indicates whether the table has been registered with Lake Formation.

    - * @public - */ - IsRegisteredWithLakeFormation?: boolean; - - /** - *

    A TableIdentifier structure that describes a target table for resource linking.

    - * @public - */ - TargetTable?: TableIdentifier; - - /** - *

    The ID of the Data Catalog in which the table resides.

    + *

    The name of the connection to be used to validate the specific representation of the view.

    * @public */ - CatalogId?: string; + ValidationConnection?: string; /** - *

    The ID of the table version.

    + *

    Dialects marked as stale are no longer valid and must be updated before they can be queried in their respective query engines.

    * @public */ - VersionId?: string; + IsStale?: boolean; +} +/** + *

    A structure containing details for representations.

    + * @public + */ +export interface ViewDefinition { /** - *

    A FederatedTable structure that references an entity outside the Glue Data Catalog.

    + *

    You can set this flag as true to instruct the engine not to push user-provided operations into the logical plan of the view during query planning. However, setting this flag does not guarantee that the engine will comply. Refer to the engine's documentation to understand the guarantees provided, if any.

    * @public */ - FederatedTable?: FederatedTable; + IsProtected?: boolean; /** - *

    A structure that contains all the information that defines the view, including the dialect or dialects for the view, and the query.

    + *

    The definer of a view in SQL.

    * @public */ - ViewDefinition?: ViewDefinition; + Definer?: string; /** - *

    Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

    + *

    A list of table Amazon Resource Names (ARNs).

    * @public */ - IsMultiDialectView?: boolean; -} + SubObjects?: string[]; -/** - * @public - */ -export interface GetTableResponse { /** - *

    The Table object that defines the specified table.

    + *

    A list of representations.

    * @public */ - Table?: Table; + Representations?: ViewRepresentation[]; } /** @@ -1977,24 +1872,12 @@ export interface GetTablesRequest { * @public */ QueryAsOfTime?: Date; -} - -/** - * @public - */ -export interface GetTablesResponse { - /** - *

    A list of the requested Table objects.

    - * @public - */ - TableList?: Table[]; /** - *

    A continuation token, present if the current list segment is - * not the last.

    + *

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    * @public */ - NextToken?: string; + IncludeStatusDetails?: boolean; } /** @@ -2029,35 +1912,6 @@ export interface GetTableVersionRequest { VersionId?: string; } -/** - *

    Specifies a version of a table.

    - * @public - */ -export interface TableVersion { - /** - *

    The table in question.

    - * @public - */ - Table?: Table; - - /** - *

    The ID value that identifies this table version. A VersionId is a string representation of an integer. Each version is incremented by 1.

    - * @public - */ - VersionId?: string; -} - -/** - * @public - */ -export interface GetTableVersionResponse { - /** - *

    The requested table version.

    - * @public - */ - TableVersion?: TableVersion; -} - /** * @public */ @@ -2096,25 +1950,6 @@ export interface GetTableVersionsRequest { MaxResults?: number; } -/** - * @public - */ -export interface GetTableVersionsResponse { - /** - *

    A list of strings identifying available versions of the - * specified table.

    - * @public - */ - TableVersions?: TableVersion[]; - - /** - *

    A continuation token, if the list of available versions does - * not include the last one.

    - * @public - */ - NextToken?: string; -} - /** * @public */ @@ -2698,72 +2533,6 @@ export interface ColumnRowFilter { RowFilterExpression?: string; } -/** - * @public - */ -export interface GetUnfilteredTableMetadataResponse { - /** - *

    A Table object containing the table metadata.

    - * @public - */ - Table?: Table; - - /** - *

    A list of column names that the user has been granted access to.

    - * @public - */ - AuthorizedColumns?: string[]; - - /** - *

    A Boolean value that indicates whether the partition location is registered - * with Lake Formation.

    - * @public - */ - IsRegisteredWithLakeFormation?: boolean; - - /** - *

    A list of column row filters.

    - * @public - */ - CellFilters?: ColumnRowFilter[]; - - /** - *

    A cryptographically generated query identifier generated by Glue or Lake Formation.

    - * @public - */ - QueryAuthorizationId?: string; - - /** - *

    Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

    - * @public - */ - IsMultiDialectView?: boolean; - - /** - *

    The resource ARN of the parent resource extracted from the request.

    - * @public - */ - ResourceArn?: string; - - /** - *

    A flag that instructs the engine not to push user-provided operations into the logical plan of the view during query planning. However, if set this flag does not guarantee that the engine will comply. Refer to the engine's documentation to understand the guarantees provided, if any.

    - * @public - */ - IsProtected?: boolean; - - /** - *

    The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

    - * @public - */ - Permissions?: Permission[]; - - /** - *

    The filter that applies to the table. For example when applying the filter in SQL, it would go in the WHERE clause and can be evaluated by using an AND operator with any other predicates applied by the user querying the table.

    - * @public - */ - RowFilter?: string; -} - /** * @public */ @@ -5650,23 +5419,12 @@ export interface SearchTablesRequest { * @public */ ResourceShareType?: ResourceShareType; -} - -/** - * @public - */ -export interface SearchTablesResponse { - /** - *

    A continuation token, present if the current list segment is not the last.

    - * @public - */ - NextToken?: string; /** - *

    A list of the requested Table objects. The SearchTables response returns only the tables that you have access to.

    + *

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    * @public */ - TableList?: Table[]; + IncludeStatusDetails?: boolean; } /** @@ -7953,6 +7711,94 @@ export interface UpdateUsageProfileRequest { Configuration: ProfileConfiguration | undefined; } +/** + * @public + */ +export interface UpdateUsageProfileResponse { + /** + *

    The name of the usage profile that was updated.

    + * @public + */ + Name?: string; +} + +/** + * @public + */ +export interface UpdateUserDefinedFunctionRequest { + /** + *

    The ID of the Data Catalog where the function to be updated is located. If none is + * provided, the Amazon Web Services account ID is used by default.

    + * @public + */ + CatalogId?: string; + + /** + *

    The name of the catalog database where the function to be updated is + * located.

    + * @public + */ + DatabaseName: string | undefined; + + /** + *

    The name of the function.

    + * @public + */ + FunctionName: string | undefined; + + /** + *

    A FunctionInput object that redefines the function in the Data + * Catalog.

    + * @public + */ + FunctionInput: UserDefinedFunctionInput | undefined; +} + +/** + * @public + */ +export interface UpdateUserDefinedFunctionResponse {} + +/** + * @public + */ +export interface UpdateWorkflowRequest { + /** + *

    Name of the workflow to be updated.

    + * @public + */ + Name: string | undefined; + + /** + *

    The description of the workflow.

    + * @public + */ + Description?: string; + + /** + *

    A collection of properties to be used as part of each execution of the workflow.

    + * @public + */ + DefaultRunProperties?: Record; + + /** + *

    You can use this parameter to prevent unwanted multiple updates to data, to control costs, or in some cases, to prevent exceeding the maximum number of concurrent runs of any of the component jobs. If you leave this parameter blank, there is no limit to the number of concurrent workflow runs.

    + * @public + */ + MaxConcurrentRuns?: number; +} + +/** + * @public + */ +export interface UpdateWorkflowResponse { + /** + *

    The name of the workflow which was specified in input.

    + * @public + */ + Name?: string; +} + /** * @internal */ diff --git a/clients/client-glue/src/models/models_3.ts b/clients/client-glue/src/models/models_3.ts index 59219b13837df..4d3a02bc50c37 100644 --- a/clients/client-glue/src/models/models_3.ts +++ b/clients/client-glue/src/models/models_3.ts @@ -12,6 +12,7 @@ import { CatalogKafkaSource, CatalogKinesisSource, CatalogSource, + Column, ConnectionsList, ConnectorDataSource, ConnectorDataTarget, @@ -24,6 +25,7 @@ import { DropNullFields, DynamicTransform, DynamoDBCatalogSource, + ErrorDetail, EvaluateDataQuality, EvaluateDataQualityMultiFrame, ExecutionClass, @@ -78,99 +80,21 @@ import { SparkSQL, Spigot, SplitFields, + StorageDescriptor, Union, WorkerType, } from "./models_0"; -import { UserDefinedFunctionInput } from "./models_1"; +import { Permission, TableIdentifier } from "./models_1"; -/** - * @public - */ -export interface UpdateUsageProfileResponse { - /** - *

    The name of the usage profile that was updated.

    - * @public - */ - Name?: string; -} - -/** - * @public - */ -export interface UpdateUserDefinedFunctionRequest { - /** - *

    The ID of the Data Catalog where the function to be updated is located. If none is - * provided, the Amazon Web Services account ID is used by default.

    - * @public - */ - CatalogId?: string; - - /** - *

    The name of the catalog database where the function to be updated is - * located.

    - * @public - */ - DatabaseName: string | undefined; - - /** - *

    The name of the function.

    - * @public - */ - FunctionName: string | undefined; - - /** - *

    A FunctionInput object that redefines the function in the Data - * Catalog.

    - * @public - */ - FunctionInput: UserDefinedFunctionInput | undefined; -} - -/** - * @public - */ -export interface UpdateUserDefinedFunctionResponse {} - -/** - * @public - */ -export interface UpdateWorkflowRequest { - /** - *

    Name of the workflow to be updated.

    - * @public - */ - Name: string | undefined; - - /** - *

    The description of the workflow.

    - * @public - */ - Description?: string; - - /** - *

    A collection of properties to be used as part of each execution of the workflow.

    - * @public - */ - DefaultRunProperties?: Record; - - /** - *

    You can use this parameter to prevent unwanted multiple updates to data, to control costs, or in some cases, to prevent exceeding the maximum number of concurrent runs of any of the component jobs. If you leave this parameter blank, there is no limit to the number of concurrent workflow runs.

    - * @public - */ - MaxConcurrentRuns?: number; -} - -/** - * @public - */ -export interface UpdateWorkflowResponse { - /** - *

    The name of the workflow which was specified in input.

    - * @public - */ - Name?: string; -} +import { + ColumnRowFilter, + FederatedTable, + ResourceAction, + ResourceState, + ViewDefinition, + ViewValidation, +} from "./models_2"; /** *

    Specifies the mapping of data property keys.

    @@ -268,6 +192,255 @@ export interface ApplyMapping { Mapping: Mapping[] | undefined; } +/** + *

    A structure containing information about an asynchronous change to a table.

    + * @public + */ +export interface StatusDetails { + /** + *

    A Table object representing the requested changes.

    + * @public + */ + RequestedChange?: Table; + + /** + *

    A list of ViewValidation objects that contain information for an analytical engine to validate a view.

    + * @public + */ + ViewValidations?: ViewValidation[]; +} + +/** + *

    Represents a collection of related data organized in columns and rows.

    + * @public + */ +export interface Table { + /** + *

    The table name. For Hive compatibility, this must be entirely + * lowercase.

    + * @public + */ + Name: string | undefined; + + /** + *

    The name of the database where the table metadata resides. + * For Hive compatibility, this must be all lowercase.

    + * @public + */ + DatabaseName?: string; + + /** + *

    A description of the table.

    + * @public + */ + Description?: string; + + /** + *

    The owner of the table.

    + * @public + */ + Owner?: string; + + /** + *

    The time when the table definition was created in the Data Catalog.

    + * @public + */ + CreateTime?: Date; + + /** + *

    The last time that the table was updated.

    + * @public + */ + UpdateTime?: Date; + + /** + *

    The last time that the table was accessed. This is usually taken from HDFS, and might not + * be reliable.

    + * @public + */ + LastAccessTime?: Date; + + /** + *

    The last time that column statistics were computed for this table.

    + * @public + */ + LastAnalyzedTime?: Date; + + /** + *

    The retention time for this table.

    + * @public + */ + Retention?: number; + + /** + *

    A storage descriptor containing information about the physical storage + * of this table.

    + * @public + */ + StorageDescriptor?: StorageDescriptor; + + /** + *

    A list of columns by which the table is partitioned. Only primitive + * types are supported as partition keys.

    + *

    When you create a table used by Amazon Athena, and you do not specify any + * partitionKeys, you must at least set the value of partitionKeys to + * an empty list. For example:

    + *

    + * "PartitionKeys": [] + *

    + * @public + */ + PartitionKeys?: Column[]; + + /** + *

    Included for Apache Hive compatibility. Not used in the normal course of Glue operations. + * If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

    + * @public + */ + ViewOriginalText?: string; + + /** + *

    Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

    + * @public + */ + ViewExpandedText?: string; + + /** + *

    The type of this table. + * Glue will create tables with the EXTERNAL_TABLE type. + * Other services, such as Athena, may create tables with additional table types. + *

    + *

    Glue related table types:

    + *
    + *
    EXTERNAL_TABLE
    + *
    + *

    Hive compatible attribute - indicates a non-Hive managed table.

    + *
    + *
    GOVERNED
    + *
    + *

    Used by Lake Formation. + * The Glue Data Catalog understands GOVERNED.

    + *
    + *
    + * @public + */ + TableType?: string; + + /** + *

    These key-value pairs define properties associated with the table.

    + * @public + */ + Parameters?: Record; + + /** + *

    The person or entity who created the table.

    + * @public + */ + CreatedBy?: string; + + /** + *

    Indicates whether the table has been registered with Lake Formation.

    + * @public + */ + IsRegisteredWithLakeFormation?: boolean; + + /** + *

    A TableIdentifier structure that describes a target table for resource linking.

    + * @public + */ + TargetTable?: TableIdentifier; + + /** + *

    The ID of the Data Catalog in which the table resides.

    + * @public + */ + CatalogId?: string; + + /** + *

    The ID of the table version.

    + * @public + */ + VersionId?: string; + + /** + *

    A FederatedTable structure that references an entity outside the Glue Data Catalog.

    + * @public + */ + FederatedTable?: FederatedTable; + + /** + *

    A structure that contains all the information that defines the view, including the dialect or dialects for the view, and the query.

    + * @public + */ + ViewDefinition?: ViewDefinition; + + /** + *

    Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

    + * @public + */ + IsMultiDialectView?: boolean; + + /** + *

    A structure containing information about the state of an asynchronous change to a table.

    + * @public + */ + Status?: TableStatus; +} + +/** + *

    A structure containing information about the state of an asynchronous change to a table.

    + * @public + */ +export interface TableStatus { + /** + *

    The ARN of the user who requested the asynchronous change.

    + * @public + */ + RequestedBy?: string; + + /** + *

    The ARN of the user to last manually alter the asynchronous change (requesting cancellation, etc).

    + * @public + */ + UpdatedBy?: string; + + /** + *

    An ISO 8601 formatted date string indicating the time that the change was initiated.

    + * @public + */ + RequestTime?: Date; + + /** + *

    An ISO 8601 formatted date string indicating the time that the state was last updated.

    + * @public + */ + UpdateTime?: Date; + + /** + *

    Indicates which action was called on the table, currently only CREATE or UPDATE.

    + * @public + */ + Action?: ResourceAction; + + /** + *

    A generic status for the change in progress, such as QUEUED, IN_PROGRESS, SUCCESS, or FAILED.

    + * @public + */ + State?: ResourceState; + + /** + *

    An error that will only appear when the state is "FAILED". This is a parent level exception message, there may be different Errors for each dialect.

    + * @public + */ + Error?: ErrorDetail; + + /** + *

    A StatusDetails object with information about the requested change.

    + * @public + */ + Details?: StatusDetails; +} + /** *

    * CodeGenConfigurationNode enumerates all valid Node types. One and only one of its member variables can be populated.

    @@ -702,6 +875,146 @@ export interface CodeGenConfigurationNode { ConnectorDataTarget?: ConnectorDataTarget; } +/** + * @public + */ +export interface GetTableResponse { + /** + *

    The Table object that defines the specified table.

    + * @public + */ + Table?: Table; +} + +/** + * @public + */ +export interface GetUnfilteredTableMetadataResponse { + /** + *

    A Table object containing the table metadata.

    + * @public + */ + Table?: Table; + + /** + *

    A list of column names that the user has been granted access to.

    + * @public + */ + AuthorizedColumns?: string[]; + + /** + *

    A Boolean value that indicates whether the partition location is registered + * with Lake Formation.

    + * @public + */ + IsRegisteredWithLakeFormation?: boolean; + + /** + *

    A list of column row filters.

    + * @public + */ + CellFilters?: ColumnRowFilter[]; + + /** + *

    A cryptographically generated query identifier generated by Glue or Lake Formation.

    + * @public + */ + QueryAuthorizationId?: string; + + /** + *

    Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

    + * @public + */ + IsMultiDialectView?: boolean; + + /** + *

    The resource ARN of the parent resource extracted from the request.

    + * @public + */ + ResourceArn?: string; + + /** + *

    A flag that instructs the engine not to push user-provided operations into the logical plan of the view during query planning. However, if set this flag does not guarantee that the engine will comply. Refer to the engine's documentation to understand the guarantees provided, if any.

    + * @public + */ + IsProtected?: boolean; + + /** + *

    The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

    + * @public + */ + Permissions?: Permission[]; + + /** + *

    The filter that applies to the table. For example when applying the filter in SQL, it would go in the WHERE clause and can be evaluated by using an AND operator with any other predicates applied by the user querying the table.

    + * @public + */ + RowFilter?: string; +} + +/** + *

    Specifies a version of a table.

    + * @public + */ +export interface TableVersion { + /** + *

    The table in question.

    + * @public + */ + Table?: Table; + + /** + *

    The ID value that identifies this table version. A VersionId is a string representation of an integer. Each version is incremented by 1.

    + * @public + */ + VersionId?: string; +} + +/** + * @public + */ +export interface GetTablesResponse { + /** + *

    A list of the requested Table objects.

    + * @public + */ + TableList?: Table[]; + + /** + *

    A continuation token, present if the current list segment is not the last.

    + * @public + */ + NextToken?: string; +} + +/** + * @public + */ +export interface GetTableVersionResponse { + /** + *

    The requested table version.

    + * @public + */ + TableVersion?: TableVersion; +} + +/** + * @public + */ +export interface SearchTablesResponse { + /** + *

    A continuation token, present if the current list segment is not the last.

    + * @public + */ + NextToken?: string; + + /** + *

    A list of the requested Table objects. The SearchTables response returns only the tables that you have access to.

    + * @public + */ + TableList?: Table[]; +} + /** * @public */ @@ -944,6 +1257,25 @@ export interface CreateJobRequest { MaintenanceWindow?: string; } +/** + * @public + */ +export interface GetTableVersionsResponse { + /** + *

    A list of strings identifying available versions of the + * specified table.

    + * @public + */ + TableVersions?: TableVersion[]; + + /** + *

    A continuation token, if the list of available versions does + * not include the last one.

    + * @public + */ + NextToken?: string; +} + /** *

    Specifies a job definition.

    * @public diff --git a/clients/client-glue/src/protocols/Aws_json1_1.ts b/clients/client-glue/src/protocols/Aws_json1_1.ts index 5175dda3e70c5..38f3572f3faa6 100644 --- a/clients/client-glue/src/protocols/Aws_json1_1.ts +++ b/clients/client-glue/src/protocols/Aws_json1_1.ts @@ -990,13 +990,9 @@ import { GetTableOptimizerRequest, GetTableOptimizerResponse, GetTableRequest, - GetTableResponse, GetTablesRequest, - GetTablesResponse, GetTableVersionRequest, - GetTableVersionResponse, GetTableVersionsRequest, - GetTableVersionsResponse, GetTagsRequest, GetTriggerRequest, GetTriggersRequest, @@ -1005,7 +1001,6 @@ import { GetUnfilteredPartitionsMetadataRequest, GetUnfilteredPartitionsMetadataResponse, GetUnfilteredTableMetadataRequest, - GetUnfilteredTableMetadataResponse, GetUsageProfileRequest, GetUsageProfileResponse, GetUserDefinedFunctionRequest, @@ -1080,7 +1075,6 @@ import { SchedulerRunningException, SchemaVersionNumber, SearchTablesRequest, - SearchTablesResponse, SecurityConfiguration, Segment, SortCriterion, @@ -1106,8 +1100,6 @@ import { StopTriggerRequest, StopWorkflowRunRequest, SupportedDialect, - Table, - TableVersion, TagResourceRequest, TimestampFilter, TriggerUpdate, @@ -1138,10 +1130,13 @@ import { UpdateTableRequest, UpdateTriggerRequest, UpdateUsageProfileRequest, + UpdateUserDefinedFunctionRequest, + UpdateWorkflowRequest, UpdateXMLClassifierRequest, UsageProfileDefinition, UserDefinedFunction, VersionMismatchException, + ViewValidation, } from "../models/models_2"; import { ApplyMapping, @@ -1150,12 +1145,20 @@ import { CreateJobRequest, GetJobResponse, GetJobsResponse, + GetTableResponse, + GetTablesResponse, + GetTableVersionResponse, + GetTableVersionsResponse, + GetUnfilteredTableMetadataResponse, Job, JobUpdate, Mapping, + SearchTablesResponse, + StatusDetails, + Table, + TableStatus, + TableVersion, UpdateJobRequest, - UpdateUserDefinedFunctionRequest, - UpdateWorkflowRequest, } from "../models/models_3"; /** @@ -10296,6 +10299,7 @@ const se_GetTableRequest = (input: GetTableRequest, context: __SerdeContext): an return take(input, { CatalogId: [], DatabaseName: [], + IncludeStatusDetails: [], Name: [], QueryAsOfTime: (_) => _.getTime() / 1_000, TransactionId: [], @@ -10310,6 +10314,7 @@ const se_GetTablesRequest = (input: GetTablesRequest, context: __SerdeContext): CatalogId: [], DatabaseName: [], Expression: [], + IncludeStatusDetails: [], MaxResults: [], NextToken: [], QueryAsOfTime: (_) => _.getTime() / 1_000, @@ -14810,6 +14815,16 @@ const de_StatisticSummaryList = (output: any, context: __SerdeContext): Statisti return retVal; }; +/** + * deserializeAws_json1_1StatusDetails + */ +const de_StatusDetails = (output: any, context: __SerdeContext): StatusDetails => { + return take(output, { + RequestedChange: (_: any) => de_Table(_, context), + ViewValidations: (_: any) => de_ViewValidationList(_, context), + }) as any; +}; + // de_StopColumnStatisticsTaskRunResponse omitted. // de_StopCrawlerResponse omitted. @@ -14860,6 +14875,7 @@ const de_Table = (output: any, context: __SerdeContext): Table => { Parameters: _json, PartitionKeys: _json, Retention: __expectInt32, + Status: (_: any) => de_TableStatus(_, context), StorageDescriptor: _json, TableType: __expectString, TargetTable: _json, @@ -14927,6 +14943,22 @@ const de_TableOptimizerRuns = (output: any, context: __SerdeContext): TableOptim return retVal; }; +/** + * deserializeAws_json1_1TableStatus + */ +const de_TableStatus = (output: any, context: __SerdeContext): TableStatus => { + return take(output, { + Action: __expectString, + Details: (_: any) => de_StatusDetails(_, context), + Error: _json, + RequestTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + RequestedBy: __expectString, + State: __expectString, + UpdateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + UpdatedBy: __expectString, + }) as any; +}; + /** * deserializeAws_json1_1TableVersion */ @@ -15192,6 +15224,32 @@ const de_UserDefinedFunctionList = (output: any, context: __SerdeContext): UserD // de_ViewSubObjectsList omitted. +/** + * deserializeAws_json1_1ViewValidation + */ +const de_ViewValidation = (output: any, context: __SerdeContext): ViewValidation => { + return take(output, { + Dialect: __expectString, + DialectVersion: __expectString, + Error: _json, + State: __expectString, + UpdateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ViewValidationText: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1ViewValidationList + */ +const de_ViewValidationList = (output: any, context: __SerdeContext): ViewValidation[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ViewValidation(entry, context); + }); + return retVal; +}; + /** * deserializeAws_json1_1Workflow */ diff --git a/codegen/sdk-codegen/aws-models/glue.json b/codegen/sdk-codegen/aws-models/glue.json index 82194299d0f94..8d8ac692ebd12 100644 --- a/codegen/sdk-codegen/aws-models/glue.json +++ b/codegen/sdk-codegen/aws-models/glue.json @@ -2616,6 +2616,12 @@ "smithy.api#required": {} } }, + "PartitionKeys": { + "target": "com.amazonaws.glue#GlueStudioPathList", + "traits": { + "smithy.api#documentation": "

    The partition keys used to distribute data across multiple partitions or shards based on a specific key or set of key.

    " + } + }, "Database": { "target": "com.amazonaws.glue#EnclosedInStringProperty", "traits": { @@ -6822,7 +6828,7 @@ "ConnectionProperties": { "target": "com.amazonaws.glue#ConnectionProperties", "traits": { - "smithy.api#documentation": "

    These key-value pairs define parameters for the connection:

    \n
      \n
    • \n

      \n HOST - The host URI: either the\n fully qualified domain name (FQDN) or the IPv4 address of\n the database host.

      \n
    • \n
    • \n

      \n PORT - The port number, between\n 1024 and 65535, of the port on which the database host is\n listening for database connections.

      \n
    • \n
    • \n

      \n USER_NAME - The name under which\n to log in to the database. The value string for USER_NAME is \"USERNAME\".

      \n
    • \n
    • \n

      \n PASSWORD - A password,\n if one is used, for the user name.

      \n
    • \n
    • \n

      \n ENCRYPTED_PASSWORD - When you enable connection password protection by setting ConnectionPasswordEncryption in the Data Catalog encryption settings, this field stores the encrypted password.

      \n
    • \n
    • \n

      \n JDBC_DRIVER_JAR_URI - The Amazon Simple Storage Service (Amazon S3) path of the\n JAR file that contains the JDBC driver to use.

      \n
    • \n
    • \n

      \n JDBC_DRIVER_CLASS_NAME - The class name of the JDBC driver to use.

      \n
    • \n
    • \n

      \n JDBC_ENGINE - The name of the JDBC engine to use.

      \n
    • \n
    • \n

      \n JDBC_ENGINE_VERSION - The version of the JDBC engine to use.

      \n
    • \n
    • \n

      \n CONFIG_FILES - (Reserved for future use.)

      \n
    • \n
    • \n

      \n INSTANCE_ID - The instance ID to use.

      \n
    • \n
    • \n

      \n JDBC_CONNECTION_URL - The URL for connecting to a JDBC data source.

      \n
    • \n
    • \n

      \n JDBC_ENFORCE_SSL - A Boolean string (true, false) specifying whether Secure\n Sockets Layer (SSL) with hostname matching is enforced for the JDBC connection on the\n client. The default is false.

      \n
    • \n
    • \n

      \n CUSTOM_JDBC_CERT - An Amazon S3 location specifying the customer's root certificate. Glue uses this root certificate to validate the customer’s certificate when connecting to the customer database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM format.

      \n
    • \n
    • \n

      \n SKIP_CUSTOM_JDBC_CERT_VALIDATION - By default, this is false. Glue validates the Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to true to skip Glue’s validation of the customer certificate.

      \n
    • \n
    • \n

      \n CUSTOM_JDBC_CERT_STRING - A custom JDBC certificate string which is used for domain match or distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the SSL_SERVER_CERT_DN; in Microsoft SQL Server, this is used as the hostNameInCertificate.

      \n
    • \n
    • \n

      \n CONNECTION_URL - The URL for connecting to a general (non-JDBC) data source.

      \n
    • \n
    • \n

      \n SECRET_ID - The secret ID used for the secret manager of credentials.

      \n
    • \n
    • \n

      \n CONNECTOR_URL - The connector URL for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n CONNECTOR_TYPE - The connector type for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n CONNECTOR_CLASS_NAME - The connector class name for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n KAFKA_BOOTSTRAP_SERVERS - A comma-separated list of host and port pairs that are the addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.

      \n
    • \n
    • \n

      \n KAFKA_SSL_ENABLED - Whether to enable or disable SSL on an Apache Kafka connection. Default value is \"true\".

      \n
    • \n
    • \n

      \n KAFKA_CUSTOM_CERT - The Amazon S3 URL for the private CA cert file (.pem format). The default is an empty string.

      \n
    • \n
    • \n

      \n KAFKA_SKIP_CUSTOM_CERT_VALIDATION - Whether to skip the validation of the CA cert file or not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is \"false\".

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEYSTORE - The Amazon S3 location of the client keystore file for Kafka client side authentication (Optional).

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEYSTORE_PASSWORD - The password to access the provided keystore (Optional).

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEY_PASSWORD - A keystore can consist of multiple keys, so this is the password to access the client key to be used with the Kafka server side key (Optional).

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD - The encrypted version of the Kafka client keystore password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD - The encrypted version of the Kafka client key password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_MECHANISM - \"SCRAM-SHA-512\", \"GSSAPI\", \"AWS_MSK_IAM\", or \"PLAIN\". These are the supported SASL Mechanisms.

      \n
    • \n
    • \n

      \n KAFKA_SASL_PLAIN_USERNAME - A plaintext username used to authenticate with the \"PLAIN\" mechanism.

      \n
    • \n
    • \n

      \n KAFKA_SASL_PLAIN_PASSWORD - A plaintext password used to authenticate with the \"PLAIN\" mechanism.

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD - The encrypted version of the Kafka SASL PLAIN password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_USERNAME - A plaintext username used to authenticate with the \"SCRAM-SHA-512\" mechanism.

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_PASSWORD - A plaintext password used to authenticate with the \"SCRAM-SHA-512\" mechanism.

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD - The encrypted version of the Kafka SASL SCRAM password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_SECRETS_ARN - The Amazon Resource Name of a secret in Amazon Web Services Secrets Manager.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_KEYTAB - The S3 location of a Kerberos keytab file. A keytab stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_KRB5_CONF - The S3 location of a Kerberos krb5.conf file. A krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation: krb5.conf.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_SERVICE - The Kerberos service name, as set with sasl.kerberos.service.name in your Kafka Configuration.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_PRINCIPAL - The name of the Kerberos princial used by Glue. For more information, see Kafka Documentation: Configuring Kafka Brokers.

      \n
    • \n
    " + "smithy.api#documentation": "

    These key-value pairs define parameters for the connection:

    \n
      \n
    • \n

      \n HOST - The host URI: either the\n fully qualified domain name (FQDN) or the IPv4 address of\n the database host.

      \n
    • \n
    • \n

      \n PORT - The port number, between\n 1024 and 65535, of the port on which the database host is\n listening for database connections.

      \n
    • \n
    • \n

      \n USER_NAME - The name under which\n to log in to the database. The value string for USER_NAME is \"USERNAME\".

      \n
    • \n
    • \n

      \n PASSWORD - A password,\n if one is used, for the user name.

      \n
    • \n
    • \n

      \n ENCRYPTED_PASSWORD - When you enable connection password protection by setting ConnectionPasswordEncryption in the Data Catalog encryption settings, this field stores the encrypted password.

      \n
    • \n
    • \n

      \n JDBC_DRIVER_JAR_URI - The Amazon Simple Storage Service (Amazon S3) path of the\n JAR file that contains the JDBC driver to use.

      \n
    • \n
    • \n

      \n JDBC_DRIVER_CLASS_NAME - The class name of the JDBC driver to use.

      \n
    • \n
    • \n

      \n JDBC_ENGINE - The name of the JDBC engine to use.

      \n
    • \n
    • \n

      \n JDBC_ENGINE_VERSION - The version of the JDBC engine to use.

      \n
    • \n
    • \n

      \n CONFIG_FILES - (Reserved for future use.)

      \n
    • \n
    • \n

      \n INSTANCE_ID - The instance ID to use.

      \n
    • \n
    • \n

      \n JDBC_CONNECTION_URL - The URL for connecting to a JDBC data source.

      \n
    • \n
    • \n

      \n JDBC_ENFORCE_SSL - A Boolean string (true, false) specifying whether Secure\n Sockets Layer (SSL) with hostname matching is enforced for the JDBC connection on the\n client. The default is false.

      \n
    • \n
    • \n

      \n CUSTOM_JDBC_CERT - An Amazon S3 location specifying the customer's root certificate. Glue uses this root certificate to validate the customer’s certificate when connecting to the customer database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM format.

      \n
    • \n
    • \n

      \n SKIP_CUSTOM_JDBC_CERT_VALIDATION - By default, this is false. Glue validates the Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to true to skip Glue’s validation of the customer certificate.

      \n
    • \n
    • \n

      \n CUSTOM_JDBC_CERT_STRING - A custom JDBC certificate string which is used for domain match or distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the SSL_SERVER_CERT_DN; in Microsoft SQL Server, this is used as the hostNameInCertificate.

      \n
    • \n
    • \n

      \n CONNECTION_URL - The URL for connecting to a general (non-JDBC) data source.

      \n
    • \n
    • \n

      \n SECRET_ID - The secret ID used for the secret manager of credentials.

      \n
    • \n
    • \n

      \n CONNECTOR_URL - The connector URL for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n CONNECTOR_TYPE - The connector type for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n CONNECTOR_CLASS_NAME - The connector class name for a MARKETPLACE or CUSTOM connection.

      \n
    • \n
    • \n

      \n KAFKA_BOOTSTRAP_SERVERS - A comma-separated list of host and port pairs that are the addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.

      \n
    • \n
    • \n

      \n KAFKA_SSL_ENABLED - Whether to enable or disable SSL on an Apache Kafka connection. Default value is \"true\".

      \n
    • \n
    • \n

      \n KAFKA_CUSTOM_CERT - The Amazon S3 URL for the private CA cert file (.pem format). The default is an empty string.

      \n
    • \n
    • \n

      \n KAFKA_SKIP_CUSTOM_CERT_VALIDATION - Whether to skip the validation of the CA cert file or not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is \"false\".

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEYSTORE - The Amazon S3 location of the client keystore file for Kafka client side authentication (Optional).

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEYSTORE_PASSWORD - The password to access the provided keystore (Optional).

      \n
    • \n
    • \n

      \n KAFKA_CLIENT_KEY_PASSWORD - A keystore can consist of multiple keys, so this is the password to access the client key to be used with the Kafka server side key (Optional).

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD - The encrypted version of the Kafka client keystore password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD - The encrypted version of the Kafka client key password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_MECHANISM - \"SCRAM-SHA-512\", \"GSSAPI\", \"AWS_MSK_IAM\", or \"PLAIN\". These are the supported SASL Mechanisms.

      \n
    • \n
    • \n

      \n KAFKA_SASL_PLAIN_USERNAME - A plaintext username used to authenticate with the \"PLAIN\" mechanism.

      \n
    • \n
    • \n

      \n KAFKA_SASL_PLAIN_PASSWORD - A plaintext password used to authenticate with the \"PLAIN\" mechanism.

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD - The encrypted version of the Kafka SASL PLAIN password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_USERNAME - A plaintext username used to authenticate with the \"SCRAM-SHA-512\" mechanism.

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_PASSWORD - A plaintext password used to authenticate with the \"SCRAM-SHA-512\" mechanism.

      \n
    • \n
    • \n

      \n ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD - The encrypted version of the Kafka SASL SCRAM password (if the user has the Glue encrypt passwords setting selected).

      \n
    • \n
    • \n

      \n KAFKA_SASL_SCRAM_SECRETS_ARN - The Amazon Resource Name of a secret in Amazon Web Services Secrets Manager.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_KEYTAB - The S3 location of a Kerberos keytab file. A keytab stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_KRB5_CONF - The S3 location of a Kerberos krb5.conf file. A krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation: krb5.conf.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_SERVICE - The Kerberos service name, as set with sasl.kerberos.service.name in your Kafka Configuration.

      \n
    • \n
    • \n

      \n KAFKA_SASL_GSSAPI_PRINCIPAL - The name of the Kerberos princial used by Glue. For more information, see Kafka Documentation: Configuring Kafka Brokers.

      \n
    • \n
    • \n

      \n ROLE_ARN - The role to be used for running queries.

      \n
    • \n
    • \n

      \n REGION - The Amazon Web Services Region where queries will be run.

      \n
    • \n
    • \n

      \n WORKGROUP_NAME - The name of an Amazon Redshift serverless workgroup or Amazon Athena workgroup in which queries will run.

      \n
    • \n
    • \n

      \n CLUSTER_IDENTIFIER - The cluster identifier of an Amazon Redshift cluster in which queries will run.

      \n
    • \n
    • \n

      \n DATABASE - The Amazon Redshift database that you are connecting to.

      \n
    • \n
    " } }, "PhysicalConnectionRequirements": { @@ -6897,7 +6903,7 @@ "ConnectionType": { "target": "com.amazonaws.glue#ConnectionType", "traits": { - "smithy.api#documentation": "

    The type of the connection. Currently, these types are supported:

    \n
      \n
    • \n

      \n JDBC - Designates a connection to a database through Java Database Connectivity (JDBC).

      \n

      \n JDBC Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: All of (HOST, PORT, JDBC_ENGINE) or JDBC_CONNECTION_URL.

        \n
      • \n
      • \n

        Required: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      • \n

        Optional: JDBC_ENFORCE_SSL, CUSTOM_JDBC_CERT, CUSTOM_JDBC_CERT_STRING, SKIP_CUSTOM_JDBC_CERT_VALIDATION. These parameters are used to configure SSL with JDBC.

        \n
      • \n
      \n
    • \n
    • \n

      \n KAFKA - Designates a connection to an Apache Kafka streaming platform.

      \n

      \n KAFKA Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: KAFKA_BOOTSTRAP_SERVERS.

        \n
      • \n
      • \n

        Optional: KAFKA_SSL_ENABLED, KAFKA_CUSTOM_CERT, KAFKA_SKIP_CUSTOM_CERT_VALIDATION. These parameters are used to configure SSL with KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_CLIENT_KEYSTORE, KAFKA_CLIENT_KEYSTORE_PASSWORD, KAFKA_CLIENT_KEY_PASSWORD, ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD, ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD. These parameters are used to configure TLS client configuration with SSL in KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_MECHANISM. Can be specified as SCRAM-SHA-512, GSSAPI, or AWS_MSK_IAM.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_SCRAM_USERNAME, KAFKA_SASL_SCRAM_PASSWORD, ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD. These parameters are used to configure SASL/SCRAM-SHA-512 authentication with KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_GSSAPI_KEYTAB, KAFKA_SASL_GSSAPI_KRB5_CONF, KAFKA_SASL_GSSAPI_SERVICE, KAFKA_SASL_GSSAPI_PRINCIPAL. These parameters are used to configure SASL/GSSAPI authentication with KAFKA.

        \n
      • \n
      \n
    • \n
    • \n

      \n MONGODB - Designates a connection to a MongoDB document database.

      \n

      \n MONGODB Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: CONNECTION_URL.

        \n
      • \n
      • \n

        Required: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      \n
    • \n
    • \n

      \n SALESFORCE - Designates a connection to Salesforce using OAuth authencation.

      \n
        \n
      • \n

        Requires the AuthenticationConfiguration member to be configured.

        \n
      • \n
      \n
    • \n
    • \n

      \n NETWORK - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC).

      \n

      \n NETWORK Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements.

      \n
    • \n
    • \n

      \n MARKETPLACE - Uses configuration settings contained in a connector purchased from Amazon Web Services Marketplace to read from and write to data stores that are not natively supported by Glue.

      \n

      \n MARKETPLACE Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: CONNECTOR_TYPE, CONNECTOR_URL, CONNECTOR_CLASS_NAME, CONNECTION_URL.

        \n
      • \n
      • \n

        Required for JDBC\n CONNECTOR_TYPE connections: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      \n
    • \n
    • \n

      \n CUSTOM - Uses configuration settings contained in a custom connector to read from and write to data stores that are not natively supported by Glue.

      \n
    • \n
    \n

    \n SFTP is not supported.

    \n

    For more information about how optional ConnectionProperties are used to configure features in Glue, consult Glue connection properties.

    \n

    For more information about how optional ConnectionProperties are used to configure features in Glue Studio, consult Using connectors and connections.

    ", + "smithy.api#documentation": "

    The type of the connection. Currently, these types are supported:

    \n
      \n
    • \n

      \n JDBC - Designates a connection to a database through Java Database Connectivity (JDBC).

      \n

      \n JDBC Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: All of (HOST, PORT, JDBC_ENGINE) or JDBC_CONNECTION_URL.

        \n
      • \n
      • \n

        Required: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      • \n

        Optional: JDBC_ENFORCE_SSL, CUSTOM_JDBC_CERT, CUSTOM_JDBC_CERT_STRING, SKIP_CUSTOM_JDBC_CERT_VALIDATION. These parameters are used to configure SSL with JDBC.

        \n
      • \n
      \n
    • \n
    • \n

      \n KAFKA - Designates a connection to an Apache Kafka streaming platform.

      \n

      \n KAFKA Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: KAFKA_BOOTSTRAP_SERVERS.

        \n
      • \n
      • \n

        Optional: KAFKA_SSL_ENABLED, KAFKA_CUSTOM_CERT, KAFKA_SKIP_CUSTOM_CERT_VALIDATION. These parameters are used to configure SSL with KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_CLIENT_KEYSTORE, KAFKA_CLIENT_KEYSTORE_PASSWORD, KAFKA_CLIENT_KEY_PASSWORD, ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD, ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD. These parameters are used to configure TLS client configuration with SSL in KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_MECHANISM. Can be specified as SCRAM-SHA-512, GSSAPI, or AWS_MSK_IAM.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_SCRAM_USERNAME, KAFKA_SASL_SCRAM_PASSWORD, ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD. These parameters are used to configure SASL/SCRAM-SHA-512 authentication with KAFKA.

        \n
      • \n
      • \n

        Optional: KAFKA_SASL_GSSAPI_KEYTAB, KAFKA_SASL_GSSAPI_KRB5_CONF, KAFKA_SASL_GSSAPI_SERVICE, KAFKA_SASL_GSSAPI_PRINCIPAL. These parameters are used to configure SASL/GSSAPI authentication with KAFKA.

        \n
      • \n
      \n
    • \n
    • \n

      \n MONGODB - Designates a connection to a MongoDB document database.

      \n

      \n MONGODB Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: CONNECTION_URL.

        \n
      • \n
      • \n

        Required: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      \n
    • \n
    • \n

      \n SALESFORCE - Designates a connection to Salesforce using OAuth authencation.

      \n
        \n
      • \n

        Requires the AuthenticationConfiguration member to be configured.

        \n
      • \n
      \n
    • \n
    • \n

      \n VIEW_VALIDATION_REDSHIFT - Designates a connection used for view validation by Amazon Redshift.

      \n
    • \n
    • \n

      \n VIEW_VALIDATION_ATHENA - Designates a connection used for view validation by Amazon Athena.

      \n
    • \n
    • \n

      \n NETWORK - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC).

      \n

      \n NETWORK Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements.

      \n
    • \n
    • \n

      \n MARKETPLACE - Uses configuration settings contained in a connector purchased from Amazon Web Services Marketplace to read from and write to data stores that are not natively supported by Glue.

      \n

      \n MARKETPLACE Connections use the following ConnectionParameters.

      \n
        \n
      • \n

        Required: CONNECTOR_TYPE, CONNECTOR_URL, CONNECTOR_CLASS_NAME, CONNECTION_URL.

        \n
      • \n
      • \n

        Required for JDBC\n CONNECTOR_TYPE connections: All of (USERNAME, PASSWORD) or SECRET_ID.

        \n
      • \n
      \n
    • \n
    • \n

      \n CUSTOM - Uses configuration settings contained in a custom connector to read from and write to data stores that are not natively supported by Glue.

      \n
    • \n
    \n

    \n SFTP is not supported.

    \n

    For more information about how optional ConnectionProperties are used to configure features in Glue, consult Glue connection properties.

    \n

    For more information about how optional ConnectionProperties are used to configure features in Glue Studio, consult Using connectors and connections.

    ", "smithy.api#required": {} } }, @@ -7244,6 +7250,30 @@ "traits": { "smithy.api#enumValue": "ROLE_ARN" } + }, + "REGION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REGION" + } + }, + "WORKGROUP_NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WORKGROUP_NAME" + } + }, + "CLUSTER_IDENTIFIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLUSTER_IDENTIFIER" + } + }, + "DATABASE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DATABASE" + } } } }, @@ -7320,6 +7350,18 @@ "traits": { "smithy.api#enumValue": "SALESFORCE" } + }, + "VIEW_VALIDATION_REDSHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VIEW_VALIDATION_REDSHIFT" + } + }, + "VIEW_VALIDATION_ATHENA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VIEW_VALIDATION_ATHENA" + } } } }, @@ -20115,6 +20157,12 @@ "traits": { "smithy.api#documentation": "

    The time as of when to read the table contents. If not set, the most recent transaction commit time will be used. Cannot be specified along with TransactionId.

    " } + }, + "IncludeStatusDetails": { + "target": "com.amazonaws.glue#BooleanNullable", + "traits": { + "smithy.api#documentation": "

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    " + } } }, "traits": { @@ -20397,6 +20445,12 @@ "traits": { "smithy.api#documentation": "

    The time as of when to read the table contents. If not set, the most recent transaction commit time will be used. Cannot be specified along with TransactionId.

    " } + }, + "IncludeStatusDetails": { + "target": "com.amazonaws.glue#BooleanNullable", + "traits": { + "smithy.api#documentation": "

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    " + } } }, "traits": { @@ -20415,7 +20469,7 @@ "NextToken": { "target": "com.amazonaws.glue#Token", "traits": { - "smithy.api#documentation": "

    A continuation token, present if the current list segment is\n not the last.

    " + "smithy.api#documentation": "

    A continuation token, present if the current list segment is not the last.

    " } } }, @@ -29811,6 +29865,23 @@ "smithy.api#output": {} } }, + "com.amazonaws.glue#ResourceAction": { + "type": "enum", + "members": { + "UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE" + } + }, + "CREATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE" + } + } + } + }, "com.amazonaws.glue#ResourceNotReadyException": { "type": "structure", "members": { @@ -29864,6 +29935,41 @@ } } }, + "com.amazonaws.glue#ResourceState": { + "type": "enum", + "members": { + "QUEUED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QUEUED" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "SUCCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCESS" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } + } + }, "com.amazonaws.glue#ResourceType": { "type": "enum", "members": { @@ -31753,6 +31859,12 @@ "traits": { "smithy.api#documentation": "

    Allows you to specify that you want to search the tables shared with your account. The allowable values are FOREIGN or ALL.

    \n
      \n
    • \n

      If set to FOREIGN, will search the tables shared with your account.

      \n
    • \n
    • \n

      If set to ALL, will search the tables shared with your account, as well as the tables in yor local account.

      \n
    • \n
    " } + }, + "IncludeStatusDetails": { + "target": "com.amazonaws.glue#BooleanNullable", + "traits": { + "smithy.api#documentation": "

    Specifies whether to include status details related to a request to create or update an Glue Data Catalog view.

    " + } } }, "traits": { @@ -34208,6 +34320,26 @@ "smithy.api#documentation": "

    A list of StatisticSummary.

    " } }, + "com.amazonaws.glue#StatusDetails": { + "type": "structure", + "members": { + "RequestedChange": { + "target": "com.amazonaws.glue#Table", + "traits": { + "smithy.api#documentation": "

    A Table object representing the requested changes.

    " + } + }, + "ViewValidations": { + "target": "com.amazonaws.glue#ViewValidationList", + "traits": { + "smithy.api#documentation": "

    A list of ViewValidation objects that contain information for an analytical engine to validate a view.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    A structure containing information about an asynchronous change to a table.

    " + } + }, "com.amazonaws.glue#StopColumnStatisticsTaskRun": { "type": "operation", "input": { @@ -34866,6 +34998,9 @@ "traits": { "smithy.api#documentation": "

    Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

    " } + }, + "Status": { + "target": "com.amazonaws.glue#TableStatus" } }, "traits": { @@ -35175,6 +35310,62 @@ } } }, + "com.amazonaws.glue#TableStatus": { + "type": "structure", + "members": { + "RequestedBy": { + "target": "com.amazonaws.glue#NameString", + "traits": { + "smithy.api#documentation": "

    The ARN of the user who requested the asynchronous change.

    " + } + }, + "UpdatedBy": { + "target": "com.amazonaws.glue#NameString", + "traits": { + "smithy.api#documentation": "

    The ARN of the user to last manually alter the asynchronous change (requesting cancellation, etc).

    " + } + }, + "RequestTime": { + "target": "com.amazonaws.glue#Timestamp", + "traits": { + "smithy.api#documentation": "

    An ISO 8601 formatted date string indicating the time that the change was initiated.

    " + } + }, + "UpdateTime": { + "target": "com.amazonaws.glue#Timestamp", + "traits": { + "smithy.api#documentation": "

    An ISO 8601 formatted date string indicating the time that the state was last updated.

    " + } + }, + "Action": { + "target": "com.amazonaws.glue#ResourceAction", + "traits": { + "smithy.api#documentation": "

    Indicates which action was called on the table, currently only CREATE or UPDATE.

    " + } + }, + "State": { + "target": "com.amazonaws.glue#ResourceState", + "traits": { + "smithy.api#documentation": "

    A generic status for the change in progress, such as QUEUED, IN_PROGRESS, SUCCESS, or FAILED.

    " + } + }, + "Error": { + "target": "com.amazonaws.glue#ErrorDetail", + "traits": { + "smithy.api#documentation": "

    An error that will only appear when the state is \"FAILED\". This is a parent level exception message, there may be different Errors for each dialect.

    " + } + }, + "Details": { + "target": "com.amazonaws.glue#StatusDetails", + "traits": { + "smithy.api#documentation": "

    A StatusDetails object with information about the requested change.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    A structure containing information about the state of an asynchronous change to a table.

    " + } + }, "com.amazonaws.glue#TableTypeString": { "type": "string", "traits": { @@ -39062,6 +39253,56 @@ } } }, + "com.amazonaws.glue#ViewValidation": { + "type": "structure", + "members": { + "Dialect": { + "target": "com.amazonaws.glue#ViewDialect", + "traits": { + "smithy.api#documentation": "

    The dialect of the query engine.

    " + } + }, + "DialectVersion": { + "target": "com.amazonaws.glue#ViewDialectVersionString", + "traits": { + "smithy.api#documentation": "

    The version of the dialect of the query engine. For example, 3.0.0.

    " + } + }, + "ViewValidationText": { + "target": "com.amazonaws.glue#ViewTextString", + "traits": { + "smithy.api#documentation": "

    The SELECT query that defines the view, as provided by the customer.

    " + } + }, + "UpdateTime": { + "target": "com.amazonaws.glue#Timestamp", + "traits": { + "smithy.api#documentation": "

    The time of the last update.

    " + } + }, + "State": { + "target": "com.amazonaws.glue#ResourceState", + "traits": { + "smithy.api#documentation": "

    The state of the validation.

    " + } + }, + "Error": { + "target": "com.amazonaws.glue#ErrorDetail", + "traits": { + "smithy.api#documentation": "

    An error associated with the validation.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    A structure that contains information for an analytical engine to validate a view, prior to persisting the view metadata. Used in the case of direct UpdateTable or CreateTable API calls.

    " + } + }, + "com.amazonaws.glue#ViewValidationList": { + "type": "list", + "member": { + "target": "com.amazonaws.glue#ViewValidation" + } + }, "com.amazonaws.glue#WorkerType": { "type": "enum", "members": {