diff --git a/.changes/2.1515.0.json b/.changes/2.1515.0.json new file mode 100644 index 0000000000..1073dfb1b4 --- /dev/null +++ b/.changes/2.1515.0.json @@ -0,0 +1,22 @@ +[ + { + "type": "bugfix", + "category": "Endpoints", + "description": "Add endpoint customizations for services which do not use FIPS suffix" + }, + { + "type": "feature", + "category": "CloudWatch", + "description": "Adds support for the OpenTelemetry 1.0 output format in CloudWatch Metric Streams." + }, + { + "type": "feature", + "category": "EC2", + "description": "M2 Mac instances are built on Apple M2 Mac mini computers. I4i instances are powered by 3rd generation Intel Xeon Scalable processors. C7i compute optimized, M7i general purpose and R7i memory optimized instances are powered by custom 4th Generation Intel Xeon Scalable processors." + }, + { + "type": "feature", + "category": "Finspace", + "description": "Releasing Scaling Group, Dataview, and Volume APIs" + } +] \ No newline at end of file diff --git a/.changes/next-release/bugfix-Endpoints-53e779cb.json b/.changes/next-release/bugfix-Endpoints-53e779cb.json deleted file mode 100644 index a15cfb1a90..0000000000 --- a/.changes/next-release/bugfix-Endpoints-53e779cb.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "type": "bugfix", - "category": "Endpoints", - "description": "Add endpoint customizations for services which do not use FIPS suffix" -} \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 362df467f4..32ca883334 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,13 @@ # Changelog for AWS SDK for JavaScript - + +## 2.1515.0 +* bugfix: Endpoints: Add endpoint customizations for services which do not use FIPS suffix +* feature: CloudWatch: Adds support for the OpenTelemetry 1.0 output format in CloudWatch Metric Streams. +* feature: EC2: M2 Mac instances are built on Apple M2 Mac mini computers. I4i instances are powered by 3rd generation Intel Xeon Scalable processors. C7i compute optimized, M7i general purpose and R7i memory optimized instances are powered by custom 4th Generation Intel Xeon Scalable processors. +* feature: Finspace: Releasing Scaling Group, Dataview, and Volume APIs + ## 2.1514.0 * feature: CodeDeploy: This release adds support for two new CodeDeploy features: 1) zonal deployments for Amazon EC2 in-place deployments, 2) deployments triggered by Auto Scaling group termination lifecycle hook events. diff --git a/README.md b/README.md index bb4502e337..9b5a9df034 100644 --- a/README.md +++ b/README.md @@ -69,7 +69,7 @@ require('aws-sdk/lib/maintenance_mode_message').suppress = true; To use the SDK in the browser, simply add the following script tag to your HTML pages: - + You can also build a custom browser SDK with your specified set of AWS services. This can allow you to reduce the SDK's size, specify different API versions of diff --git a/apis/ec2-2016-11-15.normal.json b/apis/ec2-2016-11-15.normal.json index 36ec82dfbf..1f0c2ad169 100644 --- a/apis/ec2-2016-11-15.normal.json +++ b/apis/ec2-2016-11-15.normal.json @@ -39704,7 +39704,16 @@ "r7i.16xlarge", "r7i.24xlarge", "r7i.48xlarge", - "dl2q.24xlarge" + "dl2q.24xlarge", + "mac2-m2.metal", + "i4i.12xlarge", + "i4i.24xlarge", + "c7i.metal-24xl", + "c7i.metal-48xl", + "m7i.metal-24xl", + "m7i.metal-48xl", + "r7i.metal-24xl", + "r7i.metal-48xl" ] }, "InstanceTypeHypervisor": { diff --git a/apis/finspace-2021-03-12.min.json b/apis/finspace-2021-03-12.min.json index 8f032a62ec..b5feb30aa6 100644 --- a/apis/finspace-2021-03-12.min.json +++ b/apis/finspace-2021-03-12.min.json @@ -127,8 +127,8 @@ "environmentId", "clusterName", "clusterType", - "capacityConfiguration", "releaseLabel", + "vpcConfiguration", "azMode" ], "members": { @@ -141,38 +141,44 @@ }, "clusterName": {}, "clusterType": {}, - "databases": { + "tickerplantLogConfiguration": { "shape": "S1a" }, + "databases": { + "shape": "S1d" + }, "cacheStorageConfigurations": { - "shape": "S1g" + "shape": "S1q" }, "autoScalingConfiguration": { - "shape": "S1j" + "shape": "S1t" }, "clusterDescription": {}, "capacityConfiguration": { - "shape": "S1p" + "shape": "S1z" }, "releaseLabel": {}, "vpcConfiguration": { - "shape": "S1s" + "shape": "S22" }, "initializationScript": {}, "commandLineArguments": { - "shape": "S20" + "shape": "S2a" }, "code": { - "shape": "S24" + "shape": "S2e" }, "executionRole": {}, "savedownStorageConfiguration": { - "shape": "S29" + "shape": "S2j" }, "azMode": {}, "availabilityZoneId": {}, "tags": { "shape": "S5" + }, + "scalingGroupConfiguration": { + "shape": "S2o" } } }, @@ -184,41 +190,50 @@ "statusReason": {}, "clusterName": {}, "clusterType": {}, - "databases": { + "tickerplantLogConfiguration": { "shape": "S1a" }, + "volumes": { + "shape": "S2w" + }, + "databases": { + "shape": "S1d" + }, "cacheStorageConfigurations": { - "shape": "S1g" + "shape": "S1q" }, "autoScalingConfiguration": { - "shape": "S1j" + "shape": "S1t" }, "clusterDescription": {}, "capacityConfiguration": { - "shape": "S1p" + "shape": "S1z" }, "releaseLabel": {}, "vpcConfiguration": { - "shape": "S1s" + "shape": "S22" }, "initializationScript": {}, "commandLineArguments": { - "shape": "S20" + "shape": "S2a" }, "code": { - "shape": "S24" + "shape": "S2e" }, "executionRole": {}, "lastModifiedTimestamp": { "type": "timestamp" }, "savedownStorageConfiguration": { - "shape": "S29" + "shape": "S2j" }, "azMode": {}, "availabilityZoneId": {}, "createdTimestamp": { "type": "timestamp" + }, + "scalingGroupConfiguration": { + "shape": "S2o" } } } @@ -265,6 +280,73 @@ } } }, + "CreateKxDataview": { + "http": { + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "databaseName", + "dataviewName", + "azMode", + "clientToken" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": {}, + "azMode": {}, + "availabilityZoneId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "autoUpdate": { + "type": "boolean" + }, + "description": {}, + "tags": { + "shape": "S5" + }, + "clientToken": { + "idempotencyToken": true + } + } + }, + "output": { + "type": "structure", + "members": { + "dataviewName": {}, + "databaseName": {}, + "environmentId": {}, + "azMode": {}, + "availabilityZoneId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "description": {}, + "autoUpdate": { + "type": "boolean" + }, + "createdTimestamp": { + "type": "timestamp" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "status": {} + } + } + }, "CreateKxEnvironment": { "http": { "requestUri": "/kx/environments" @@ -282,7 +364,9 @@ "tags": { "shape": "S5" }, - "clientToken": {} + "clientToken": { + "idempotencyToken": true + } } }, "output": { @@ -300,6 +384,52 @@ } } }, + "CreateKxScalingGroup": { + "http": { + "requestUri": "/kx/environments/{environmentId}/scalingGroups" + }, + "input": { + "type": "structure", + "required": [ + "clientToken", + "environmentId", + "scalingGroupName", + "hostType", + "availabilityZoneId" + ], + "members": { + "clientToken": { + "idempotencyToken": true + }, + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": {}, + "hostType": {}, + "availabilityZoneId": {}, + "tags": { + "shape": "S5" + } + } + }, + "output": { + "type": "structure", + "members": { + "environmentId": {}, + "scalingGroupName": {}, + "hostType": {}, + "availabilityZoneId": {}, + "status": {}, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "createdTimestamp": { + "type": "timestamp" + } + } + } + }, "CreateKxUser": { "http": { "requestUri": "/kx/environments/{environmentId}/users" @@ -321,7 +451,9 @@ "tags": { "shape": "S5" }, - "clientToken": {} + "clientToken": { + "idempotencyToken": true + } } }, "output": { @@ -334,6 +466,65 @@ } } }, + "CreateKxVolume": { + "http": { + "requestUri": "/kx/environments/{environmentId}/kxvolumes" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "volumeType", + "volumeName", + "azMode", + "availabilityZoneIds" + ], + "members": { + "clientToken": { + "idempotencyToken": true + }, + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "volumeType": {}, + "volumeName": {}, + "description": {}, + "nas1Configuration": { + "shape": "S3m" + }, + "azMode": {}, + "availabilityZoneIds": { + "shape": "S3p" + }, + "tags": { + "shape": "S5" + } + } + }, + "output": { + "type": "structure", + "members": { + "environmentId": {}, + "volumeName": {}, + "volumeType": {}, + "volumeArn": {}, + "nas1Configuration": { + "shape": "S3m" + }, + "status": {}, + "statusReason": {}, + "azMode": {}, + "description": {}, + "availabilityZoneIds": { + "shape": "S3p" + }, + "createdTimestamp": { + "type": "timestamp" + } + } + } + }, "DeleteEnvironment": { "http": { "method": "DELETE", @@ -423,6 +614,44 @@ "members": {} } }, + "DeleteKxDataview": { + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "databaseName", + "dataviewName", + "clientToken" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "location": "uri", + "locationName": "dataviewName" + }, + "clientToken": { + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "output": { + "type": "structure", + "members": {} + } + }, "DeleteKxEnvironment": { "http": { "method": "DELETE", @@ -437,6 +666,43 @@ "environmentId": { "location": "uri", "locationName": "environmentId" + }, + "clientToken": { + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "output": { + "type": "structure", + "members": {} + } + }, + "DeleteKxScalingGroup": { + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/scalingGroups/{scalingGroupName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "scalingGroupName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": { + "location": "uri", + "locationName": "scalingGroupName" + }, + "clientToken": { + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" } } }, @@ -464,6 +730,43 @@ "environmentId": { "location": "uri", "locationName": "environmentId" + }, + "clientToken": { + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "output": { + "type": "structure", + "members": {} + } + }, + "DeleteKxVolume": { + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "location": "uri", + "locationName": "volumeName" + }, + "clientToken": { + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" } } }, @@ -493,7 +796,7 @@ "type": "structure", "members": { "environment": { - "shape": "S36" + "shape": "S4c" } } }, @@ -581,41 +884,50 @@ "statusReason": {}, "clusterName": {}, "clusterType": {}, - "databases": { + "tickerplantLogConfiguration": { "shape": "S1a" }, + "volumes": { + "shape": "S2w" + }, + "databases": { + "shape": "S1d" + }, "cacheStorageConfigurations": { - "shape": "S1g" + "shape": "S1q" }, "autoScalingConfiguration": { - "shape": "S1j" + "shape": "S1t" }, "clusterDescription": {}, "capacityConfiguration": { - "shape": "S1p" + "shape": "S1z" }, "releaseLabel": {}, "vpcConfiguration": { - "shape": "S1s" + "shape": "S22" }, "initializationScript": {}, "commandLineArguments": { - "shape": "S20" + "shape": "S2a" }, "code": { - "shape": "S24" + "shape": "S2e" }, "executionRole": {}, "lastModifiedTimestamp": { "type": "timestamp" }, "savedownStorageConfiguration": { - "shape": "S29" + "shape": "S2j" }, "azMode": {}, "availabilityZoneId": {}, "createdTimestamp": { "type": "timestamp" + }, + "scalingGroupConfiguration": { + "shape": "S2o" } } } @@ -705,22 +1017,79 @@ } } }, - "GetKxEnvironment": { + "GetKxDataview": { "http": { "method": "GET", - "requestUri": "/kx/environments/{environmentId}" + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" }, "input": { "type": "structure", "required": [ - "environmentId" + "environmentId", + "databaseName", + "dataviewName" ], "members": { "environmentId": { "location": "uri", "locationName": "environmentId" - } - } + }, + "databaseName": { + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "location": "uri", + "locationName": "dataviewName" + } + } + }, + "output": { + "type": "structure", + "members": { + "databaseName": {}, + "dataviewName": {}, + "azMode": {}, + "availabilityZoneId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "activeVersions": { + "shape": "S4s" + }, + "description": {}, + "autoUpdate": { + "type": "boolean" + }, + "environmentId": {}, + "createdTimestamp": { + "type": "timestamp" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "status": {}, + "statusReason": {} + } + } + }, + "GetKxEnvironment": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + } + } }, "output": { "type": "structure", @@ -737,10 +1106,10 @@ "kmsKeyId": {}, "dedicatedServiceAccountId": {}, "transitGatewayConfiguration": { - "shape": "S3p" + "shape": "S51" }, "customDNSConfiguration": { - "shape": "S42" + "shape": "S5e" }, "creationTimestamp": { "type": "timestamp" @@ -749,12 +1118,55 @@ "type": "timestamp" }, "availabilityZoneIds": { - "shape": "S46" + "shape": "S3p" }, "certificateAuthorityArn": {} } } }, + "GetKxScalingGroup": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/scalingGroups/{scalingGroupName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "scalingGroupName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": { + "location": "uri", + "locationName": "scalingGroupName" + } + } + }, + "output": { + "type": "structure", + "members": { + "scalingGroupName": {}, + "scalingGroupArn": {}, + "hostType": {}, + "clusters": { + "shape": "S5m" + }, + "availabilityZoneId": {}, + "status": {}, + "statusReason": {}, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "createdTimestamp": { + "type": "timestamp" + } + } + } + }, "GetKxUser": { "http": { "method": "GET", @@ -787,6 +1199,57 @@ } } }, + "GetKxVolume": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "location": "uri", + "locationName": "volumeName" + } + } + }, + "output": { + "type": "structure", + "members": { + "environmentId": {}, + "volumeName": {}, + "volumeType": {}, + "volumeArn": {}, + "nas1Configuration": { + "shape": "S3m" + }, + "status": {}, + "statusReason": {}, + "createdTimestamp": { + "type": "timestamp" + }, + "description": {}, + "azMode": {}, + "availabilityZoneIds": { + "shape": "S3p" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "attachedClusters": { + "shape": "S5r" + } + } + } + }, "ListEnvironments": { "http": { "method": "GET", @@ -812,7 +1275,7 @@ "environments": { "type": "list", "member": { - "shape": "S36" + "shape": "S4c" } }, "nextToken": {} @@ -973,6 +1436,9 @@ "clusterType": {}, "clusterDescription": {}, "releaseLabel": {}, + "volumes": { + "shape": "S2w" + }, "initializationScript": {}, "executionRole": {}, "azMode": {}, @@ -1038,14 +1504,207 @@ } } }, + "ListKxDataviews": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "databaseName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "location": "uri", + "locationName": "databaseName" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "type": "integer" + } + } + }, + "output": { + "type": "structure", + "members": { + "kxDataviews": { + "type": "list", + "member": { + "type": "structure", + "members": { + "environmentId": {}, + "databaseName": {}, + "dataviewName": {}, + "azMode": {}, + "availabilityZoneId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "activeVersions": { + "shape": "S4s" + }, + "status": {}, + "description": {}, + "autoUpdate": { + "type": "boolean" + }, + "createdTimestamp": { + "type": "timestamp" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "statusReason": {} + } + } + }, + "nextToken": {} + } + } + }, "ListKxEnvironments": { "http": { "method": "GET", - "requestUri": "/kx/environments" + "requestUri": "/kx/environments" + }, + "input": { + "type": "structure", + "members": { + "nextToken": { + "location": "querystring", + "locationName": "nextToken" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "type": "integer" + } + } + }, + "output": { + "type": "structure", + "members": { + "environments": { + "type": "list", + "member": { + "type": "structure", + "members": { + "name": {}, + "environmentId": {}, + "awsAccountId": {}, + "status": {}, + "tgwStatus": {}, + "dnsStatus": {}, + "errorMessage": {}, + "description": {}, + "environmentArn": {}, + "kmsKeyId": {}, + "dedicatedServiceAccountId": {}, + "transitGatewayConfiguration": { + "shape": "S51" + }, + "customDNSConfiguration": { + "shape": "S5e" + }, + "creationTimestamp": { + "type": "timestamp" + }, + "updateTimestamp": { + "type": "timestamp" + }, + "availabilityZoneIds": { + "shape": "S3p" + }, + "certificateAuthorityArn": {} + } + } + }, + "nextToken": {} + } + } + }, + "ListKxScalingGroups": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/scalingGroups" + }, + "input": { + "type": "structure", + "required": [ + "environmentId" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "type": "integer" + }, + "nextToken": { + "location": "querystring", + "locationName": "nextToken" + } + } + }, + "output": { + "type": "structure", + "members": { + "scalingGroups": { + "type": "list", + "member": { + "type": "structure", + "members": { + "scalingGroupName": {}, + "hostType": {}, + "clusters": { + "shape": "S5m" + }, + "availabilityZoneId": {}, + "status": {}, + "statusReason": {}, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "createdTimestamp": { + "type": "timestamp" + } + } + } + }, + "nextToken": {} + } + } + }, + "ListKxUsers": { + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/users" }, "input": { "type": "structure", + "required": [ + "environmentId" + ], "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, "nextToken": { "location": "querystring", "locationName": "nextToken" @@ -1060,38 +1719,20 @@ "output": { "type": "structure", "members": { - "environments": { + "users": { "type": "list", "member": { "type": "structure", "members": { - "name": {}, - "environmentId": {}, - "awsAccountId": {}, - "status": {}, - "tgwStatus": {}, - "dnsStatus": {}, - "errorMessage": {}, - "description": {}, - "environmentArn": {}, - "kmsKeyId": {}, - "dedicatedServiceAccountId": {}, - "transitGatewayConfiguration": { - "shape": "S3p" - }, - "customDNSConfiguration": { - "shape": "S42" - }, - "creationTimestamp": { + "userArn": {}, + "userName": {}, + "iamRole": {}, + "createTimestamp": { "type": "timestamp" }, "updateTimestamp": { "type": "timestamp" - }, - "availabilityZoneIds": { - "shape": "S46" - }, - "certificateAuthorityArn": {} + } } } }, @@ -1099,10 +1740,10 @@ } } }, - "ListKxUsers": { + "ListKxVolumes": { "http": { "method": "GET", - "requestUri": "/kx/environments/{environmentId}/users" + "requestUri": "/kx/environments/{environmentId}/kxvolumes" }, "input": { "type": "structure", @@ -1114,32 +1755,42 @@ "location": "uri", "locationName": "environmentId" }, + "maxResults": { + "location": "querystring", + "locationName": "maxResults", + "type": "integer" + }, "nextToken": { "location": "querystring", "locationName": "nextToken" }, - "maxResults": { + "volumeType": { "location": "querystring", - "locationName": "maxResults", - "type": "integer" + "locationName": "volumeType" } } }, "output": { "type": "structure", "members": { - "users": { + "kxVolumeSummaries": { "type": "list", "member": { "type": "structure", "members": { - "userArn": {}, - "userName": {}, - "iamRole": {}, - "createTimestamp": { + "volumeName": {}, + "volumeType": {}, + "status": {}, + "description": {}, + "statusReason": {}, + "azMode": {}, + "availabilityZoneIds": { + "shape": "S3p" + }, + "createdTimestamp": { "type": "timestamp" }, - "updateTimestamp": { + "lastModifiedTimestamp": { "type": "timestamp" } } @@ -1256,7 +1907,7 @@ "type": "structure", "members": { "environment": { - "shape": "S36" + "shape": "S4c" } } }, @@ -1288,11 +1939,11 @@ "idempotencyToken": true }, "code": { - "shape": "S24" + "shape": "S2e" }, "initializationScript": {}, "commandLineArguments": { - "shape": "S20" + "shape": "S2a" }, "deploymentConfiguration": { "type": "structure", @@ -1335,7 +1986,7 @@ "idempotencyToken": true }, "databases": { - "shape": "S1a" + "shape": "S1d" }, "deploymentConfiguration": { "type": "structure", @@ -1392,6 +2043,71 @@ } } }, + "UpdateKxDataview": { + "http": { + "method": "PUT", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "databaseName", + "dataviewName", + "clientToken" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "location": "uri", + "locationName": "dataviewName" + }, + "description": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "clientToken": { + "idempotencyToken": true + } + } + }, + "output": { + "type": "structure", + "members": { + "environmentId": {}, + "databaseName": {}, + "dataviewName": {}, + "azMode": {}, + "availabilityZoneId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "activeVersions": { + "shape": "S4s" + }, + "status": {}, + "autoUpdate": { + "type": "boolean" + }, + "description": {}, + "createdTimestamp": { + "type": "timestamp" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + } + } + } + }, "UpdateKxEnvironment": { "http": { "method": "PUT", @@ -1409,7 +2125,9 @@ }, "name": {}, "description": {}, - "clientToken": {} + "clientToken": { + "idempotencyToken": true + } } }, "output": { @@ -1427,10 +2145,10 @@ "kmsKeyId": {}, "dedicatedServiceAccountId": {}, "transitGatewayConfiguration": { - "shape": "S3p" + "shape": "S51" }, "customDNSConfiguration": { - "shape": "S42" + "shape": "S5e" }, "creationTimestamp": { "type": "timestamp" @@ -1439,7 +2157,7 @@ "type": "timestamp" }, "availabilityZoneIds": { - "shape": "S46" + "shape": "S3p" } } } @@ -1460,12 +2178,14 @@ "locationName": "environmentId" }, "transitGatewayConfiguration": { - "shape": "S3p" + "shape": "S51" }, "customDNSConfiguration": { - "shape": "S42" + "shape": "S5e" }, - "clientToken": {} + "clientToken": { + "idempotencyToken": true + } } }, "output": { @@ -1483,10 +2203,10 @@ "kmsKeyId": {}, "dedicatedServiceAccountId": {}, "transitGatewayConfiguration": { - "shape": "S3p" + "shape": "S51" }, "customDNSConfiguration": { - "shape": "S42" + "shape": "S5e" }, "creationTimestamp": { "type": "timestamp" @@ -1495,7 +2215,7 @@ "type": "timestamp" }, "availabilityZoneIds": { - "shape": "S46" + "shape": "S3p" } } } @@ -1522,7 +2242,9 @@ "locationName": "userName" }, "iamRole": {}, - "clientToken": {} + "clientToken": { + "idempotencyToken": true + } } }, "output": { @@ -1534,6 +2256,64 @@ "iamRole": {} } } + }, + "UpdateKxVolume": { + "http": { + "method": "PATCH", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "location": "uri", + "locationName": "volumeName" + }, + "description": {}, + "clientToken": { + "idempotencyToken": true + }, + "nas1Configuration": { + "shape": "S3m" + } + } + }, + "output": { + "type": "structure", + "members": { + "environmentId": {}, + "volumeName": {}, + "volumeType": {}, + "volumeArn": {}, + "nas1Configuration": { + "shape": "S3m" + }, + "status": {}, + "description": {}, + "statusReason": {}, + "createdTimestamp": { + "type": "timestamp" + }, + "azMode": {}, + "availabilityZoneIds": { + "shape": "S3p" + }, + "lastModifiedTimestamp": { + "type": "timestamp" + }, + "attachedClusters": { + "shape": "S5r" + } + } + } } }, "shapes": { @@ -1580,6 +2360,15 @@ } }, "S1a": { + "type": "structure", + "members": { + "tickerplantLogVolumes": { + "type": "list", + "member": {} + } + } + }, + "S1d": { "type": "list", "member": { "type": "structure", @@ -1601,15 +2390,45 @@ "dbPaths": { "type": "list", "member": {} - } + }, + "dataviewName": {} + } + } + }, + "changesetId": {}, + "dataviewName": {}, + "dataviewConfiguration": { + "type": "structure", + "members": { + "dataviewName": {}, + "dataviewVersionId": {}, + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" } } + } + } + } + }, + "S1m": { + "type": "list", + "member": { + "type": "structure", + "required": [ + "dbPaths", + "volumeName" + ], + "members": { + "dbPaths": { + "type": "list", + "member": {} }, - "changesetId": {} + "volumeName": {} } } }, - "S1g": { + "S1q": { "type": "list", "member": { "type": "structure", @@ -1625,7 +2444,7 @@ } } }, - "S1j": { + "S1t": { "type": "structure", "members": { "minNodeCount": { @@ -1646,7 +2465,7 @@ } } }, - "S1p": { + "S1z": { "type": "structure", "members": { "nodeType": {}, @@ -1655,7 +2474,7 @@ } } }, - "S1s": { + "S22": { "type": "structure", "members": { "vpcId": {}, @@ -1670,7 +2489,7 @@ "ipAddressType": {} } }, - "S20": { + "S2a": { "type": "list", "member": { "type": "structure", @@ -1680,7 +2499,7 @@ } } }, - "S24": { + "S2e": { "type": "structure", "members": { "s3Bucket": {}, @@ -1688,12 +2507,51 @@ "s3ObjectVersion": {} } }, - "S29": { + "S2j": { + "type": "structure", + "members": { + "type": {}, + "size": { + "type": "integer" + }, + "volumeName": {} + } + }, + "S2o": { "type": "structure", "required": [ - "type", - "size" + "scalingGroupName", + "memoryReservation", + "nodeCount" ], + "members": { + "scalingGroupName": {}, + "memoryLimit": { + "type": "integer" + }, + "memoryReservation": { + "type": "integer" + }, + "nodeCount": { + "type": "integer" + }, + "cpu": { + "type": "double" + } + } + }, + "S2w": { + "type": "list", + "member": { + "type": "structure", + "members": { + "volumeName": {}, + "volumeType": {} + } + } + }, + "S3m": { + "type": "structure", "members": { "type": {}, "size": { @@ -1701,7 +2559,11 @@ } } }, - "S36": { + "S3p": { + "type": "list", + "member": {} + }, + "S4c": { "type": "structure", "members": { "name": {}, @@ -1720,7 +2582,27 @@ } } }, - "S3p": { + "S4s": { + "type": "list", + "member": { + "type": "structure", + "members": { + "changesetId": {}, + "segmentConfigurations": { + "shape": "S1m" + }, + "attachedClusters": { + "type": "list", + "member": {} + }, + "createdTimestamp": { + "type": "timestamp" + }, + "versionId": {} + } + } + }, + "S51": { "type": "structure", "required": [ "transitGatewayID", @@ -1781,7 +2663,7 @@ } } }, - "S42": { + "S5e": { "type": "list", "member": { "type": "structure", @@ -1795,9 +2677,20 @@ } } }, - "S46": { + "S5m": { "type": "list", "member": {} + }, + "S5r": { + "type": "list", + "member": { + "type": "structure", + "members": { + "clusterName": {}, + "clusterType": {}, + "clusterStatus": {} + } + } } } } \ No newline at end of file diff --git a/apis/finspace-2021-03-12.normal.json b/apis/finspace-2021-03-12.normal.json index 1c901fb5c3..136d70ca72 100644 --- a/apis/finspace-2021-03-12.normal.json +++ b/apis/finspace-2021-03-12.normal.json @@ -166,6 +166,46 @@ ], "documentation": "
Creates a new kdb database in the environment.
" }, + "CreateKxDataview": { + "name": "CreateKxDataview", + "http": { + "method": "POST", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews" + }, + "input": { + "shape": "CreateKxDataviewRequest" + }, + "output": { + "shape": "CreateKxDataviewResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ResourceAlreadyExistsException" + } + ], + "documentation": "Creates a snapshot of kdb database with tiered storage capabilities and a pre-warmed cache, ready for mounting on kdb clusters. Dataviews are only available for clusters running on a scaling group. They are not supported on dedicated clusters.
" + }, "CreateKxEnvironment": { "name": "CreateKxEnvironment", "http": { @@ -203,6 +243,46 @@ ], "documentation": "Creates a managed kdb environment for the account.
" }, + "CreateKxScalingGroup": { + "name": "CreateKxScalingGroup", + "http": { + "method": "POST", + "requestUri": "/kx/environments/{environmentId}/scalingGroups" + }, + "input": { + "shape": "CreateKxScalingGroupRequest" + }, + "output": { + "shape": "CreateKxScalingGroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "AccessDeniedException" + } + ], + "documentation": "Creates a new scaling group.
" + }, "CreateKxUser": { "name": "CreateKxUser", "http": { @@ -243,6 +323,49 @@ ], "documentation": "Creates a user in FinSpace kdb environment with an associated IAM role.
" }, + "CreateKxVolume": { + "name": "CreateKxVolume", + "http": { + "method": "POST", + "requestUri": "/kx/environments/{environmentId}/kxvolumes" + }, + "input": { + "shape": "CreateKxVolumeRequest" + }, + "output": { + "shape": "CreateKxVolumeResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ResourceAlreadyExistsException" + }, + { + "shape": "AccessDeniedException" + } + ], + "documentation": "Creates a new volume with a specific amount of throughput and storage capacity.
" + }, "DeleteEnvironment": { "name": "DeleteEnvironment", "http": { @@ -347,6 +470,40 @@ ], "documentation": "Deletes the specified database and all of its associated data. This action is irreversible. You must copy any data out of the database before deleting it if the data is to be retained.
" }, + "DeleteKxDataview": { + "name": "DeleteKxDataview", + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" + }, + "input": { + "shape": "DeleteKxDataviewRequest" + }, + "output": { + "shape": "DeleteKxDataviewResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + } + ], + "documentation": "Deletes the specified dataview. Before deleting a dataview, make sure that it is not in use by any cluster.
" + }, "DeleteKxEnvironment": { "name": "DeleteKxEnvironment", "http": { @@ -374,10 +531,50 @@ }, { "shape": "ValidationException" + }, + { + "shape": "ConflictException" } ], "documentation": "Deletes the kdb environment. This action is irreversible. Deleting a kdb environment will remove all the associated data and any services running in it.
" }, + "DeleteKxScalingGroup": { + "name": "DeleteKxScalingGroup", + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/scalingGroups/{scalingGroupName}" + }, + "input": { + "shape": "DeleteKxScalingGroupRequest" + }, + "output": { + "shape": "DeleteKxScalingGroupResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Deletes the specified scaling group. This action is irreversible. You cannot delete a scaling group until all the clusters running on it have been deleted.
" + }, "DeleteKxUser": { "name": "DeleteKxUser", "http": { @@ -405,10 +602,50 @@ }, { "shape": "ValidationException" + }, + { + "shape": "ConflictException" } ], "documentation": "Deletes a user in the specified kdb environment.
" }, + "DeleteKxVolume": { + "name": "DeleteKxVolume", + "http": { + "method": "DELETE", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "shape": "DeleteKxVolumeRequest" + }, + "output": { + "shape": "DeleteKxVolumeResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Deletes a volume. You can only delete a volume if it's not attached to a cluster or a dataview. When a volume is deleted, any data on the volume is lost. This action is irreversible.
" + }, "GetEnvironment": { "name": "GetEnvironment", "http": { @@ -569,6 +806,37 @@ ], "documentation": "Returns database information for the specified environment ID.
" }, + "GetKxDataview": { + "name": "GetKxDataview", + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" + }, + "input": { + "shape": "GetKxDataviewRequest" + }, + "output": { + "shape": "GetKxDataviewResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Retrieves details of the dataview.
" + }, "GetKxEnvironment": { "name": "GetKxEnvironment", "http": { @@ -593,26 +861,32 @@ }, { "shape": "AccessDeniedException" + }, + { + "shape": "ConflictException" } ], "documentation": "Retrieves all the information for the specified kdb environment.
" }, - "GetKxUser": { - "name": "GetKxUser", + "GetKxScalingGroup": { + "name": "GetKxScalingGroup", "http": { "method": "GET", - "requestUri": "/kx/environments/{environmentId}/users/{userName}" + "requestUri": "/kx/environments/{environmentId}/scalingGroups/{scalingGroupName}" }, "input": { - "shape": "GetKxUserRequest" + "shape": "GetKxScalingGroupRequest" }, "output": { - "shape": "GetKxUserResponse" + "shape": "GetKxScalingGroupResponse" }, "errors": [ { "shape": "InternalServerException" }, + { + "shape": "ValidationException" + }, { "shape": "ThrottlingException" }, @@ -620,32 +894,106 @@ "shape": "AccessDeniedException" }, { - "shape": "ResourceNotFoundException" + "shape": "LimitExceededException" }, { - "shape": "ValidationException" + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" } ], - "documentation": "Retrieves information about the specified kdb user.
" + "documentation": "Retrieves details of a scaling group.
" }, - "ListEnvironments": { - "name": "ListEnvironments", + "GetKxUser": { + "name": "GetKxUser", "http": { "method": "GET", - "requestUri": "/environment" + "requestUri": "/kx/environments/{environmentId}/users/{userName}" }, "input": { - "shape": "ListEnvironmentsRequest" + "shape": "GetKxUserRequest" }, "output": { - "shape": "ListEnvironmentsResponse" + "shape": "GetKxUserResponse" }, "errors": [ { "shape": "InternalServerException" }, { - "shape": "ValidationException" + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + } + ], + "documentation": "Retrieves information about the specified kdb user.
" + }, + "GetKxVolume": { + "name": "GetKxVolume", + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "shape": "GetKxVolumeRequest" + }, + "output": { + "shape": "GetKxVolumeResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Retrieves the information about the volume.
" + }, + "ListEnvironments": { + "name": "ListEnvironments", + "http": { + "method": "GET", + "requestUri": "/environment" + }, + "input": { + "shape": "ListEnvironmentsRequest" + }, + "output": { + "shape": "ListEnvironmentsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "AccessDeniedException" } ], "documentation": "A list of all of your FinSpace environments.
", @@ -785,6 +1133,37 @@ ], "documentation": "Returns a list of all the databases in the kdb environment.
" }, + "ListKxDataviews": { + "name": "ListKxDataviews", + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews" + }, + "input": { + "shape": "ListKxDataviewsRequest" + }, + "output": { + "shape": "ListKxDataviewsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Returns a list of all the dataviews in the database.
" + }, "ListKxEnvironments": { "name": "ListKxEnvironments", "http": { @@ -801,12 +1180,52 @@ { "shape": "InternalServerException" }, + { + "shape": "AccessDeniedException" + }, { "shape": "ValidationException" } ], "documentation": "Returns a list of kdb environments created in an account.
" }, + "ListKxScalingGroups": { + "name": "ListKxScalingGroups", + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/scalingGroups" + }, + "input": { + "shape": "ListKxScalingGroupsRequest" + }, + "output": { + "shape": "ListKxScalingGroupsResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Returns a list of scaling groups in a kdb environment.
" + }, "ListKxUsers": { "name": "ListKxUsers", "http": { @@ -838,6 +1257,43 @@ ], "documentation": "Lists all the users in a kdb environment.
" }, + "ListKxVolumes": { + "name": "ListKxVolumes", + "http": { + "method": "GET", + "requestUri": "/kx/environments/{environmentId}/kxvolumes" + }, + "input": { + "shape": "ListKxVolumesRequest" + }, + "output": { + "shape": "ListKxVolumesResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Lists all the volumes in a kdb environment.
" + }, "ListTagsForResource": { "name": "ListTagsForResource", "http": { @@ -1054,6 +1510,43 @@ ], "documentation": "Updates information for the given kdb database.
" }, + "UpdateKxDataview": { + "name": "UpdateKxDataview", + "http": { + "method": "PUT", + "requestUri": "/kx/environments/{environmentId}/databases/{databaseName}/dataviews/{dataviewName}" + }, + "input": { + "shape": "UpdateKxDataviewRequest" + }, + "output": { + "shape": "UpdateKxDataviewResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceAlreadyExistsException" + } + ], + "documentation": "Updates the specified dataview. The dataviews get automatically updated when any new changesets are ingested. Each update of the dataview creates a new version, including changeset details and cache configurations
" + }, "UpdateKxEnvironment": { "name": "UpdateKxEnvironment", "http": { @@ -1158,9 +1651,52 @@ } ], "documentation": "Updates the user details. You can only update the IAM role associated with a user.
" + }, + "UpdateKxVolume": { + "name": "UpdateKxVolume", + "http": { + "method": "PATCH", + "requestUri": "/kx/environments/{environmentId}/kxvolumes/{volumeName}" + }, + "input": { + "shape": "UpdateKxVolumeRequest" + }, + "output": { + "shape": "UpdateKxVolumeResponse" + }, + "errors": [ + { + "shape": "InternalServerException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "LimitExceededException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "documentation": "Updates the throughput or capacity of a volume. During the update process, the filesystem might be unavailable for a few minutes. You can retry any operations after the update is complete.
" } }, "shapes": { + "AttachedClusterList": { + "type": "list", + "member": { + "shape": "KxClusterName" + } + }, "AttributeMap": { "type": "map", "key": { @@ -1301,6 +1837,10 @@ "min": 1, "pattern": "^[a-zA-Z0-9-]+$" }, + "ClusterNodeCount": { + "type": "integer", + "min": 1 + }, "CodeConfiguration": { "type": "structure", "members": { @@ -1324,6 +1864,10 @@ "max": 100000, "min": 0 }, + "CpuCount": { + "type": "double", + "min": 0.1 + }, "CreateEnvironmentRequest": { "type": "structure", "required": [ @@ -1456,8 +2000,8 @@ "environmentId", "clusterName", "clusterType", - "capacityConfiguration", "releaseLabel", + "vpcConfiguration", "azMode" ], "members": { @@ -1478,7 +2022,11 @@ }, "clusterType": { "shape": "KxClusterType", - "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Tickerplant – A tickerplant cluster allows you to subscribe to feed handlers based on IAM permissions. It can publish to RDBs, other Tickerplants, and real-time subscribers (RTS). Tickerplants can persist messages to log, which is readable by any RDB environment. It supports only single-node that is only one kdb process.
A configuration to store Tickerplant logs. It consists of a list of volumes that will be mounted to your cluster. For the cluster type Tickerplant
, the location of the TP volume on the cluster will be available by using the global variable .aws.tp_log_path
.
A list of key-value pairs to label the cluster. You can add up to 50 tags to a cluster.
" + }, + "scalingGroupConfiguration": { + "shape": "KxScalingGroupConfiguration", + "documentation": "The structure that stores the configuration details of a scaling group.
" } } }, @@ -1563,7 +2115,14 @@ }, "clusterType": { "shape": "KxClusterType", - "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Tickerplant – A tickerplant cluster allows you to subscribe to feed handlers based on IAM permissions. It can publish to RDBs, other Tickerplants, and real-time subscribers (RTS). Tickerplants can persist messages to log, which is readable by any RDB environment. It supports only single-node that is only one kdb process.
A list of volumes mounted on the cluster.
" }, "databases": { "shape": "KxDatabaseConfigurations", @@ -1628,6 +2187,10 @@ "createdTimestamp": { "shape": "Timestamp", "documentation": "The timestamp at which the cluster was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "scalingGroupConfiguration": { + "shape": "KxScalingGroupConfiguration", + "documentation": "The structure that stores the configuration details of a scaling group.
" } } }, @@ -1693,32 +2256,147 @@ } } }, - "CreateKxEnvironmentRequest": { + "CreateKxDataviewRequest": { "type": "structure", "required": [ - "name", - "kmsKeyId" + "environmentId", + "databaseName", + "dataviewName", + "azMode", + "clientToken" ], "members": { - "name": { - "shape": "KxEnvironmentName", - "documentation": "The name of the kdb environment that you want to create.
" + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, where you want to create the dataview.
", + "location": "uri", + "locationName": "environmentId" }, - "description": { - "shape": "Description", - "documentation": "A description for the kdb environment.
" + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database where you want to create a dataview.
", + "location": "uri", + "locationName": "databaseName" }, - "kmsKeyId": { - "shape": "KmsKeyARN", - "documentation": "The KMS key ID to encrypt your data in the FinSpace environment.
" + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "A unique identifier for the dataview.
" }, - "tags": { - "shape": "TagMap", + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. This can be one of the following
SINGLE
– Assigns one availability zone per cluster.
MULTI
– Assigns all the availability zones per cluster.
The identifier of the availability zones.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier of the changeset that you want to use to ingest data.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "autoUpdate": { + "shape": "booleanValue", + "documentation": "The option to specify whether you want to apply all the future additions and corrections automatically to the dataview, when you ingest new changesets. The default value is false.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the dataview.
" + }, + "tags": { + "shape": "TagMap", + "documentation": "A list of key-value pairs to label the dataview. You can add up to 50 tags to a dataview.
" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true + } + } + }, + "CreateKxDataviewResponse": { + "type": "structure", + "members": { + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "A unique identifier for the dataview.
" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database where you want to create a dataview.
" + }, + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, where you want to create the dataview.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. This can be one of the following
SINGLE
– Assigns one availability zone per cluster.
MULTI
– Assigns all the availability zones per cluster.
The identifier of the availability zones.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier for the changeset.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the dataview.
" + }, + "autoUpdate": { + "shape": "booleanValue", + "documentation": "The option to select whether you want to apply all the future additions and corrections automatically to the dataview when you ingest new changesets. The default value is false.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the dataview was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "status": { + "shape": "KxDataviewStatus", + "documentation": "The status of dataview creation.
CREATING
– The dataview creation is in progress.
UPDATING
– The dataview is in the process of being updated.
ACTIVE
– The dataview is active.
The name of the kdb environment that you want to create.
" + }, + "description": { + "shape": "Description", + "documentation": "A description for the kdb environment.
" + }, + "kmsKeyId": { + "shape": "KmsKeyARN", + "documentation": "The KMS key ID to encrypt your data in the FinSpace environment.
" + }, + "tags": { + "shape": "TagMap", "documentation": "A list of key-value pairs to label the kdb environment. You can add up to 50 tags to your kdb environment.
" }, "clientToken": { "shape": "ClientToken", - "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
" + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true } } }, @@ -1755,6 +2433,78 @@ } } }, + "CreateKxScalingGroupRequest": { + "type": "structure", + "required": [ + "clientToken", + "environmentId", + "scalingGroupName", + "hostType", + "availabilityZoneId" + ], + "members": { + "clientToken": { + "shape": "ClientToken", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true + }, + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, where you want to create the scaling group.
", + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
" + }, + "hostType": { + "shape": "KxHostType", + "documentation": "The memory and CPU capabilities of the scaling group host on which FinSpace Managed kdb clusters will be placed.
" + }, + "availabilityZoneId": { + "shape": "AvailabilityZoneId", + "documentation": "The identifier of the availability zones.
" + }, + "tags": { + "shape": "TagMap", + "documentation": "A list of key-value pairs to label the scaling group. You can add up to 50 tags to a scaling group.
" + } + } + }, + "CreateKxScalingGroupResponse": { + "type": "structure", + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, where you create the scaling group.
" + }, + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
" + }, + "hostType": { + "shape": "KxHostType", + "documentation": "The memory and CPU capabilities of the scaling group host on which FinSpace Managed kdb clusters will be placed.
" + }, + "availabilityZoneId": { + "shape": "AvailabilityZoneId", + "documentation": "The identifier of the availability zones.
" + }, + "status": { + "shape": "KxScalingGroupStatus", + "documentation": "The status of scaling group.
CREATING – The scaling group creation is in progress.
CREATE_FAILED – The scaling group creation has failed.
ACTIVE – The scaling group is active.
UPDATING – The scaling group is in the process of being updated.
UPDATE_FAILED – The update action failed.
DELETING – The scaling group is in the process of being deleted.
DELETE_FAILED – The system failed to delete the scaling group.
DELETED – The scaling group is successfully deleted.
The last time that the scaling group was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the scaling group was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + } + }, "CreateKxUserRequest": { "type": "structure", "required": [ @@ -1783,7 +2533,8 @@ }, "clientToken": { "shape": "ClientToken", - "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
" + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true } } }, @@ -1808,6 +2559,106 @@ } } }, + "CreateKxVolumeRequest": { + "type": "structure", + "required": [ + "environmentId", + "volumeType", + "volumeName", + "azMode", + "availabilityZoneIds" + ], + "members": { + "clientToken": { + "shape": "ClientToken", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true + }, + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
", + "location": "uri", + "locationName": "environmentId" + }, + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type. When you select NAS_1
volume type, you must also provide nas1Configuration
.
A unique identifier for the volume.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the volume.
" + }, + "nas1Configuration": { + "shape": "KxNAS1Configuration", + "documentation": " Specifies the configuration for the Network attached storage (NAS_1) file system volume. This parameter is required when you choose volumeType
as NAS_1.
The number of availability zones you want to assign per cluster. Currently, FinSpace only support SINGLE
for volumes.
The identifier of the availability zones.
" + }, + "tags": { + "shape": "TagMap", + "documentation": "A list of key-value pairs to label the volume. You can add up to 50 tags to a volume.
" + } + } + }, + "CreateKxVolumeResponse": { + "type": "structure", + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume.
" + }, + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
The ARN identifier of the volume.
" + }, + "nas1Configuration": { + "shape": "KxNAS1Configuration", + "documentation": "Specifies the configuration for the Network attached storage (NAS_1) file system volume.
" + }, + "status": { + "shape": "KxVolumeStatus", + "documentation": "The status of volume creation.
CREATING – The volume creation is in progress.
CREATE_FAILED – The volume creation has failed.
ACTIVE – The volume is active.
UPDATING – The volume is in the process of being updated.
UPDATE_FAILED – The update action failed.
UPDATED – The volume is successfully updated.
DELETING – The volume is in the process of being deleted.
DELETE_FAILED – The system failed to delete the volume.
DELETED – The volume is successfully deleted.
The error message when a failed state occurs.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. Currently, FinSpace only support SINGLE
for volumes.
A description of the volume.
" + }, + "availabilityZoneIds": { + "shape": "AvailabilityZoneIds", + "documentation": "The identifier of the availability zones.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the volume was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + } + }, "CustomDNSConfiguration": { "type": "list", "member": { @@ -1858,7 +2709,7 @@ "type": "string", "max": 1025, "min": 1, - "pattern": "^\\/([^\\/]+\\/){0,2}[^\\/]*$" + "pattern": "^(\\*)*[\\/\\?\\*]([^\\/]+\\/){0,2}[^\\/]*$" }, "DbPaths": { "type": "list", @@ -1949,6 +2800,46 @@ "type": "structure", "members": {} }, + "DeleteKxDataviewRequest": { + "type": "structure", + "required": [ + "environmentId", + "databaseName", + "dataviewName", + "clientToken" + ], + "members": { + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, from where you want to delete the dataview.
", + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database whose dataview you want to delete.
", + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The name of the dataview that you want to delete.
", + "location": "uri", + "locationName": "dataviewName" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "DeleteKxDataviewResponse": { + "type": "structure", + "members": {} + }, "DeleteKxEnvironmentRequest": { "type": "structure", "required": [ @@ -1960,6 +2851,13 @@ "documentation": "A unique identifier for the kdb environment.
", "location": "uri", "locationName": "environmentId" + }, + "clientToken": { + "shape": "ClientToken", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" } } }, @@ -1967,6 +2865,38 @@ "type": "structure", "members": {} }, + "DeleteKxScalingGroupRequest": { + "type": "structure", + "required": [ + "environmentId", + "scalingGroupName" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, from where you want to delete the dataview.
", + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
", + "location": "uri", + "locationName": "scalingGroupName" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "DeleteKxScalingGroupResponse": { + "type": "structure", + "members": {} + }, "DeleteKxUserRequest": { "type": "structure", "required": [ @@ -1985,10 +2915,49 @@ "documentation": "A unique identifier for the kdb environment.
", "location": "uri", "locationName": "environmentId" - } - } - }, - "DeleteKxUserResponse": { + }, + "clientToken": { + "shape": "ClientToken", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "DeleteKxUserResponse": { + "type": "structure", + "members": {} + }, + "DeleteKxVolumeRequest": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
", + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "The name of the volume that you want to delete.
", + "location": "uri", + "locationName": "volumeName" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true, + "location": "querystring", + "locationName": "clientToken" + } + } + }, + "DeleteKxVolumeResponse": { "type": "structure", "members": {} }, @@ -2203,7 +3172,7 @@ "type": "string", "max": 2048, "min": 20, - "pattern": "^arn:aws:finspace:[A-Za-z0-9_/.-]{0,63}:\\d+:(environment|kxEnvironment)/[0-9A-Za-z_-]{1,128}(/(kxDatabase|kxCluster|kxUser)/[a-zA-Z0-9_-]{1,255})?$" + "pattern": "^arn:aws:finspace:[A-Za-z0-9_/.-]{0,63}:\\d+:(environment|kxEnvironment)/[0-9A-Za-z_-]{1,128}(/(kxCluster|kxUser|kxVolume|kxScalingGroup)/[a-zA-Z0-9_-]{1,255}|/(kxDatabase/[a-zA-Z0-9_-]{1,255}(/kxDataview/[a-zA-Z0-9_-]{1,255})?))?$" }, "GetEnvironmentRequest": { "type": "structure", @@ -2335,7 +3304,14 @@ }, "clusterType": { "shape": "KxClusterType", - "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Tickerplant – A tickerplant cluster allows you to subscribe to feed handlers based on IAM permissions. It can publish to RDBs, other Tickerplants, and real-time subscribers (RTS). Tickerplants can persist messages to log, which is readable by any RDB environment. It supports only single-node that is only one kdb process.
A list of volumes attached to the cluster.
" }, "databases": { "shape": "KxDatabaseConfigurations", @@ -2400,6 +3376,9 @@ "createdTimestamp": { "shape": "Timestamp", "documentation": "The timestamp at which the cluster was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "scalingGroupConfiguration": { + "shape": "KxScalingGroupConfiguration" } } }, @@ -2506,6 +3485,95 @@ } } }, + "GetKxDataviewRequest": { + "type": "structure", + "required": [ + "environmentId", + "databaseName", + "dataviewName" + ], + "members": { + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, from where you want to retrieve the dataview details.
", + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database where you created the dataview.
", + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "A unique identifier for the dataview.
", + "location": "uri", + "locationName": "dataviewName" + } + } + }, + "GetKxDataviewResponse": { + "type": "structure", + "members": { + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database where you created the dataview.
" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "A unique identifier for the dataview.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. This can be one of the following
SINGLE
– Assigns one availability zone per cluster.
MULTI
– Assigns all the availability zones per cluster.
The identifier of the availability zones.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier of the changeset that you want to use to ingest data.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "activeVersions": { + "shape": "KxDataviewActiveVersionList", + "documentation": "The current active changeset versions of the database on the given dataview.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the dataview.
" + }, + "autoUpdate": { + "shape": "booleanValue", + "documentation": "The option to specify whether you want to apply all the future additions and corrections automatically to the dataview when new changesets are ingested. The default value is false.
" + }, + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, from where you want to retrieve the dataview details.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the dataview was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "status": { + "shape": "KxDataviewStatus", + "documentation": "The status of dataview creation.
CREATING
– The dataview creation is in progress.
UPDATING
– The dataview is in the process of being updated.
ACTIVE
– The dataview is active.
The error message when a failed state occurs.
" + } + } + }, "GetKxEnvironmentRequest": { "type": "structure", "required": [ @@ -2592,6 +3660,68 @@ } } }, + "GetKxScalingGroupRequest": { + "type": "structure", + "required": [ + "environmentId", + "scalingGroupName" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment.
", + "location": "uri", + "locationName": "environmentId" + }, + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
", + "location": "uri", + "locationName": "scalingGroupName" + } + } + }, + "GetKxScalingGroupResponse": { + "type": "structure", + "members": { + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
" + }, + "scalingGroupArn": { + "shape": "arn", + "documentation": "The ARN identifier for the scaling group.
" + }, + "hostType": { + "shape": "KxHostType", + "documentation": "The memory and CPU capabilities of the scaling group host on which FinSpace Managed kdb clusters will be placed.
" + }, + "clusters": { + "shape": "KxClusterNameList", + "documentation": "The list of Managed kdb clusters that are currently active in the given scaling group.
" + }, + "availabilityZoneId": { + "shape": "AvailabilityZoneId", + "documentation": "The identifier of the availability zones.
" + }, + "status": { + "shape": "KxScalingGroupStatus", + "documentation": "The status of scaling group.
CREATING – The scaling group creation is in progress.
CREATE_FAILED – The scaling group creation has failed.
ACTIVE – The scaling group is active.
UPDATING – The scaling group is in the process of being updated.
UPDATE_FAILED – The update action failed.
DELETING – The scaling group is in the process of being deleted.
DELETE_FAILED – The system failed to delete the scaling group.
DELETED – The scaling group is successfully deleted.
The error message when a failed state occurs.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the scaling group was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the scaling group was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + } + }, "GetKxUserRequest": { "type": "structure", "required": [ @@ -2634,6 +3764,84 @@ } } }, + "GetKxVolumeRequest": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
", + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume.
", + "location": "uri", + "locationName": "volumeName" + } + } + }, + "GetKxVolumeResponse": { + "type": "structure", + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume.
" + }, + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
The ARN identifier of the volume.
" + }, + "nas1Configuration": { + "shape": "KxNAS1Configuration", + "documentation": "Specifies the configuration for the Network attached storage (NAS_1) file system volume.
" + }, + "status": { + "shape": "KxVolumeStatus", + "documentation": "The status of volume creation.
CREATING – The volume creation is in progress.
CREATE_FAILED – The volume creation has failed.
ACTIVE – The volume is active.
UPDATING – The volume is in the process of being updated.
UPDATE_FAILED – The update action failed.
UPDATED – The volume is successfully updated.
DELETING – The volume is in the process of being deleted.
DELETE_FAILED – The system failed to delete the volume.
DELETED – The volume is successfully deleted.
The error message when a failed state occurs.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the volume was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the volume.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. Currently, FinSpace only support SINGLE
for volumes.
The identifier of the availability zones.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the volume was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "attachedClusters": { + "shape": "KxAttachedClusters", + "documentation": "A list of cluster identifiers that a volume is attached to.
" + } + } + }, "IPAddressType": { "type": "string", "enum": [ @@ -2685,6 +3893,30 @@ "min": 1, "pattern": "^[a-zA-Z-0-9-:\\/]*$" }, + "KxAttachedCluster": { + "type": "structure", + "members": { + "clusterName": { + "shape": "KxClusterName", + "documentation": "A unique name for the attached cluster.
" + }, + "clusterType": { + "shape": "KxClusterType", + "documentation": "Specifies the type of cluster. The volume for TP and RDB cluster types will be used for TP logs.
" + }, + "clusterStatus": { + "shape": "KxClusterStatus", + "documentation": "The status of the attached cluster.
PENDING – The cluster is pending creation.
CREATING – The cluster creation process is in progress.
CREATE_FAILED – The cluster creation process has failed.
RUNNING – The cluster creation process is running.
UPDATING – The cluster is in the process of being updated.
DELETING – The cluster is in the process of being deleted.
DELETED – The cluster has been deleted.
DELETE_FAILED – The cluster failed to delete.
The structure containing the metadata of the attached clusters.
" + }, + "KxAttachedClusters": { + "type": "list", + "member": { + "shape": "KxAttachedCluster" + } + }, "KxAzMode": { "type": "string", "enum": [ @@ -2717,9 +3949,7 @@ } }, "KxCacheStorageSize": { - "type": "integer", - "max": 33600, - "min": 1200 + "type": "integer" }, "KxCacheStorageType": { "type": "string", @@ -2775,7 +4005,7 @@ }, "clusterType": { "shape": "KxClusterType", - "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Tickerplant – A tickerplant cluster allows you to subscribe to feed handlers based on IAM permissions. It can publish to RDBs, other Tickerplants, and real-time subscribers (RTS). Tickerplants can persist messages to log, which is readable by any RDB environment. It supports only single-node that is only one kdb process.
A version of the FinSpace managed kdb to run.
" }, + "volumes": { + "shape": "Volumes", + "documentation": "A list of volumes attached to the cluster.
" + }, "initializationScript": { "shape": "InitializationScriptFilePath", "documentation": "Specifies a Q program that will be run at launch of a cluster. It is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q
.
Specifies the portions of database that will be loaded into the cache for access.
" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The name of the dataview to be used for caching historical data on disk.
" } }, "documentation": "The structure of database cache configuration that is used for mapping database paths to cache types in clusters.
" @@ -2957,6 +4202,14 @@ "changesetId": { "shape": "ChangesetId", "documentation": "A unique identifier of the changeset that is associated with the cluster.
" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The name of the dataview to be used for caching historical data on disk.
" + }, + "dataviewConfiguration": { + "shape": "KxDataviewConfiguration", + "documentation": "The configuration of the dataview to be used with specified cluster.
" } }, "documentation": "The configuration of data that is available for querying from this database.
" @@ -2991,46 +4244,216 @@ "shape": "KxDatabaseListEntry" } }, - "KxDeploymentConfiguration": { + "KxDataviewActiveVersion": { "type": "structure", - "required": [ - "deploymentStrategy" - ], "members": { - "deploymentStrategy": { - "shape": "KxDeploymentStrategy", - "documentation": "The type of deployment that you want on a cluster.
ROLLING – This options updates the cluster by stopping the exiting q process and starting a new q process with updated configuration.
NO_RESTART – This option updates the cluster without stopping the running q process. It is only available for HDB
type cluster. This option is quicker as it reduces the turn around time to update configuration on a cluster.
With this deployment mode, you cannot update the initializationScript
and commandLineArguments
parameters.
A unique identifier for the changeset.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "attachedClusters": { + "shape": "AttachedClusterList", + "documentation": "The list of clusters that are currently using this dataview.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the dataview version was active. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "versionId": { + "shape": "VersionId", + "documentation": "A unique identifier of the active version.
" } }, - "documentation": "The configuration that allows you to choose how you want to update the databases on a cluster. Depending on the option you choose, you can reduce the time it takes to update the cluster.
" + "documentation": "The active version of the dataview that is currently in use by this cluster.
" }, - "KxDeploymentStrategy": { - "type": "string", - "enum": [ - "NO_RESTART", - "ROLLING" - ] + "KxDataviewActiveVersionList": { + "type": "list", + "member": { + "shape": "KxDataviewActiveVersion" + } }, - "KxEnvironment": { + "KxDataviewConfiguration": { "type": "structure", "members": { - "name": { - "shape": "KxEnvironmentName", - "documentation": "The name of the kdb environment.
" + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The unique identifier of the dataview.
" + }, + "dataviewVersionId": { + "shape": "VersionId", + "documentation": "The version of the dataview corresponding to a given changeset.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier for the changeset.
" }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The db path and volume configuration for the segmented database.
" + } + }, + "documentation": "The structure that stores the configuration details of a dataview.
" + }, + "KxDataviewListEntry": { + "type": "structure", + "members": { "environmentId": { - "shape": "IdType", + "shape": "EnvironmentId", "documentation": "A unique identifier for the kdb environment.
" }, - "awsAccountId": { - "shape": "IdType", - "documentation": "The unique identifier of the AWS account in which you create the kdb environment.
" + "databaseName": { + "shape": "DatabaseName", + "documentation": "A unique identifier of the database.
" }, - "status": { - "shape": "EnvironmentStatus", - "documentation": "The status of the environment creation.
CREATE_REQUESTED – Environment creation has been requested.
CREATING – Environment is in the process of being created.
FAILED_CREATION – Environment creation has failed.
CREATED – Environment is successfully created and is currently active.
DELETE REQUESTED – Environment deletion has been requested.
DELETING – Environment is in the process of being deleted.
RETRY_DELETION – Initial environment deletion failed, system is reattempting delete.
DELETED – Environment has been deleted.
FAILED_DELETION – Environment deletion has failed.
A unique identifier of the dataview.
" }, - "tgwStatus": { + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. This can be one of the following
SINGLE
– Assigns one availability zone per cluster.
MULTI
– Assigns all the availability zones per cluster.
The identifier of the availability zones.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier for the changeset.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "activeVersions": { + "shape": "KxDataviewActiveVersionList", + "documentation": "The active changeset versions for the given dataview entry.
" + }, + "status": { + "shape": "KxDataviewStatus", + "documentation": "The status of a given dataview entry.
" + }, + "description": { + "shape": "Description", + "documentation": "A description for the dataview list entry.
" + }, + "autoUpdate": { + "shape": "booleanValue", + "documentation": "The option to specify whether you want to apply all the future additions and corrections automatically to the dataview when you ingest new changesets. The default value is false.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the dataview list entry was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the dataview list was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "statusReason": { + "shape": "KxDataviewStatusReason", + "documentation": "The error message when a failed state occurs.
" + } + }, + "documentation": "A collection of kdb dataview entries.
" + }, + "KxDataviewName": { + "type": "string", + "max": 63, + "min": 3, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_]*[a-zA-Z0-9]$" + }, + "KxDataviewSegmentConfiguration": { + "type": "structure", + "required": [ + "dbPaths", + "volumeName" + ], + "members": { + "dbPaths": { + "shape": "SegmentConfigurationDbPathList", + "documentation": "The database path of the data that you want to place on each selected volume for the segment. Each segment must have a unique database path for each volume.
" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "The name of the volume where you want to add data.
" + } + }, + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "KxDataviewSegmentConfigurationList": { + "type": "list", + "member": { + "shape": "KxDataviewSegmentConfiguration" + }, + "max": 50, + "min": 0 + }, + "KxDataviewStatus": { + "type": "string", + "enum": [ + "CREATING", + "ACTIVE", + "UPDATING", + "FAILED", + "DELETING" + ] + }, + "KxDataviewStatusReason": { + "type": "string", + "max": 250, + "min": 1, + "pattern": "^[a-zA-Z0-9\\_\\-\\.\\s]+$" + }, + "KxDataviews": { + "type": "list", + "member": { + "shape": "KxDataviewListEntry" + } + }, + "KxDeploymentConfiguration": { + "type": "structure", + "required": [ + "deploymentStrategy" + ], + "members": { + "deploymentStrategy": { + "shape": "KxDeploymentStrategy", + "documentation": "The type of deployment that you want on a cluster.
ROLLING – This options updates the cluster by stopping the exiting q process and starting a new q process with updated configuration.
NO_RESTART – This option updates the cluster without stopping the running q process. It is only available for HDB
type cluster. This option is quicker as it reduces the turn around time to update configuration on a cluster.
With this deployment mode, you cannot update the initializationScript
and commandLineArguments
parameters.
The configuration that allows you to choose how you want to update the databases on a cluster. Depending on the option you choose, you can reduce the time it takes to update the cluster.
" + }, + "KxDeploymentStrategy": { + "type": "string", + "enum": [ + "NO_RESTART", + "ROLLING" + ] + }, + "KxEnvironment": { + "type": "structure", + "members": { + "name": { + "shape": "KxEnvironmentName", + "documentation": "The name of the kdb environment.
" + }, + "environmentId": { + "shape": "IdType", + "documentation": "A unique identifier for the kdb environment.
" + }, + "awsAccountId": { + "shape": "IdType", + "documentation": "The unique identifier of the AWS account in which you create the kdb environment.
" + }, + "status": { + "shape": "EnvironmentStatus", + "documentation": "The status of the environment creation.
CREATE_REQUESTED – Environment creation has been requested.
CREATING – Environment is in the process of being created.
FAILED_CREATION – Environment creation has failed.
CREATED – Environment is successfully created and is currently active.
DELETE REQUESTED – Environment deletion has been requested.
DELETING – Environment is in the process of being deleted.
RETRY_DELETION – Initial environment deletion failed, system is reattempting delete.
DELETED – Environment has been deleted.
FAILED_DELETION – Environment deletion has failed.
The status of the network configuration.
" }, @@ -3103,6 +4526,39 @@ "min": 3, "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_]*[a-zA-Z0-9]$" }, + "KxHostType": { + "type": "string", + "max": 32, + "min": 1, + "pattern": "^[a-zA-Z0-9._]+" + }, + "KxNAS1Configuration": { + "type": "structure", + "members": { + "type": { + "shape": "KxNAS1Type", + "documentation": "The type of the network attached storage.
" + }, + "size": { + "shape": "KxNAS1Size", + "documentation": "The size of the network attached storage.
" + } + }, + "documentation": "The structure containing the size and type of the network attached storage (NAS_1) file system volume.
" + }, + "KxNAS1Size": { + "type": "integer", + "max": 33600, + "min": 1200 + }, + "KxNAS1Type": { + "type": "string", + "enum": [ + "SSD_1000", + "SSD_250", + "HDD_12" + ] + }, "KxNode": { "type": "structure", "members": { @@ -3129,10 +4585,6 @@ }, "KxSavedownStorageConfiguration": { "type": "structure", - "required": [ - "type", - "size" - ], "members": { "type": { "shape": "KxSavedownStorageType", @@ -3141,6 +4593,10 @@ "size": { "shape": "KxSavedownStorageSize", "documentation": "The size of temporary storage in gibibytes.
" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "The name of the kdb volume that you want to use as writeable save-down storage for clusters.
" } }, "documentation": "The size and type of temporary storage that is used to hold data during the savedown process. All the data written to this storage space is lost when the cluster node is restarted.
" @@ -3148,7 +4604,7 @@ "KxSavedownStorageSize": { "type": "integer", "max": 16000, - "min": 4 + "min": 10 }, "KxSavedownStorageType": { "type": "string", @@ -3156,6 +4612,98 @@ "SDS01" ] }, + "KxScalingGroup": { + "type": "structure", + "members": { + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
" + }, + "hostType": { + "shape": "KxHostType", + "documentation": "The memory and CPU capabilities of the scaling group host on which FinSpace Managed kdb clusters will be placed.
" + }, + "clusters": { + "shape": "KxClusterNameList", + "documentation": "The list of clusters currently active in a given scaling group.
" + }, + "availabilityZoneId": { + "shape": "AvailabilityZoneId", + "documentation": "The identifier of the availability zones.
" + }, + "status": { + "shape": "KxScalingGroupStatus", + "documentation": "The status of scaling groups.
" + }, + "statusReason": { + "shape": "KxClusterStatusReason", + "documentation": "The error message when a failed state occurs.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the scaling group was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the scaling group was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + }, + "documentation": "A structure for storing metadata of scaling group.
" + }, + "KxScalingGroupConfiguration": { + "type": "structure", + "required": [ + "scalingGroupName", + "memoryReservation", + "nodeCount" + ], + "members": { + "scalingGroupName": { + "shape": "KxScalingGroupName", + "documentation": "A unique identifier for the kdb scaling group.
" + }, + "memoryLimit": { + "shape": "MemoryMib", + "documentation": "An optional hard limit on the amount of memory a kdb cluster can use.
" + }, + "memoryReservation": { + "shape": "MemoryMib", + "documentation": "A reservation of the minimum amount of memory that should be available on the scaling group for a kdb cluster to be successfully placed in a scaling group.
" + }, + "nodeCount": { + "shape": "ClusterNodeCount", + "documentation": "The number of kdb cluster nodes.
" + }, + "cpu": { + "shape": "CpuCount", + "documentation": "The number of vCPUs that you want to reserve for each node of this kdb cluster on the scaling group host.
" + } + }, + "documentation": "The structure that stores the capacity configuration details of a scaling group.
" + }, + "KxScalingGroupList": { + "type": "list", + "member": { + "shape": "KxScalingGroup" + } + }, + "KxScalingGroupName": { + "type": "string", + "max": 63, + "min": 3, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_]*[a-zA-Z0-9]$" + }, + "KxScalingGroupStatus": { + "type": "string", + "enum": [ + "CREATING", + "CREATE_FAILED", + "ACTIVE", + "DELETING", + "DELETED", + "DELETE_FAILED" + ] + }, "KxUser": { "type": "structure", "members": { @@ -3200,6 +4748,92 @@ "min": 1, "pattern": "^[0-9A-Za-z_-]{1,50}$" }, + "KxVolume": { + "type": "structure", + "members": { + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume.
" + }, + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
The status of volume.
CREATING – The volume creation is in progress.
CREATE_FAILED – The volume creation has failed.
ACTIVE – The volume is active.
UPDATING – The volume is in the process of being updated.
UPDATE_FAILED – The update action failed.
UPDATED – The volume is successfully updated.
DELETING – The volume is in the process of being deleted.
DELETE_FAILED – The system failed to delete the volume.
DELETED – The volume is successfully deleted.
A description of the volume.
" + }, + "statusReason": { + "shape": "KxVolumeStatusReason", + "documentation": "The error message when a failed state occurs.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": " The number of availability zones assigned to the volume. Currently, only SINGLE
is supported.
The identifier of the availability zones.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the volume was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the volume was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + }, + "documentation": "The structure that contains the metadata of the volume.
" + }, + "KxVolumeArn": { + "type": "string", + "max": 2048, + "min": 20, + "pattern": "^arn:aws:finspace:[A-Za-z0-9_/.-]{0,63}:\\d+:kxEnvironment/[0-9A-Za-z_-]{1,128}(/kxSharedVolume/[a-zA-Z0-9_-]{1,255})?$" + }, + "KxVolumeName": { + "type": "string", + "max": 63, + "min": 3, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_]*[a-zA-Z0-9]$" + }, + "KxVolumeStatus": { + "type": "string", + "enum": [ + "CREATING", + "CREATE_FAILED", + "ACTIVE", + "UPDATING", + "UPDATED", + "UPDATE_FAILED", + "DELETING", + "DELETED", + "DELETE_FAILED" + ] + }, + "KxVolumeStatusReason": { + "type": "string", + "max": 250, + "min": 1, + "pattern": "^[a-zA-Z0-9\\_\\-\\.\\s]+$" + }, + "KxVolumeType": { + "type": "string", + "enum": [ + "NAS_1" + ] + }, + "KxVolumes": { + "type": "list", + "member": { + "shape": "KxVolume" + } + }, "ListEnvironmentsRequest": { "type": "structure", "members": { @@ -3322,7 +4956,167 @@ } } }, - "ListKxClustersRequest": { + "ListKxClustersRequest": { + "type": "structure", + "required": [ + "environmentId" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment.
", + "location": "uri", + "locationName": "environmentId" + }, + "clusterType": { + "shape": "KxClusterType", + "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
Tickerplant – A tickerplant cluster allows you to subscribe to feed handlers based on IAM permissions. It can publish to RDBs, other Tickerplants, and real-time subscribers (RTS). Tickerplants can persist messages to log, which is readable by any RDB environment. It supports only single-node that is only one kdb process.
The maximum number of results to return in this request.
", + "location": "querystring", + "locationName": "maxResults" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
", + "location": "querystring", + "locationName": "nextToken" + } + } + }, + "ListKxClustersResponse": { + "type": "structure", + "members": { + "kxClusterSummaries": { + "shape": "KxClusters", + "documentation": "Lists the cluster details.
" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
" + } + } + }, + "ListKxDatabasesRequest": { + "type": "structure", + "required": [ + "environmentId" + ], + "members": { + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment.
", + "location": "uri", + "locationName": "environmentId" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
", + "location": "querystring", + "locationName": "nextToken" + }, + "maxResults": { + "shape": "MaxResults", + "documentation": "The maximum number of results to return in this request.
", + "location": "querystring", + "locationName": "maxResults" + } + } + }, + "ListKxDatabasesResponse": { + "type": "structure", + "members": { + "kxDatabases": { + "shape": "KxDatabases", + "documentation": "A list of databases in the kdb environment.
" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
" + } + } + }, + "ListKxDataviewsRequest": { + "type": "structure", + "required": [ + "environmentId", + "databaseName" + ], + "members": { + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, for which you want to retrieve a list of dataviews.
", + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database where the dataviews were created.
", + "location": "uri", + "locationName": "databaseName" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
", + "location": "querystring", + "locationName": "nextToken" + }, + "maxResults": { + "shape": "MaxResults", + "documentation": "The maximum number of results to return in this request.
", + "location": "querystring", + "locationName": "maxResults" + } + } + }, + "ListKxDataviewsResponse": { + "type": "structure", + "members": { + "kxDataviews": { + "shape": "KxDataviews", + "documentation": "The list of kdb dataviews that are currently active for the given database.
" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
" + } + } + }, + "ListKxEnvironmentsRequest": { + "type": "structure", + "members": { + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
", + "location": "querystring", + "locationName": "nextToken" + }, + "maxResults": { + "shape": "BoxedInteger", + "documentation": "The maximum number of results to return in this request.
", + "location": "querystring", + "locationName": "maxResults" + } + } + }, + "ListKxEnvironmentsResponse": { + "type": "structure", + "members": { + "environments": { + "shape": "KxEnvironmentList", + "documentation": "A list of environments in an account.
" + }, + "nextToken": { + "shape": "PaginationToken", + "documentation": "A token that indicates where a results page should begin.
" + } + } + }, + "ListKxScalingGroupsRequest": { "type": "structure", "required": [ "environmentId" @@ -3330,16 +5124,10 @@ "members": { "environmentId": { "shape": "KxEnvironmentId", - "documentation": "A unique identifier for the kdb environment.
", + "documentation": "A unique identifier for the kdb environment, for which you want to retrieve a list of scaling groups.
", "location": "uri", "locationName": "environmentId" }, - "clusterType": { - "shape": "KxClusterType", - "documentation": "Specifies the type of KDB database that is being created. The following types are available:
HDB – A Historical Database. The data is only accessible with read-only permissions from one of the FinSpace managed kdb databases mounted to the cluster.
RDB – A Realtime Database. This type of database captures all the data from a ticker plant and stores it in memory until the end of day, after which it writes all of its data to a disk and reloads the HDB. This cluster type requires local storage for temporary storage of data during the savedown process. If you specify this field in your request, you must provide the savedownStorageConfiguration
parameter.
GATEWAY – A gateway cluster allows you to access data across processes in kdb systems. It allows you to create your own routing logic using the initialization scripts and custom code. This type of cluster does not require a writable local storage.
GP – A general purpose cluster allows you to quickly iterate on code during development by granting greater access to system commands and enabling a fast reload of custom code. This cluster type can optionally mount databases including cache and savedown storage. For this cluster type, the node count is fixed at 1. It does not support autoscaling and supports only SINGLE
AZ mode.
The maximum number of results to return in this request.
", @@ -3348,33 +5136,33 @@ }, "nextToken": { "shape": "PaginationToken", - "documentation": "A token that indicates where a results page should begin.
", + "documentation": "A token that indicates where a results page should begin.
", "location": "querystring", "locationName": "nextToken" } } }, - "ListKxClustersResponse": { + "ListKxScalingGroupsResponse": { "type": "structure", "members": { - "kxClusterSummaries": { - "shape": "KxClusters", - "documentation": "Lists the cluster details.
" + "scalingGroups": { + "shape": "KxScalingGroupList", + "documentation": "A list of scaling groups available in a kdb environment.
" }, "nextToken": { "shape": "PaginationToken", - "documentation": "A token that indicates where a results page should begin.
" + "documentation": "A token that indicates where a results page should begin.
" } } }, - "ListKxDatabasesRequest": { + "ListKxUsersRequest": { "type": "structure", "required": [ "environmentId" ], "members": { "environmentId": { - "shape": "EnvironmentId", + "shape": "IdType", "documentation": "A unique identifier for the kdb environment.
", "location": "uri", "locationName": "environmentId" @@ -3386,49 +5174,19 @@ "locationName": "nextToken" }, "maxResults": { - "shape": "MaxResults", - "documentation": "The maximum number of results to return in this request.
", - "location": "querystring", - "locationName": "maxResults" - } - } - }, - "ListKxDatabasesResponse": { - "type": "structure", - "members": { - "kxDatabases": { - "shape": "KxDatabases", - "documentation": "A list of databases in the kdb environment.
" - }, - "nextToken": { - "shape": "PaginationToken", - "documentation": "A token that indicates where a results page should begin.
" - } - } - }, - "ListKxEnvironmentsRequest": { - "type": "structure", - "members": { - "nextToken": { - "shape": "PaginationToken", - "documentation": "A token that indicates where a results page should begin.
", - "location": "querystring", - "locationName": "nextToken" - }, - "maxResults": { - "shape": "BoxedInteger", + "shape": "ResultLimit", "documentation": "The maximum number of results to return in this request.
", "location": "querystring", "locationName": "maxResults" } } }, - "ListKxEnvironmentsResponse": { + "ListKxUsersResponse": { "type": "structure", "members": { - "environments": { - "shape": "KxEnvironmentList", - "documentation": "A list of environments in an account.
" + "users": { + "shape": "KxUserList", + "documentation": "A list of users in a kdb environment.
" }, "nextToken": { "shape": "PaginationToken", @@ -3436,38 +5194,44 @@ } } }, - "ListKxUsersRequest": { + "ListKxVolumesRequest": { "type": "structure", "required": [ "environmentId" ], "members": { "environmentId": { - "shape": "IdType", - "documentation": "A unique identifier for the kdb environment.
", + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment, whose clusters can attach to the volume.
", "location": "uri", "locationName": "environmentId" }, + "maxResults": { + "shape": "MaxResults", + "documentation": "The maximum number of results to return in this request.
", + "location": "querystring", + "locationName": "maxResults" + }, "nextToken": { "shape": "PaginationToken", "documentation": "A token that indicates where a results page should begin.
", "location": "querystring", "locationName": "nextToken" }, - "maxResults": { - "shape": "ResultLimit", - "documentation": "The maximum number of results to return in this request.
", + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
A list of users in a kdb environment.
" + "kxVolumeSummaries": { + "shape": "KxVolumes", + "documentation": "A summary of volumes.
" }, "nextToken": { "shape": "PaginationToken", @@ -3503,6 +5267,10 @@ "max": 100, "min": 0 }, + "MemoryMib": { + "type": "integer", + "min": 6 + }, "NameString": { "type": "string", "max": 50, @@ -3668,6 +5436,14 @@ "min": 1, "pattern": "^sg-([a-z0-9]{8}$|[a-z0-9]{17}$)" }, + "SegmentConfigurationDbPathList": { + "type": "list", + "member": { + "shape": "DbPath" + }, + "max": 30, + "min": 1 + }, "SignedKxConnectionString": { "type": "string", "max": 2048, @@ -3770,6 +5546,22 @@ "min": 1, "pattern": "^[a-zA-Z0-9+-=._:@ ]+$" }, + "TickerplantLogConfiguration": { + "type": "structure", + "members": { + "tickerplantLogVolumes": { + "shape": "TickerplantLogVolumes", + "documentation": "The name of the volumes for tickerplant logs.
" + } + }, + "documentation": " A configuration to store the Tickerplant logs. It consists of a list of volumes that will be mounted to your cluster. For the cluster type Tickerplant
, the location of the TP volume on the cluster will be available by using the global variable .aws.tp_log_path
.
A unique identifier for the kdb environment, where you want to update the dataview.
", + "location": "uri", + "locationName": "environmentId" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database.
", + "location": "uri", + "locationName": "databaseName" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The name of the dataview that you want to update.
", + "location": "uri", + "locationName": "dataviewName" + }, + "description": { + "shape": "Description", + "documentation": "The description for a dataview.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier for the changeset.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true + } + } + }, + "UpdateKxDataviewResponse": { + "type": "structure", + "members": { + "environmentId": { + "shape": "EnvironmentId", + "documentation": "A unique identifier for the kdb environment, where you want to update the dataview.
" + }, + "databaseName": { + "shape": "DatabaseName", + "documentation": "The name of the database.
" + }, + "dataviewName": { + "shape": "KxDataviewName", + "documentation": "The name of the database under which the dataview was created.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. This can be one of the following
SINGLE
– Assigns one availability zone per cluster.
MULTI
– Assigns all the availability zones per cluster.
The identifier of the availability zones.
" + }, + "changesetId": { + "shape": "ChangesetId", + "documentation": "A unique identifier for the changeset.
" + }, + "segmentConfigurations": { + "shape": "KxDataviewSegmentConfigurationList", + "documentation": "The configuration that contains the database path of the data that you want to place on each selected volume. Each segment must have a unique database path for each volume. If you do not explicitly specify any database path for a volume, they are accessible from the cluster through the default S3/object store segment.
" + }, + "activeVersions": { + "shape": "KxDataviewActiveVersionList", + "documentation": "The current active changeset versions of the database on the given dataview.
" + }, + "status": { + "shape": "KxDataviewStatus", + "documentation": "The status of dataview creation.
CREATING
– The dataview creation is in progress.
UPDATING
– The dataview is in the process of being updated.
ACTIVE
– The dataview is active.
The option to specify whether you want to apply all the future additions and corrections automatically to the dataview when new changesets are ingested. The default value is false.
" + }, + "description": { + "shape": "Description", + "documentation": "A description of the dataview.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the dataview was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + } + } + }, "UpdateKxEnvironmentNetworkRequest": { "type": "structure", "required": [ @@ -4022,7 +5917,8 @@ }, "clientToken": { "shape": "ClientToken", - "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
" + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true } } }, @@ -4116,7 +6012,8 @@ }, "clientToken": { "shape": "ClientToken", - "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
" + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true } } }, @@ -4214,7 +6111,8 @@ }, "clientToken": { "shape": "ClientToken", - "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
" + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true } } }, @@ -4239,6 +6137,97 @@ } } }, + "UpdateKxVolumeRequest": { + "type": "structure", + "required": [ + "environmentId", + "volumeName" + ], + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment where you created the storage volume.
", + "location": "uri", + "locationName": "environmentId" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume.
", + "location": "uri", + "locationName": "volumeName" + }, + "description": { + "shape": "Description", + "documentation": "A description of the volume.
" + }, + "clientToken": { + "shape": "ClientTokenString", + "documentation": "A token that ensures idempotency. This token expires in 10 minutes.
", + "idempotencyToken": true + }, + "nas1Configuration": { + "shape": "KxNAS1Configuration", + "documentation": "Specifies the configuration for the Network attached storage (NAS_1) file system volume.
" + } + } + }, + "UpdateKxVolumeResponse": { + "type": "structure", + "members": { + "environmentId": { + "shape": "KxEnvironmentId", + "documentation": "A unique identifier for the kdb environment where you want to update the volume.
" + }, + "volumeName": { + "shape": "KxVolumeName", + "documentation": "A unique identifier for the volume that you want to update.
" + }, + "volumeType": { + "shape": "KxVolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
The ARN identifier of the volume.
" + }, + "nas1Configuration": { + "shape": "KxNAS1Configuration", + "documentation": "Specifies the configuration for the Network attached storage (NAS_1) file system volume.
" + }, + "status": { + "shape": "KxVolumeStatus", + "documentation": "The status of the volume.
CREATING – The volume creation is in progress.
CREATE_FAILED – The volume creation has failed.
ACTIVE – The volume is active.
UPDATING – The volume is in the process of being updated.
UPDATE_FAILED – The update action failed.
UPDATED – The volume is successfully updated.
DELETING – The volume is in the process of being deleted.
DELETE_FAILED – The system failed to delete the volume.
DELETED – The volume is successfully deleted.
The description for the volume.
" + }, + "statusReason": { + "shape": "KxVolumeStatusReason", + "documentation": "The error message when a failed state occurs.
" + }, + "createdTimestamp": { + "shape": "Timestamp", + "documentation": "The timestamp at which the volume was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "azMode": { + "shape": "KxAzMode", + "documentation": "The number of availability zones you want to assign per cluster. Currently, FinSpace only support SINGLE
for volumes.
The identifier of the availability zones.
" + }, + "lastModifiedTimestamp": { + "shape": "Timestamp", + "documentation": "The last time that the volume was updated in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.
" + }, + "attachedClusters": { + "shape": "KxAttachedClusters", + "documentation": "Specifies the clusters that a volume is attached to.
" + } + } + }, "ValidCIDRBlock": { "type": "string", "max": 18, @@ -4258,6 +6247,45 @@ "type": "string", "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$" }, + "VersionId": { + "type": "string", + "max": 26, + "min": 1 + }, + "Volume": { + "type": "structure", + "members": { + "volumeName": { + "shape": "VolumeName", + "documentation": "A unique identifier for the volume.
" + }, + "volumeType": { + "shape": "VolumeType", + "documentation": " The type of file system volume. Currently, FinSpace only supports NAS_1
volume type.
The structure that consists of name and type of volume.
" + }, + "VolumeName": { + "type": "string", + "max": 63, + "min": 3, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_]*[a-zA-Z0-9]$" + }, + "VolumeType": { + "type": "string", + "enum": [ + "NAS_1" + ] + }, + "Volumes": { + "type": "list", + "member": { + "shape": "Volume" + }, + "max": 5, + "min": 0 + }, "VpcConfiguration": { "type": "structure", "members": { @@ -4286,6 +6314,15 @@ "min": 1, "pattern": "^vpc-([a-z0-9]{8}$|[a-z0-9]{17}$)" }, + "arn": { + "type": "string", + "max": 2048, + "min": 20, + "pattern": "^arn:*:*:*:*:*" + }, + "booleanValue": { + "type": "boolean" + }, "dnsStatus": { "type": "string", "enum": [ diff --git a/apis/finspace-2021-03-12.paginators.json b/apis/finspace-2021-03-12.paginators.json index ca77facdbe..74580e09e4 100644 --- a/apis/finspace-2021-03-12.paginators.json +++ b/apis/finspace-2021-03-12.paginators.json @@ -15,11 +15,21 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListKxDataviews": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListKxEnvironments": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "environments" + }, + "ListKxScalingGroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" } } } diff --git a/apis/monitoring-2010-08-01.normal.json b/apis/monitoring-2010-08-01.normal.json index 587d25eacd..ac5ada7f89 100644 --- a/apis/monitoring-2010-08-01.normal.json +++ b/apis/monitoring-2010-08-01.normal.json @@ -2170,7 +2170,7 @@ }, "OutputFormat": { "shape": "MetricStreamOutputFormat", - "documentation": "The output format for the stream. Valid values are json
and opentelemetry0.7
. For more information about metric stream output formats, see Metric streams output formats.
The output format for the stream. Valid values are json
, opentelemetry1.0
, and opentelemetry0.7
. For more information about metric stream output formats, see Metric streams output formats.
The output format of this metric stream. Valid values are json
and opentelemetry0.7
.
The output format of this metric stream. Valid values are json
, opentelemetry1.0
, and opentelemetry0.7
.
This structure contains the configuration information about one metric stream.
" @@ -3187,7 +3187,8 @@ "type": "string", "enum": [ "json", - "opentelemetry0.7" + "opentelemetry0.7", + "opentelemetry1.0" ], "max": 255, "min": 1 @@ -3217,7 +3218,7 @@ }, "AdditionalStatistics": { "shape": "MetricStreamStatisticsAdditionalStatistics", - "documentation": "The list of additional statistics that are to be streamed for the metrics listed in the IncludeMetrics
array in this structure. This list can include as many as 20 statistics.
If the OutputFormat
for the stream is opentelemetry0.7
, the only valid values are p??
percentile statistics such as p90
, p99
and so on.
If the OutputFormat
for the stream is json
, the valid values include the abbreviations for all of the statistics listed in CloudWatch statistics definitions. For example, this includes tm98,
wm90
, PR(:300)
, and so on.
The list of additional statistics that are to be streamed for the metrics listed in the IncludeMetrics
array in this structure. This list can include as many as 20 statistics.
If the OutputFormat
for the stream is opentelemetry1.0
or opentelemetry0.7
, the only valid values are p??
percentile statistics such as p90
, p99
and so on.
If the OutputFormat
for the stream is json
, the valid values include the abbreviations for all of the statistics listed in CloudWatch statistics definitions. For example, this includes tm98,
wm90
, PR(:300)
, and so on.
By default, a metric stream always sends the MAX
, MIN
, SUM
, and SAMPLECOUNT
statistics for each metric that is streamed. This structure contains information for one metric that includes additional statistics in the stream. For more information about statistics, see CloudWatch, listed in CloudWatch statistics definitions.
The name for the metric associated with the alarm. For each PutMetricAlarm
operation, you must specify either MetricName
or a Metrics
array.
If you are creating an alarm based on a math expression, you cannot specify this parameter, or any of the Dimensions
, Period
, Namespace
, Statistic
, or ExtendedStatistic
parameters. Instead, you specify all this information in the Metrics
array.
The name for the metric associated with the alarm. For each PutMetricAlarm
operation, you must specify either MetricName
or a Metrics
array.
If you are creating an alarm based on a math expression, you cannot specify this parameter, or any of the Namespace
, Dimensions
, Period
, Unit
, Statistic
, or ExtendedStatistic
parameters. Instead, you specify all this information in the Metrics
array.
The unit of measure for the statistic. For example, the units for the Amazon EC2 NetworkIn metric are Bytes because NetworkIn tracks the number of bytes that an instance receives on all network interfaces. You can also specify a unit when you create a custom metric. Units help provide conceptual meaning to your data. Metric data points that specify a unit of measure, such as Percent, are aggregated separately.
If you don't specify Unit
, CloudWatch retrieves all unit types that have been published for the metric and attempts to evaluate the alarm. Usually, metrics are published with only one unit, so the alarm works as intended.
However, if the metric is published with multiple types of units and you don't specify a unit, the alarm's behavior is not defined and it behaves unpredictably.
We recommend omitting Unit
so that you don't inadvertently specify an incorrect unit that is not published for this metric. Doing so causes the alarm to be stuck in the INSUFFICIENT DATA
state.
The unit of measure for the statistic. For example, the units for the Amazon EC2 NetworkIn metric are Bytes because NetworkIn tracks the number of bytes that an instance receives on all network interfaces. You can also specify a unit when you create a custom metric. Units help provide conceptual meaning to your data. Metric data points that specify a unit of measure, such as Percent, are aggregated separately. If you are creating an alarm based on a metric math expression, you can specify the unit for each metric (if needed) within the objects in the Metrics
array.
If you don't specify Unit
, CloudWatch retrieves all unit types that have been published for the metric and attempts to evaluate the alarm. Usually, metrics are published with only one unit, so the alarm works as intended.
However, if the metric is published with multiple types of units and you don't specify a unit, the alarm's behavior is not defined and it behaves unpredictably.
We recommend omitting Unit
so that you don't inadvertently specify an incorrect unit that is not published for this metric. Doing so causes the alarm to be stuck in the INSUFFICIENT DATA
state.
An array of MetricDataQuery
structures that enable you to create an alarm based on the result of a metric math expression. For each PutMetricAlarm
operation, you must specify either MetricName
or a Metrics
array.
Each item in the Metrics
array either retrieves a metric or performs a math expression.
One item in the Metrics
array is the expression that the alarm watches. You designate this expression by setting ReturnData
to true for this object in the array. For more information, see MetricDataQuery.
If you use the Metrics
parameter, you cannot include the MetricName
, Dimensions
, Period
, Namespace
, Statistic
, or ExtendedStatistic
parameters of PutMetricAlarm
in the same operation. Instead, you retrieve the metrics you are using in your math expression as part of the Metrics
array.
An array of MetricDataQuery
structures that enable you to create an alarm based on the result of a metric math expression. For each PutMetricAlarm
operation, you must specify either MetricName
or a Metrics
array.
Each item in the Metrics
array either retrieves a metric or performs a math expression.
One item in the Metrics
array is the expression that the alarm watches. You designate this expression by setting ReturnData
to true for this object in the array. For more information, see MetricDataQuery.
If you use the Metrics
parameter, you cannot include the Namespace
, MetricName
, Dimensions
, Period
, Unit
, Statistic
, or ExtendedStatistic
parameters of PutMetricAlarm
in the same operation. Instead, you retrieve the metrics you are using in your math expression as part of the Metrics
array.
The output format for the stream. Valid values are json
and opentelemetry0.7
. For more information about metric stream output formats, see Metric streams output formats.
The output format for the stream. Valid values are json
, opentelemetry1.0
, and opentelemetry0.7
. For more information about metric stream output formats, see Metric streams output formats.
By default, a metric stream always sends the MAX
, MIN
, SUM
, and SAMPLECOUNT
statistics for each metric that is streamed. You can use this parameter to have the metric stream also send additional statistics in the stream. This array can have up to 100 members.
For each entry in this array, you specify one or more metrics and the list of additional statistics to stream for those metrics. The additional statistics that you can stream depend on the stream's OutputFormat
. If the OutputFormat
is json
, you can stream any additional statistic that is supported by CloudWatch, listed in CloudWatch statistics definitions. If the OutputFormat
is opentelemetry0.7
, you can stream percentile statistics such as p95, p99.9, and so on.
By default, a metric stream always sends the MAX
, MIN
, SUM
, and SAMPLECOUNT
statistics for each metric that is streamed. You can use this parameter to have the metric stream also send additional statistics in the stream. This array can have up to 100 members.
For each entry in this array, you specify one or more metrics and the list of additional statistics to stream for those metrics. The additional statistics that you can stream depend on the stream's OutputFormat
. If the OutputFormat
is json
, you can stream any additional statistic that is supported by CloudWatch, listed in CloudWatch statistics definitions. If the OutputFormat
is opentelemetry1.0
or opentelemetry0.7
, you can stream percentile statistics such as p95, p99.9, and so on.
>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:s-1,y=a?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(n=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),t+=o+c>=1?l/u:l*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=m?(n=0,o=m):o+c>=1?(n=(t*u-1)*Math.pow(2,i),o+=c):(n=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&n,d+=y,n/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=y,o/=256,p-=8);e[r+d-y]|=128*b}},{}],443:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],444:[function(e,t,r){!function(e){"use strict";function t(e){return null!==e&&"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e,i){if(e===i)return!0;if(Object.prototype.toString.call(e)!==Object.prototype.toString.call(i))return!1;if(!0===t(e)){if(e.length!==i.length)return!1;for(var s=0;s G((f-r)/g)&&i("overflow"),r+=(p-t)*g,t=p,u=0;u =0?(c=b.substr(0,S),l=b.substr(S+1)):(c=b,l=""),d=decodeURIComponent(c),y=decodeURIComponent(l),a(o,d)?i(o[d])?o[d].push(y):o[d]=[o[d],y]:o[d]=y}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],448:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a >1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:s-1,y=a?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(n=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),t+=o+c>=1?l/u:l*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=m?(n=0,o=m):o+c>=1?(n=(t*u-1)*Math.pow(2,i),o+=c):(n=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&n,d+=y,n/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=y,o/=256,p-=8);e[r+d-y]|=128*b}},{}],443:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],444:[function(e,t,r){!function(e){"use strict";function t(e){return null!==e&&"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e,i){if(e===i)return!0;if(Object.prototype.toString.call(e)!==Object.prototype.toString.call(i))return!1;if(!0===t(e)){if(e.length!==i.length)return!1;for(var s=0;s G((f-r)/g)&&i("overflow"),r+=(p-t)*g,t=p,u=0;u =0?(c=b.substr(0,S),l=b.substr(S+1)):(c=b,l=""),d=decodeURIComponent(c),y=decodeURIComponent(l),a(o,d)?i(o[d])?o[d].push(y):o[d]=[o[d],y]:o[d]=y}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],448:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a=55296&&t<=56319&&i65535&&(e-=65536,t+=w(e>>>10&1023|55296),e=56320|1023&e),t+=w(e)}).join("")}function p(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:T}function m(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function c(e,t,r){var a=0;for(e=r?G(e/R):e>>1,e+=G(e/t);e>L*k>>1;a+=T)e=G(e/L);return G(a+(L+1)*e/(e+A))}function l(e){var t,r,a,s,o,n,m,l,d,y,b=[],S=e.length,g=0,h=v,I=D;for(r=e.lastIndexOf(x),r<0&&(r=0),a=0;a=S&&i("invalid-input"),l=p(e.charCodeAt(s++)),(l>=T||l>G((f-g)/n))&&i("overflow"),g+=l*n,d=m<=I?C:m>=I+k?k:m-I,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l=0&&delete e.httpRequest.headers["Content-Length"]}function i(e){var t=new l,r=e.service.api.operations[e.operation].input;if(r.payload){var a={},i=r.members[r.payload];a=e.params[r.payload],"structure"===i.type?(e.httpRequest.body=t.build(a||{},i),s(e)):void 0!==a&&(e.httpRequest.body=a,("binary"===i.type||i.isStreaming)&&s(e,!0))}else e.httpRequest.body=t.build(e.params,r),s(e)}function s(e,t){if(!e.httpRequest.headers["Content-Type"]){var r=t?"binary/octet-stream":"application/json";e.httpRequest.headers["Content-Type"]=r}}function o(e){m.buildRequest(e),y.indexOf(e.httpRequest.method)<0&&i(e)}function n(e){c.extractError(e)}function u(e){m.extractData(e);var t,r=e.request,a=r.service.api.operations[r.operation],i=r.service.api.operations[r.operation].output||{};a.hasEventOutput;if(i.payload){var s=i.members[i.payload],o=e.httpResponse.body;if(s.isEventStream)t=new d,e.data[payload]=p.createEventStream(2===AWS.HttpClient.streamsApiVersion?e.httpResponse.stream:o,t,s);else if("structure"===s.type||"list"===s.type){var t=new d;e.data[i.payload]=t.parse(o,s)}else"binary"===s.type||s.isStreaming?e.data[i.payload]=o:e.data[i.payload]=s.toType(o)}else{var n=e.data;c.extractData(e),e.data=p.merge(n,e.data)}}var p=e("../util"),m=e("./rest"),c=e("./json"),l=e("../json/builder"),d=e("../json/parser"),y=["GET","HEAD","DELETE"];t.exports={buildRequest:o,extractError:n,extractData:u,unsetContentLength:a}},{"../json/builder":374,"../json/parser":375,"../util":428,"./json":386,"./rest":388}],390:[function(e,t,r){function a(e){var t=e.service.api.operations[e.operation].input,r=new n.XML.Builder,a=e.params,i=t.payload;if(i){var s=t.members[i];if(void 0===(a=a[i]))return;if("structure"===s.type){var o=s.name;e.httpRequest.body=r.toXML(a,s,o,!0)}else e.httpRequest.body=a}else e.httpRequest.body=r.toXML(a,t,t.name||t.shape||u.string.upperFirst(e.operation)+"Request")}function i(e){p.buildRequest(e),["GET","HEAD"].indexOf(e.httpRequest.method)<0&&a(e)}function s(e){p.extractError(e);var t;try{t=(new n.XML.Parser).parse(e.httpResponse.body.toString())}catch(r){t={Code:e.httpResponse.statusCode,Message:e.httpResponse.statusMessage}}t.Errors&&(t=t.Errors),t.Error&&(t=t.Error),t.Code?e.error=u.error(new Error,{code:t.Code,message:t.Message}):e.error=u.error(new Error,{code:e.httpResponse.statusCode,message:null})}function o(e){p.extractData(e);var t,r=e.request,a=e.httpResponse.body,i=r.service.api.operations[r.operation],s=i.output,o=(i.hasEventOutput,s.payload);if(o){var m=s.members[o];m.isEventStream?(t=new n.XML.Parser,e.data[o]=u.createEventStream(2===n.HttpClient.streamsApiVersion?e.httpResponse.stream:e.httpResponse.body,t,m)):"structure"===m.type?(t=new n.XML.Parser,e.data[o]=t.parse(a.toString(),m)):"binary"===m.type||m.isStreaming?e.data[o]=a:e.data[o]=m.toType(a)}else if(a.length>0){t=new n.XML.Parser;var c=t.parse(a.toString(),s);u.update(e.data,c)}}var n=e("../core"),u=e("../util"),p=e("./rest");t.exports={buildRequest:i,extractError:s,extractData:o}},{"../core":350,"../util":428,"./rest":388}],391:[function(e,t,r){function a(){}function i(e){return e.isQueryName||"ec2"!==e.api.protocol?e.name:e.name[0].toUpperCase()+e.name.substr(1)}function s(e,t,r,a){p.each(r.members,function(r,s){var o=t[r];if(null!==o&&void 0!==o){var n=i(s);n=e?e+"."+n:n,u(n,o,s,a)}})}function o(e,t,r,a){var i=1;p.each(t,function(t,s){var o=r.flattened?".":".entry.",n=o+i+++".",p=n+(r.key.name||"key"),m=n+(r.value.name||"value");u(e+p,t,r.key,a),u(e+m,s,r.value,a)})}function n(e,t,r,a){var s=r.member||{};if(0===t.length)return void a.call(this,e,null);p.arrayEach(t,function(t,o){var n="."+(o+1);if("ec2"===r.api.protocol)n+="";else if(r.flattened){if(s.name){var p=e.split(".");p.pop(),p.push(i(s)),e=p.join(".")}}else n="."+(s.name?s.name:"member")+n;u(e+n,t,s,a)})}function u(e,t,r,a){null!==t&&void 0!==t&&("structure"===r.type?s(e,t,r,a):"list"===r.type?n(e,t,r,a):"map"===r.type?o(e,t,r,a):a(e,r.toWireFormat(t).toString()))}var p=e("../util");a.prototype.serialize=function(e,t,r){s("",e,t,r)},t.exports=a},{"../util":428}],392:[function(e,t,r){var a=e("../core"),i=null,s={signatureVersion:"v4",signingName:"rds-db",operations:{}},o={region:"string",hostname:"string",port:"number",username:"string"};a.RDS.Signer=a.util.inherit({constructor:function(e){this.options=e||{}},convertUrlToAuthToken:function(e){if(0===e.indexOf("https://"))return e.substring("https://".length)},getAuthToken:function(e,t){"function"==typeof e&&void 0===t&&(t=e,e={});var r=this,o="function"==typeof t;e=a.util.merge(this.options,e);var n=this.validateAuthTokenOptions(e);if(!0!==n){if(o)return t(n,null);throw n}var u={region:e.region,endpoint:new a.Endpoint(e.hostname+":"+e.port),paramValidation:!1,signatureVersion:"v4"};e.credentials&&(u.credentials=e.credentials),i=new a.Service(u),i.api=s;var p=i.makeRequest();if(this.modifyRequestForAuthToken(p,e),!o){var m=p.presign(900);return this.convertUrlToAuthToken(m)}p.presign(900,function(e,a){a&&(a=r.convertUrlToAuthToken(a)),t(e,a)})},modifyRequestForAuthToken:function(e,t){e.on("build",e.buildAsGet),e.httpRequest.body=a.util.queryParamsToString({Action:"connect",DBUser:t.username})},validateAuthTokenOptions:function(e){var t="";e=e||{};for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&typeof e[r]!==o[r]&&(t+="option '"+r+"' should have been type '"+o[r]+"', was '"+typeof e[r]+"'.\n");return!t.length||a.util.error(new Error,{code:"InvalidParameter",message:t})}})},{"../core":350}],393:[function(e,t,r){t.exports={now:function(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}}},{}],394:[function(e,t,r){function a(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))}function i(e){return"string"==typeof e&&["aws-global","aws-us-gov-global"].includes(e)}function s(e){return["fips-aws-global","aws-fips","aws-global"].includes(e)?"us-east-1":["fips-aws-us-gov-global","aws-us-gov-global"].includes(e)?"us-gov-west-1":e.replace(/fips-(dkr-|prod-)?|-fips/,"")}t.exports={isFipsRegion:a,isGlobalRegion:i,getRealRegion:s}},{}],395:[function(e,t,r){function a(e){if(!e)return null;var t=e.split("-");return t.length<3?null:t.slice(0,t.length-2).join("-")+"-*"}function i(e){var t=e.config.region,r=a(t),i=e.api.endpointPrefix;return[[t,i],[r,i],[t,"*"],[r,"*"],["*",i],[t,"internal-*"],["*","*"]].map(function(e){return e[0]&&e[1]?e.join("/"):null})}function s(e,t){u.each(t,function(t,r){"globalEndpoint"!==t&&(void 0!==e.config[t]&&null!==e.config[t]||(e.config[t]=r))})}function o(e){for(var t=i(e),r=e.config.useFipsEndpoint,a=e.config.useDualstackEndpoint,o=0;o=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function b(e){return+e!=e&&(e=0),s.alloc(+e)}function S(e,t){if(s.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return H(e).length;default:if(a)return K(e).length;t=(""+t).toLowerCase(),a=!0}}function g(e,t,r){var a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,t>>>=0,r<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,r);case"utf8":case"utf-8":return v(this,t,r);case"ascii":return P(this,t,r);case"latin1":case"binary":return q(this,t,r);case"base64":return D(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function h(e,t,r){var a=e[t];e[t]=e[r],e[r]=a}function I(e,t,r,a,i){if(0===e.length)return-1;if("string"==typeof r?(a=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=s.from(t,a)),s.isBuffer(t))return 0===t.length?-1:N(e,t,r,a,i);if("number"==typeof t)return t&=255,s.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):N(e,[t],r,a,i);throw new TypeError("val must be string, number or Buffer")}function N(e,t,r,a,i){function s(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}var o=1,n=e.length,u=t.length;if(void 0!==a&&("ucs2"===(a=String(a).toLowerCase())||"ucs-2"===a||"utf16le"===a||"utf-16le"===a)){if(e.length<2||t.length<2)return-1;o=2,n/=2,u/=2,r/=2}var p;if(i){var m=-1;for(p=r;p>>8*(a?i:1-i)}function B(e,t,r,a){t<0&&(t=4294967295+t+1);for(var i=0,s=Math.min(e.length-r,4);i>>8*(a?i:3-i)&255}function U(e,t,r,a,i,s){if(r+a>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function _(e,t,r,a,i){return i||U(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),X.write(e,t,r,a,23,4),r+4}function F(e,t,r,a,i){return i||U(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),X.write(e,t,r,a,52,8),r+8}function O(e){if(e=V(e).replace(ee,""),e.length<2)return"";for(;e.length%4!=0;)e+="=";return e}function V(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function z(e){return e<16?"0"+e.toString(16):e.toString(16)}function K(e,t){t=t||1/0;for(var r,a=e.length,i=null,s=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===a){(t-=3)>-1&&s.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&s.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&s.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;s.push(r)}else if(r<2048){if((t-=2)<0)break;s.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;s.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return s}function W(e){for(var t=[],r=0;r=55296&&t<=56319&&i65535&&(e-=65536,t+=w(e>>>10&1023|55296),e=56320|1023&e),t+=w(e)}).join("")}function p(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:T}function m(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function c(e,t,r){var a=0;for(e=r?G(e/R):e>>1,e+=G(e/t);e>L*k>>1;a+=T)e=G(e/L);return G(a+(L+1)*e/(e+A))}function l(e){var t,r,a,s,o,n,m,l,d,y,b=[],S=e.length,g=0,h=v,I=D;for(r=e.lastIndexOf(x),r<0&&(r=0),a=0;a=S&&i("invalid-input"),l=p(e.charCodeAt(s++)),(l>=T||l>G((f-g)/n))&&i("overflow"),g+=l*n,d=m<=I?C:m>=I+k?k:m-I,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l