Skip to content

Commit

Permalink
feat(client-glue): Adds observation and analyzer support to the GetDa…
Browse files Browse the repository at this point in the history
…taQualityResult and BatchGetDataQualityResult APIs.
  • Loading branch information
awstools committed Nov 30, 2023
1 parent 77b3170 commit fd0d898
Show file tree
Hide file tree
Showing 11 changed files with 615 additions and 169 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,33 @@ export interface BatchGetDataQualityResultCommandOutput extends BatchGetDataQual
* // },
* // },
* // ],
* // AnalyzerResults: [ // DataQualityAnalyzerResults
* // { // DataQualityAnalyzerResult
* // Name: "STRING_VALUE",
* // Description: "STRING_VALUE",
* // EvaluationMessage: "STRING_VALUE",
* // EvaluatedMetrics: {
* // "<keys>": Number("double"),
* // },
* // },
* // ],
* // Observations: [ // DataQualityObservations
* // { // DataQualityObservation
* // Description: "STRING_VALUE",
* // MetricBasedObservation: { // MetricBasedObservation
* // MetricName: "STRING_VALUE",
* // MetricValues: { // DataQualityMetricValues
* // ActualValue: Number("double"),
* // ExpectedValue: Number("double"),
* // LowerLimit: Number("double"),
* // UpperLimit: Number("double"),
* // },
* // NewRules: [ // NewRules
* // "STRING_VALUE",
* // ],
* // },
* // },
* // ],
* // },
* // ],
* // ResultsNotFound: [ // DataQualityResultIds
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ import {
} from "@smithy/types";

import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
import { CreateCustomEntityTypeRequest, CreateCustomEntityTypeResponse } from "../models/models_0";
import { CreateCustomEntityTypeRequest } from "../models/models_0";
import { CreateCustomEntityTypeResponse } from "../models/models_1";
import { de_CreateCustomEntityTypeCommand, se_CreateCustomEntityTypeCommand } from "../protocols/Aws_json1_1";

/**
Expand Down
27 changes: 27 additions & 0 deletions clients/client-glue/src/commands/GetDataQualityResultCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,33 @@ export interface GetDataQualityResultCommandOutput extends GetDataQualityResultR
* // },
* // },
* // ],
* // AnalyzerResults: [ // DataQualityAnalyzerResults
* // { // DataQualityAnalyzerResult
* // Name: "STRING_VALUE",
* // Description: "STRING_VALUE",
* // EvaluationMessage: "STRING_VALUE",
* // EvaluatedMetrics: {
* // "<keys>": Number("double"),
* // },
* // },
* // ],
* // Observations: [ // DataQualityObservations
* // { // DataQualityObservation
* // Description: "STRING_VALUE",
* // MetricBasedObservation: { // MetricBasedObservation
* // MetricName: "STRING_VALUE",
* // MetricValues: { // DataQualityMetricValues
* // ActualValue: Number("double"),
* // ExpectedValue: Number("double"),
* // LowerLimit: Number("double"),
* // UpperLimit: Number("double"),
* // },
* // NewRules: [ // NewRules
* // "STRING_VALUE",
* // ],
* // },
* // },
* // ],
* // };
*
* ```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ import {
} from "@smithy/types";

import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
import { GetSecurityConfigurationsRequest, GetSecurityConfigurationsResponse } from "../models/models_1";
import { GetSecurityConfigurationsRequest } from "../models/models_1";
import { GetSecurityConfigurationsResponse } from "../models/models_2";
import { de_GetSecurityConfigurationsCommand, se_GetSecurityConfigurationsCommand } from "../protocols/Aws_json1_1";

/**
Expand Down
2 changes: 1 addition & 1 deletion clients/client-glue/src/commands/GetSessionCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import {
} from "@smithy/types";

import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
import { GetSessionRequest, GetSessionResponse } from "../models/models_1";
import { GetSessionRequest, GetSessionResponse } from "../models/models_2";
import { de_GetSessionCommand, se_GetSessionCommand } from "../protocols/Aws_json1_1";

/**
Expand Down
3 changes: 1 addition & 2 deletions clients/client-glue/src/commands/GetStatementCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ import {
} from "@smithy/types";

import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
import { GetStatementRequest } from "../models/models_1";
import { GetStatementResponse } from "../models/models_2";
import { GetStatementRequest, GetStatementResponse } from "../models/models_2";
import { de_GetStatementCommand, se_GetStatementCommand } from "../protocols/Aws_json1_1";

/**
Expand Down
198 changes: 114 additions & 84 deletions clients/client-glue/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2296,6 +2296,36 @@ export interface BatchGetDataQualityResultRequest {
ResultIds: string[] | undefined;
}

/**
* @public
* <p>Describes the result of the evaluation of a data quality analyzer.</p>
*/
export interface DataQualityAnalyzerResult {
/**
* @public
* <p>The name of the data quality analyzer.</p>
*/
Name?: string;

/**
* @public
* <p>A description of the data quality analyzer.</p>
*/
Description?: string;

/**
* @public
* <p>An evaluation message.</p>
*/
EvaluationMessage?: string;

/**
* @public
* <p>A map of metrics associated with the evaluation of the analyzer.</p>
*/
EvaluatedMetrics?: Record<string, number>;
}

/**
* @public
* <p>The database and table in the Glue Data Catalog that is used for input or output data.</p>
Expand Down Expand Up @@ -2354,6 +2384,78 @@ export interface DataSource {
GlueTable: GlueTable | undefined;
}

/**
* @public
* <p>Describes the data quality metric value according to the analysis of historical data.</p>
*/
export interface DataQualityMetricValues {
/**
* @public
* <p>The actual value of the data quality metric.</p>
*/
ActualValue?: number;

/**
* @public
* <p>The expected value of the data quality metric according to the analysis of historical data.</p>
*/
ExpectedValue?: number;

/**
* @public
* <p>The lower limit of the data quality metric value according to the analysis of historical data.</p>
*/
LowerLimit?: number;

/**
* @public
* <p>The upper limit of the data quality metric value according to the analysis of historical data.</p>
*/
UpperLimit?: number;
}

/**
* @public
* <p>Describes the metric based observation generated based on evaluated data quality metrics.</p>
*/
export interface MetricBasedObservation {
/**
* @public
* <p>The name of the data quality metric used for generating the observation.</p>
*/
MetricName?: string;

/**
* @public
* <p>An object of type <code>DataQualityMetricValues</code> representing the analysis of the data quality metric value.</p>
*/
MetricValues?: DataQualityMetricValues;

/**
* @public
* <p>A list of new data quality rules generated as part of the observation based on the data quality metric value.</p>
*/
NewRules?: string[];
}

/**
* @public
* <p>Describes the observation generated after evaluating the rules and analyzers.</p>
*/
export interface DataQualityObservation {
/**
* @public
* <p>A description of the data quality observation.</p>
*/
Description?: string;

/**
* @public
* <p>An object of type <code>MetricBasedObservation</code> representing the observation that is based on evaluated data quality metrics.</p>
*/
MetricBasedObservation?: MetricBasedObservation;
}

/**
* @public
* @enum
Expand Down Expand Up @@ -2476,6 +2578,18 @@ export interface DataQualityResult {
* <p>A list of <code>DataQualityRuleResult</code> objects representing the results for each rule. </p>
*/
RuleResults?: DataQualityRuleResult[];

/**
* @public
* <p>A list of <code>DataQualityAnalyzerResult</code> objects representing the results for each analyzer. </p>
*/
AnalyzerResults?: DataQualityAnalyzerResult[];

/**
* @public
* <p>A list of <code>DataQualityObservation</code> objects representing the observations generated after evaluating the rules and analyzers. </p>
*/
Observations?: DataQualityObservation[];
}

/**
Expand Down Expand Up @@ -9207,87 +9321,3 @@ export interface CreateCustomEntityTypeRequest {
*/
Tags?: Record<string, string>;
}

/**
* @public
*/
export interface CreateCustomEntityTypeResponse {
/**
* @public
* <p>The name of the custom pattern you created.</p>
*/
Name?: string;
}

/**
* @public
* <p>The same unique identifier was associated with two different records.</p>
*/
export class IdempotentParameterMismatchException extends __BaseException {
readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException";
readonly $fault: "client" = "client";
/**
* @public
* <p>A message describing the problem.</p>
*/
Message?: string;
/**
* @internal
*/
constructor(opts: __ExceptionOptionType<IdempotentParameterMismatchException, __BaseException>) {
super({
name: "IdempotentParameterMismatchException",
$fault: "client",
...opts,
});
Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype);
this.Message = opts.Message;
}
}

/**
* @public
* <p>Two processes are trying to modify a resource simultaneously.</p>
*/
export class ConcurrentModificationException extends __BaseException {
readonly name: "ConcurrentModificationException" = "ConcurrentModificationException";
readonly $fault: "client" = "client";
/**
* @public
* <p>A message describing the problem.</p>
*/
Message?: string;
/**
* @internal
*/
constructor(opts: __ExceptionOptionType<ConcurrentModificationException, __BaseException>) {
super({
name: "ConcurrentModificationException",
$fault: "client",
...opts,
});
Object.setPrototypeOf(this, ConcurrentModificationException.prototype);
this.Message = opts.Message;
}
}

/**
* @public
* @enum
*/
export const Permission = {
ALL: "ALL",
ALTER: "ALTER",
CREATE_DATABASE: "CREATE_DATABASE",
CREATE_TABLE: "CREATE_TABLE",
DATA_LOCATION_ACCESS: "DATA_LOCATION_ACCESS",
DELETE: "DELETE",
DROP: "DROP",
INSERT: "INSERT",
SELECT: "SELECT",
} as const;

/**
* @public
*/
export type Permission = (typeof Permission)[keyof typeof Permission];
Loading

0 comments on commit fd0d898

Please sign in to comment.