@aws-cdk/aws-glue-alpha 2.38.1-alpha.0 → 2.40.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +178 -171
- package/.jsii.tabl.json +69 -69
- package/README.md +5 -1
- package/lib/code.js +3 -3
- package/lib/connection.js +2 -2
- package/lib/data-format.js +5 -5
- package/lib/database.js +1 -1
- package/lib/job-executable.d.ts +5 -1
- package/lib/job-executable.js +11 -4
- package/lib/job.js +2 -2
- package/lib/schema.js +1 -1
- package/lib/security-configuration.js +1 -1
- package/lib/table.js +1 -1
- package/package.json +7 -7
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.40.0",
|
|
12
12
|
"constructs": "^10.0.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -3024,7 +3024,7 @@
|
|
|
3024
3024
|
"stability": "experimental"
|
|
3025
3025
|
},
|
|
3026
3026
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
3027
|
-
"jsiiVersion": "1.
|
|
3027
|
+
"jsiiVersion": "1.66.0 (build 3c9512b)",
|
|
3028
3028
|
"keywords": [
|
|
3029
3029
|
"aws",
|
|
3030
3030
|
"cdk",
|
|
@@ -3045,7 +3045,7 @@
|
|
|
3045
3045
|
},
|
|
3046
3046
|
"name": "@aws-cdk/aws-glue-alpha",
|
|
3047
3047
|
"readme": {
|
|
3048
|
-
"markdown": "# AWS Glue Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.\n\n## Job\n\nA `Job` encapsulates a script that connects to data sources, processes them, and then writes output to a data target.\n\nThere are 3 types of jobs supported by AWS Glue: Spark ETL, Spark Streaming, and Python Shell jobs.\n\nThe `glue.JobExecutable` allows you to specify the type of job, the language to use and the code assets required by the job.\n\n`glue.Code` allows you to refer to the different code assets required by the job, either from an existing S3 location or from a local file path.\n\n### Spark Jobs\n\nThese jobs run in an Apache Spark environment managed by AWS Glue.\n\n#### ETL Jobs\n\nAn ETL job processes data in batches using Apache Spark.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew glue.Job(this, 'ScalaSparkEtlJob', {\n executable: glue.JobExecutable.scalaEtl({\n glueVersion: glue.GlueVersion.V2_0,\n script: glue.Code.fromBucket(bucket, 'src/com/example/HelloWorld.scala'),\n className: 'com.example.HelloWorld',\n extraJars: [glue.Code.fromBucket(bucket, 'jars/HelloWorld.jar')],\n }),\n description: 'an example Scala ETL job',\n});\n```\n\n#### Streaming Jobs\n\nA Streaming job is similar to an ETL job, except that it performs ETL on data streams. It uses the Apache Spark Structured Streaming framework. Some Spark job features are not available to streaming ETL jobs.\n\n```ts\nnew glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});\n```\n\n### Python Shell Jobs\n\nA Python shell job runs Python scripts as a shell and supports a Python version that depends on the AWS Glue version you are using.\nThis can be used to schedule and run tasks that don't require an Apache Spark environment.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});\n```\n\nSee [documentation](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) for more information on adding jobs in Glue.\n\n## Connection\n\nA `Connection` allows Glue jobs, crawlers and development endpoints to access certain types of data stores. For example, to create a network connection to connect to a data source within a VPC:\n\n```ts\ndeclare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});\n```\n\nIf you need to use a connection type that doesn't exist as a static member on `ConnectionType`, you can instantiate a `ConnectionType` object, e.g: `new glue.ConnectionType('NEW_TYPE')`.\n\nSee [Adding a Connection to Your Data Store](https://docs.aws.amazon.com/glue/latest/dg/populate-add-connection.html) and [Connection Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-connections.html#aws-glue-api-catalog-connections-Connection) documentation for more information on the supported data stores and their configurations.\n\n## SecurityConfiguration\n\nA `SecurityConfiguration` is a set of security properties that can be used by AWS Glue to encrypt data at rest.\n\n```ts\nnew glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});\n```\n\nBy default, a shared KMS key is created for use with the encryption configurations that require one. You can also supply your own key for each encryption config, for example, for CloudWatch encryption:\n\n```ts\ndeclare const key: kms.Key;\nnew glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n kmsKey: key,\n },\n});\n```\n\nSee [documentation](https://docs.aws.amazon.com/glue/latest/dg/encryption-security-configuration.html) for more info for Glue encrypting data written by Crawlers, Jobs, and Development Endpoints.\n\n## Database\n\nA `Database` is a logical grouping of `Tables` in the Glue Catalog.\n\n```ts\nnew glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});\n```\n\n## Table\n\nA Glue table describes a table of data in S3: its structure (column names and types), location of data (S3 objects with a common prefix in a S3 bucket), and format for the files (Json, Avro, Parquet, etc.):\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }, {\n name: 'col2',\n type: glue.Schema.array(glue.Schema.STRING),\n comment: 'col2 is an array of strings' // comment is optional\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nBy default, a S3 bucket will be created to store the table's data but you can manually pass the `bucket` and `s3Prefix`:\n\n```ts\ndeclare const myBucket: s3.Bucket;\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n bucket: myBucket,\n s3Prefix: 'my-table/',\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nBy default, an S3 bucket will be created to store the table's data and stored in the bucket root. You can also manually pass the `bucket` and `s3Prefix`:\n\n### Partition Keys\n\nTo improve query performance, a table can specify `partitionKeys` on which data is stored and queried separately. For example, you might partition a table by `year` and `month` to optimize queries based on a time window:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n### Partition Indexes\n\nAnother way to improve query performance is to specify partition indexes. If no partition indexes are\npresent on the table, AWS Glue loads all partitions of the table and filters the loaded partitions using\nthe query expression. The query takes more time to run as the number of partitions increase. With an\nindex, the query will try to fetch a subset of the partitions instead of loading all partitions of the\ntable.\n\nThe keys of a partition index must be a subset of the partition keys of the table. You can have a\nmaximum of 3 partition indexes per table. To specify a partition index, you can use the `partitionIndexes`\nproperty:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n partitionIndexes: [{\n indexName: 'my-index', // optional\n keyNames: ['year'],\n }], // supply up to 3 indexes\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nAlternatively, you can call the `addPartitionIndex()` function on a table:\n\n```ts\ndeclare const myTable: glue.Table;\nmyTable.addPartitionIndex({\n indexName: 'my-index',\n keyNames: ['year'],\n});\n```\n\n### Partition Filtering\n\nIf you have a table with a large number of partitions that grows over time, consider using AWS Glue partition indexing and filtering.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});\n```\n\n## [Encryption](https://docs.aws.amazon.com/athena/latest/ug/encryption.html)\n\nYou can enable encryption on a Table's data:\n\n* `Unencrypted` - files are not encrypted. The default encryption setting.\n* [S3Managed](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) - Server side encryption (`SSE-S3`) with an Amazon S3-managed key.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.S3_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [Kms](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) - Server-side encryption (`SSE-KMS`) with an AWS KMS Key managed by the account owner.\n\n```ts\ndeclare const myDatabase: glue.Database;\n// KMS key is created automatically\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n\n// with an explicit KMS key\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS,\n encryptionKey: new kms.Key(this, 'MyKey'),\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [KmsManaged](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) - Server-side encryption (`SSE-KMS`), like `Kms`, except with an AWS KMS Key managed by the AWS Key Management Service.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [ClientSideKms](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html#client-side-encryption-kms-managed-master-key-intro) - Client-side encryption (`CSE-KMS`) with an AWS KMS Key managed by the account owner.\n\n```ts\ndeclare const myDatabase: glue.Database;\n// KMS key is created automatically\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.CLIENT_SIDE_KMS,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n\n// with an explicit KMS key\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.CLIENT_SIDE_KMS,\n encryptionKey: new kms.Key(this, 'MyKey'),\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n*Note: you cannot provide a `Bucket` when creating the `Table` if you wish to use server-side encryption (`KMS`, `KMS_MANAGED` or `S3_MANAGED`)*.\n\n## Types\n\nA table's schema is a collection of columns, each of which have a `name` and a `type`. Types are recursive structures, consisting of primitive and complex types:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n columns: [{\n name: 'primitive_column',\n type: glue.Schema.STRING,\n }, {\n name: 'array_column',\n type: glue.Schema.array(glue.Schema.INTEGER),\n comment: 'array<integer>',\n }, {\n name: 'map_column',\n type: glue.Schema.map(\n glue.Schema.STRING,\n glue.Schema.TIMESTAMP),\n comment: 'map<string,string>',\n }, {\n name: 'struct_column',\n type: glue.Schema.struct([{\n name: 'nested_column',\n type: glue.Schema.DATE,\n comment: 'nested comment',\n }]),\n comment: \"struct<nested_column:date COMMENT 'nested comment'>\",\n }],\n // ...\n database: myDatabase,\n tableName: 'my_table',\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n### Primitives\n\n#### Numeric\n\n| Name \t| Type \t| Comments |\n|-----------\t|----------\t|------------------------------------------------------------------------------------------------------------------\t|\n| FLOAT \t| Constant \t| A 32-bit single-precision floating point number |\n| INTEGER \t| Constant \t| A 32-bit signed value in two's complement format, with a minimum value of -2^31 and a maximum value of 2^31-1 \t|\n| DOUBLE \t| Constant \t| A 64-bit double-precision floating point number |\n| BIG_INT \t| Constant \t| A 64-bit signed INTEGER in two’s complement format, with a minimum value of -2^63 and a maximum value of 2^63 -1 |\n| SMALL_INT \t| Constant \t| A 16-bit signed INTEGER in two’s complement format, with a minimum value of -2^15 and a maximum value of 2^15-1 |\n| TINY_INT \t| Constant \t| A 8-bit signed INTEGER in two’s complement format, with a minimum value of -2^7 and a maximum value of 2^7-1 |\n\n#### Date and time\n\n| Name \t| Type \t| Comments \t|\n|-----------\t|----------\t|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\t|\n| DATE \t| Constant \t| A date in UNIX format, such as YYYY-MM-DD. \t|\n| TIMESTAMP \t| Constant \t| Date and time instant in the UNiX format, such as yyyy-mm-dd hh:mm:ss[.f...]. For example, TIMESTAMP '2008-09-15 03:04:05.324'. This format uses the session time zone. \t|\n\n#### String\n\n| Name \t| Type \t| Comments \t|\n|--------------------------------------------\t|----------\t|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\t|\n| STRING \t| Constant \t| A string literal enclosed in single or double quotes \t|\n| decimal(precision: number, scale?: number) \t| Function \t| `precision` is the total number of digits. `scale` (optional) is the number of digits in fractional part with a default of 0. For example, use these type definitions: decimal(11,5), decimal(15) \t|\n| char(length: number) \t| Function \t| Fixed length character data, with a specified length between 1 and 255, such as char(10) \t|\n| varchar(length: number) \t| Function \t| Variable length character data, with a specified length between 1 and 65535, such as varchar(10) \t|\n\n#### Miscellaneous\n\n| Name \t| Type \t| Comments \t|\n|---------\t|----------\t|-------------------------------\t|\n| BOOLEAN \t| Constant \t| Values are `true` and `false` \t|\n| BINARY \t| Constant \t| Value is in binary \t|\n\n### Complex\n\n| Name \t| Type \t| Comments \t|\n|-------------------------------------\t|----------\t|-------------------------------------------------------------------\t|\n| array(itemType: Type) \t| Function \t| An array of some other type \t|\n| map(keyType: Type, valueType: Type) \t| Function \t| A map of some primitive key type to any value type \t|\n| struct(collumns: Column[]) \t| Function \t| Nested structure containing individually named and typed collumns \t|\n"
|
|
3048
|
+
"markdown": "# AWS Glue Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.\n\n## Job\n\nA `Job` encapsulates a script that connects to data sources, processes them, and then writes output to a data target.\n\nThere are 3 types of jobs supported by AWS Glue: Spark ETL, Spark Streaming, and Python Shell jobs.\n\nThe `glue.JobExecutable` allows you to specify the type of job, the language to use and the code assets required by the job.\n\n`glue.Code` allows you to refer to the different code assets required by the job, either from an existing S3 location or from a local file path.\n\n### Spark Jobs\n\nThese jobs run in an Apache Spark environment managed by AWS Glue.\n\n#### ETL Jobs\n\nAn ETL job processes data in batches using Apache Spark.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew glue.Job(this, 'ScalaSparkEtlJob', {\n executable: glue.JobExecutable.scalaEtl({\n glueVersion: glue.GlueVersion.V2_0,\n script: glue.Code.fromBucket(bucket, 'src/com/example/HelloWorld.scala'),\n className: 'com.example.HelloWorld',\n extraJars: [glue.Code.fromBucket(bucket, 'jars/HelloWorld.jar')],\n }),\n description: 'an example Scala ETL job',\n});\n```\n\n#### Streaming Jobs\n\nA Streaming job is similar to an ETL job, except that it performs ETL on data streams. It uses the Apache Spark Structured Streaming framework. Some Spark job features are not available to streaming ETL jobs.\n\n```ts\nnew glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});\n```\n\n### Python Shell Jobs\n\nA Python shell job runs Python scripts as a shell and supports a Python version that depends on the AWS Glue version you are using.\nThis can be used to schedule and run tasks that don't require an Apache Spark environment. Currently, three flavors are supported:\n\n* PythonVersion.TWO (2.7; EOL)\n* PythonVersion.THREE (3.6)\n* PythonVersion.THREE_NINE (3.9)\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});\n```\n\nSee [documentation](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) for more information on adding jobs in Glue.\n\n## Connection\n\nA `Connection` allows Glue jobs, crawlers and development endpoints to access certain types of data stores. For example, to create a network connection to connect to a data source within a VPC:\n\n```ts\ndeclare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});\n```\n\nIf you need to use a connection type that doesn't exist as a static member on `ConnectionType`, you can instantiate a `ConnectionType` object, e.g: `new glue.ConnectionType('NEW_TYPE')`.\n\nSee [Adding a Connection to Your Data Store](https://docs.aws.amazon.com/glue/latest/dg/populate-add-connection.html) and [Connection Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-connections.html#aws-glue-api-catalog-connections-Connection) documentation for more information on the supported data stores and their configurations.\n\n## SecurityConfiguration\n\nA `SecurityConfiguration` is a set of security properties that can be used by AWS Glue to encrypt data at rest.\n\n```ts\nnew glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});\n```\n\nBy default, a shared KMS key is created for use with the encryption configurations that require one. You can also supply your own key for each encryption config, for example, for CloudWatch encryption:\n\n```ts\ndeclare const key: kms.Key;\nnew glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n kmsKey: key,\n },\n});\n```\n\nSee [documentation](https://docs.aws.amazon.com/glue/latest/dg/encryption-security-configuration.html) for more info for Glue encrypting data written by Crawlers, Jobs, and Development Endpoints.\n\n## Database\n\nA `Database` is a logical grouping of `Tables` in the Glue Catalog.\n\n```ts\nnew glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});\n```\n\n## Table\n\nA Glue table describes a table of data in S3: its structure (column names and types), location of data (S3 objects with a common prefix in a S3 bucket), and format for the files (Json, Avro, Parquet, etc.):\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }, {\n name: 'col2',\n type: glue.Schema.array(glue.Schema.STRING),\n comment: 'col2 is an array of strings' // comment is optional\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nBy default, a S3 bucket will be created to store the table's data but you can manually pass the `bucket` and `s3Prefix`:\n\n```ts\ndeclare const myBucket: s3.Bucket;\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n bucket: myBucket,\n s3Prefix: 'my-table/',\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nBy default, an S3 bucket will be created to store the table's data and stored in the bucket root. You can also manually pass the `bucket` and `s3Prefix`:\n\n### Partition Keys\n\nTo improve query performance, a table can specify `partitionKeys` on which data is stored and queried separately. For example, you might partition a table by `year` and `month` to optimize queries based on a time window:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n### Partition Indexes\n\nAnother way to improve query performance is to specify partition indexes. If no partition indexes are\npresent on the table, AWS Glue loads all partitions of the table and filters the loaded partitions using\nthe query expression. The query takes more time to run as the number of partitions increase. With an\nindex, the query will try to fetch a subset of the partitions instead of loading all partitions of the\ntable.\n\nThe keys of a partition index must be a subset of the partition keys of the table. You can have a\nmaximum of 3 partition indexes per table. To specify a partition index, you can use the `partitionIndexes`\nproperty:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n partitionIndexes: [{\n indexName: 'my-index', // optional\n keyNames: ['year'],\n }], // supply up to 3 indexes\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\nAlternatively, you can call the `addPartitionIndex()` function on a table:\n\n```ts\ndeclare const myTable: glue.Table;\nmyTable.addPartitionIndex({\n indexName: 'my-index',\n keyNames: ['year'],\n});\n```\n\n### Partition Filtering\n\nIf you have a table with a large number of partitions that grows over time, consider using AWS Glue partition indexing and filtering.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});\n```\n\n## [Encryption](https://docs.aws.amazon.com/athena/latest/ug/encryption.html)\n\nYou can enable encryption on a Table's data:\n\n* `Unencrypted` - files are not encrypted. The default encryption setting.\n* [S3Managed](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html) - Server side encryption (`SSE-S3`) with an Amazon S3-managed key.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.S3_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [Kms](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) - Server-side encryption (`SSE-KMS`) with an AWS KMS Key managed by the account owner.\n\n```ts\ndeclare const myDatabase: glue.Database;\n// KMS key is created automatically\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n\n// with an explicit KMS key\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS,\n encryptionKey: new kms.Key(this, 'MyKey'),\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [KmsManaged](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) - Server-side encryption (`SSE-KMS`), like `Kms`, except with an AWS KMS Key managed by the AWS Key Management Service.\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.KMS_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n* [ClientSideKms](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html#client-side-encryption-kms-managed-master-key-intro) - Client-side encryption (`CSE-KMS`) with an AWS KMS Key managed by the account owner.\n\n```ts\ndeclare const myDatabase: glue.Database;\n// KMS key is created automatically\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.CLIENT_SIDE_KMS,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n\n// with an explicit KMS key\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.CLIENT_SIDE_KMS,\n encryptionKey: new kms.Key(this, 'MyKey'),\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n*Note: you cannot provide a `Bucket` when creating the `Table` if you wish to use server-side encryption (`KMS`, `KMS_MANAGED` or `S3_MANAGED`)*.\n\n## Types\n\nA table's schema is a collection of columns, each of which have a `name` and a `type`. Types are recursive structures, consisting of primitive and complex types:\n\n```ts\ndeclare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n columns: [{\n name: 'primitive_column',\n type: glue.Schema.STRING,\n }, {\n name: 'array_column',\n type: glue.Schema.array(glue.Schema.INTEGER),\n comment: 'array<integer>',\n }, {\n name: 'map_column',\n type: glue.Schema.map(\n glue.Schema.STRING,\n glue.Schema.TIMESTAMP),\n comment: 'map<string,string>',\n }, {\n name: 'struct_column',\n type: glue.Schema.struct([{\n name: 'nested_column',\n type: glue.Schema.DATE,\n comment: 'nested comment',\n }]),\n comment: \"struct<nested_column:date COMMENT 'nested comment'>\",\n }],\n // ...\n database: myDatabase,\n tableName: 'my_table',\n dataFormat: glue.DataFormat.JSON,\n});\n```\n\n### Primitives\n\n#### Numeric\n\n| Name \t| Type \t| Comments |\n|-----------\t|----------\t|------------------------------------------------------------------------------------------------------------------\t|\n| FLOAT \t| Constant \t| A 32-bit single-precision floating point number |\n| INTEGER \t| Constant \t| A 32-bit signed value in two's complement format, with a minimum value of -2^31 and a maximum value of 2^31-1 \t|\n| DOUBLE \t| Constant \t| A 64-bit double-precision floating point number |\n| BIG_INT \t| Constant \t| A 64-bit signed INTEGER in two’s complement format, with a minimum value of -2^63 and a maximum value of 2^63 -1 |\n| SMALL_INT \t| Constant \t| A 16-bit signed INTEGER in two’s complement format, with a minimum value of -2^15 and a maximum value of 2^15-1 |\n| TINY_INT \t| Constant \t| A 8-bit signed INTEGER in two’s complement format, with a minimum value of -2^7 and a maximum value of 2^7-1 |\n\n#### Date and time\n\n| Name \t| Type \t| Comments \t|\n|-----------\t|----------\t|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\t|\n| DATE \t| Constant \t| A date in UNIX format, such as YYYY-MM-DD. \t|\n| TIMESTAMP \t| Constant \t| Date and time instant in the UNiX format, such as yyyy-mm-dd hh:mm:ss[.f...]. For example, TIMESTAMP '2008-09-15 03:04:05.324'. This format uses the session time zone. \t|\n\n#### String\n\n| Name \t| Type \t| Comments \t|\n|--------------------------------------------\t|----------\t|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\t|\n| STRING \t| Constant \t| A string literal enclosed in single or double quotes \t|\n| decimal(precision: number, scale?: number) \t| Function \t| `precision` is the total number of digits. `scale` (optional) is the number of digits in fractional part with a default of 0. For example, use these type definitions: decimal(11,5), decimal(15) \t|\n| char(length: number) \t| Function \t| Fixed length character data, with a specified length between 1 and 255, such as char(10) \t|\n| varchar(length: number) \t| Function \t| Variable length character data, with a specified length between 1 and 65535, such as varchar(10) \t|\n\n#### Miscellaneous\n\n| Name \t| Type \t| Comments \t|\n|---------\t|----------\t|-------------------------------\t|\n| BOOLEAN \t| Constant \t| Values are `true` and `false` \t|\n| BINARY \t| Constant \t| Value is in binary \t|\n\n### Complex\n\n| Name \t| Type \t| Comments \t|\n|-------------------------------------\t|----------\t|-------------------------------------------------------------------\t|\n| array(itemType: Type) \t| Function \t| An array of some other type \t|\n| map(keyType: Type, valueType: Type) \t| Function \t| A map of some primitive key type to any value type \t|\n| struct(collumns: Column[]) \t| Function \t| Nested structure containing individually named and typed collumns \t|\n"
|
|
3049
3049
|
},
|
|
3050
3050
|
"repository": {
|
|
3051
3051
|
"directory": "packages/individual-packages/aws-glue",
|
|
@@ -3322,12 +3322,12 @@
|
|
|
3322
3322
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
3323
3323
|
"datatype": true,
|
|
3324
3324
|
"docs": {
|
|
3325
|
+
"stability": "experimental",
|
|
3326
|
+
"summary": "CloudWatch Logs encryption configuration.",
|
|
3327
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
3325
3328
|
"custom": {
|
|
3326
3329
|
"exampleMetadata": "infused"
|
|
3327
|
-
}
|
|
3328
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
3329
|
-
"stability": "experimental",
|
|
3330
|
-
"summary": "CloudWatch Logs encryption configuration."
|
|
3330
|
+
}
|
|
3331
3331
|
},
|
|
3332
3332
|
"fqn": "@aws-cdk/aws-glue-alpha.CloudWatchEncryption",
|
|
3333
3333
|
"kind": "interface",
|
|
@@ -3377,13 +3377,13 @@
|
|
|
3377
3377
|
"@aws-cdk/aws-glue-alpha.CloudWatchEncryptionMode": {
|
|
3378
3378
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
3379
3379
|
"docs": {
|
|
3380
|
-
"custom": {
|
|
3381
|
-
"exampleMetadata": "infused"
|
|
3382
|
-
},
|
|
3383
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
3384
3380
|
"see": "https://docs.aws.amazon.com/glue/latest/webapi/API_CloudWatchEncryption.html#Glue-Type-CloudWatchEncryption-CloudWatchEncryptionMode",
|
|
3385
3381
|
"stability": "experimental",
|
|
3386
|
-
"summary": "Encryption mode for CloudWatch Logs."
|
|
3382
|
+
"summary": "Encryption mode for CloudWatch Logs.",
|
|
3383
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
3384
|
+
"custom": {
|
|
3385
|
+
"exampleMetadata": "infused"
|
|
3386
|
+
}
|
|
3387
3387
|
},
|
|
3388
3388
|
"fqn": "@aws-cdk/aws-glue-alpha.CloudWatchEncryptionMode",
|
|
3389
3389
|
"kind": "enum",
|
|
@@ -3408,12 +3408,12 @@
|
|
|
3408
3408
|
"abstract": true,
|
|
3409
3409
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
3410
3410
|
"docs": {
|
|
3411
|
+
"stability": "experimental",
|
|
3412
|
+
"summary": "Represents a Glue Job's Code assets (an asset can be a scripts, a jar, a python file or any other file).",
|
|
3413
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
3411
3414
|
"custom": {
|
|
3412
3415
|
"exampleMetadata": "infused"
|
|
3413
|
-
}
|
|
3414
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
3415
|
-
"stability": "experimental",
|
|
3416
|
-
"summary": "Represents a Glue Job's Code assets (an asset can be a scripts, a jar, a python file or any other file)."
|
|
3416
|
+
}
|
|
3417
3417
|
},
|
|
3418
3418
|
"fqn": "@aws-cdk/aws-glue-alpha.Code",
|
|
3419
3419
|
"initializer": {
|
|
@@ -3648,12 +3648,12 @@
|
|
|
3648
3648
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
3649
3649
|
"base": "aws-cdk-lib.Resource",
|
|
3650
3650
|
"docs": {
|
|
3651
|
+
"stability": "experimental",
|
|
3652
|
+
"summary": "An AWS Glue connection to a data source.",
|
|
3653
|
+
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
3651
3654
|
"custom": {
|
|
3652
3655
|
"exampleMetadata": "infused"
|
|
3653
|
-
}
|
|
3654
|
-
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
3655
|
-
"stability": "experimental",
|
|
3656
|
-
"summary": "An AWS Glue connection to a data source."
|
|
3656
|
+
}
|
|
3657
3657
|
},
|
|
3658
3658
|
"fqn": "@aws-cdk/aws-glue-alpha.Connection",
|
|
3659
3659
|
"initializer": {
|
|
@@ -4007,12 +4007,12 @@
|
|
|
4007
4007
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4008
4008
|
"datatype": true,
|
|
4009
4009
|
"docs": {
|
|
4010
|
+
"stability": "experimental",
|
|
4011
|
+
"summary": "Construction properties for {@link Connection}.",
|
|
4012
|
+
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
4010
4013
|
"custom": {
|
|
4011
4014
|
"exampleMetadata": "infused"
|
|
4012
|
-
}
|
|
4013
|
-
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
4014
|
-
"stability": "experimental",
|
|
4015
|
-
"summary": "Construction properties for {@link Connection}."
|
|
4015
|
+
}
|
|
4016
4016
|
},
|
|
4017
4017
|
"fqn": "@aws-cdk/aws-glue-alpha.ConnectionProps",
|
|
4018
4018
|
"interfaces": [
|
|
@@ -4047,13 +4047,13 @@
|
|
|
4047
4047
|
"@aws-cdk/aws-glue-alpha.ConnectionType": {
|
|
4048
4048
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4049
4049
|
"docs": {
|
|
4050
|
-
"custom": {
|
|
4051
|
-
"exampleMetadata": "infused"
|
|
4052
|
-
},
|
|
4053
|
-
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
4054
4050
|
"remarks": "If you need to use a connection type that doesn't exist as a static member, you\ncan instantiate a `ConnectionType` object, e.g: `new ConnectionType('NEW_TYPE')`.",
|
|
4055
4051
|
"stability": "experimental",
|
|
4056
|
-
"summary": "The type of the glue connection."
|
|
4052
|
+
"summary": "The type of the glue connection.",
|
|
4053
|
+
"example": "declare const securityGroup: ec2.SecurityGroup;\ndeclare const subnet: ec2.Subnet;\nnew glue.Connection(this, 'MyConnection', {\n type: glue.ConnectionType.NETWORK,\n // The security groups granting AWS Glue inbound access to the data source within the VPC\n securityGroups: [securityGroup],\n // The VPC subnet which contains the data source\n subnet,\n});",
|
|
4054
|
+
"custom": {
|
|
4055
|
+
"exampleMetadata": "infused"
|
|
4056
|
+
}
|
|
4057
4057
|
},
|
|
4058
4058
|
"fqn": "@aws-cdk/aws-glue-alpha.ConnectionType",
|
|
4059
4059
|
"initializer": {
|
|
@@ -4299,12 +4299,12 @@
|
|
|
4299
4299
|
"@aws-cdk/aws-glue-alpha.DataFormat": {
|
|
4300
4300
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4301
4301
|
"docs": {
|
|
4302
|
+
"stability": "experimental",
|
|
4303
|
+
"summary": "Defines the input/output formats and ser/de for a single DataFormat.",
|
|
4304
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
4302
4305
|
"custom": {
|
|
4303
4306
|
"exampleMetadata": "infused"
|
|
4304
|
-
}
|
|
4305
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
4306
|
-
"stability": "experimental",
|
|
4307
|
-
"summary": "Defines the input/output formats and ser/de for a single DataFormat."
|
|
4307
|
+
}
|
|
4308
4308
|
},
|
|
4309
4309
|
"fqn": "@aws-cdk/aws-glue-alpha.DataFormat",
|
|
4310
4310
|
"initializer": {
|
|
@@ -4651,12 +4651,12 @@
|
|
|
4651
4651
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4652
4652
|
"base": "aws-cdk-lib.Resource",
|
|
4653
4653
|
"docs": {
|
|
4654
|
+
"stability": "experimental",
|
|
4655
|
+
"summary": "A Glue database.",
|
|
4656
|
+
"example": "new glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});",
|
|
4654
4657
|
"custom": {
|
|
4655
4658
|
"exampleMetadata": "infused"
|
|
4656
|
-
}
|
|
4657
|
-
"example": "new glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});",
|
|
4658
|
-
"stability": "experimental",
|
|
4659
|
-
"summary": "A Glue database."
|
|
4659
|
+
}
|
|
4660
4660
|
},
|
|
4661
4661
|
"fqn": "@aws-cdk/aws-glue-alpha.Database",
|
|
4662
4662
|
"initializer": {
|
|
@@ -4823,11 +4823,11 @@
|
|
|
4823
4823
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4824
4824
|
"datatype": true,
|
|
4825
4825
|
"docs": {
|
|
4826
|
+
"stability": "experimental",
|
|
4827
|
+
"example": "new glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});",
|
|
4826
4828
|
"custom": {
|
|
4827
4829
|
"exampleMetadata": "infused"
|
|
4828
|
-
}
|
|
4829
|
-
"example": "new glue.Database(this, 'MyDatabase', {\n databaseName: 'my_database',\n});",
|
|
4830
|
-
"stability": "experimental"
|
|
4830
|
+
}
|
|
4831
4831
|
},
|
|
4832
4832
|
"fqn": "@aws-cdk/aws-glue-alpha.DatabaseProps",
|
|
4833
4833
|
"kind": "interface",
|
|
@@ -4878,13 +4878,13 @@
|
|
|
4878
4878
|
"@aws-cdk/aws-glue-alpha.GlueVersion": {
|
|
4879
4879
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
4880
4880
|
"docs": {
|
|
4881
|
-
"custom": {
|
|
4882
|
-
"exampleMetadata": "infused"
|
|
4883
|
-
},
|
|
4884
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
4885
4881
|
"see": "https://docs.aws.amazon.com/glue/latest/dg/add-job.html.\n\nIf you need to use a GlueVersion that doesn't exist as a static member, you\ncan instantiate a `GlueVersion` object, e.g: `GlueVersion.of('1.5')`.",
|
|
4886
4882
|
"stability": "experimental",
|
|
4887
|
-
"summary": "AWS Glue version determines the versions of Apache Spark and Python that are available to the job."
|
|
4883
|
+
"summary": "AWS Glue version determines the versions of Apache Spark and Python that are available to the job.",
|
|
4884
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
4885
|
+
"custom": {
|
|
4886
|
+
"exampleMetadata": "infused"
|
|
4887
|
+
}
|
|
4888
4888
|
},
|
|
4889
4889
|
"fqn": "@aws-cdk/aws-glue-alpha.GlueVersion",
|
|
4890
4890
|
"kind": "class",
|
|
@@ -5756,12 +5756,12 @@
|
|
|
5756
5756
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
5757
5757
|
"base": "aws-cdk-lib.Resource",
|
|
5758
5758
|
"docs": {
|
|
5759
|
+
"stability": "experimental",
|
|
5760
|
+
"summary": "A Glue Job.",
|
|
5761
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
5759
5762
|
"custom": {
|
|
5760
5763
|
"exampleMetadata": "infused"
|
|
5761
|
-
}
|
|
5762
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
5763
|
-
"stability": "experimental",
|
|
5764
|
-
"summary": "A Glue Job."
|
|
5764
|
+
}
|
|
5765
5765
|
},
|
|
5766
5766
|
"fqn": "@aws-cdk/aws-glue-alpha.Job",
|
|
5767
5767
|
"initializer": {
|
|
@@ -6327,12 +6327,12 @@
|
|
|
6327
6327
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
6328
6328
|
"datatype": true,
|
|
6329
6329
|
"docs": {
|
|
6330
|
+
"stability": "experimental",
|
|
6331
|
+
"summary": "Job bookmarks encryption configuration.",
|
|
6332
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
6330
6333
|
"custom": {
|
|
6331
6334
|
"exampleMetadata": "infused"
|
|
6332
|
-
}
|
|
6333
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
6334
|
-
"stability": "experimental",
|
|
6335
|
-
"summary": "Job bookmarks encryption configuration."
|
|
6335
|
+
}
|
|
6336
6336
|
},
|
|
6337
6337
|
"fqn": "@aws-cdk/aws-glue-alpha.JobBookmarksEncryption",
|
|
6338
6338
|
"kind": "interface",
|
|
@@ -6382,13 +6382,13 @@
|
|
|
6382
6382
|
"@aws-cdk/aws-glue-alpha.JobBookmarksEncryptionMode": {
|
|
6383
6383
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
6384
6384
|
"docs": {
|
|
6385
|
-
"custom": {
|
|
6386
|
-
"exampleMetadata": "infused"
|
|
6387
|
-
},
|
|
6388
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
6389
6385
|
"see": "https://docs.aws.amazon.com/glue/latest/webapi/API_JobBookmarksEncryption.html#Glue-Type-JobBookmarksEncryption-JobBookmarksEncryptionMode",
|
|
6390
6386
|
"stability": "experimental",
|
|
6391
|
-
"summary": "Encryption mode for Job Bookmarks."
|
|
6387
|
+
"summary": "Encryption mode for Job Bookmarks.",
|
|
6388
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
6389
|
+
"custom": {
|
|
6390
|
+
"exampleMetadata": "infused"
|
|
6391
|
+
}
|
|
6392
6392
|
},
|
|
6393
6393
|
"fqn": "@aws-cdk/aws-glue-alpha.JobBookmarksEncryptionMode",
|
|
6394
6394
|
"kind": "enum",
|
|
@@ -6412,18 +6412,18 @@
|
|
|
6412
6412
|
"@aws-cdk/aws-glue-alpha.JobExecutable": {
|
|
6413
6413
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
6414
6414
|
"docs": {
|
|
6415
|
+
"stability": "experimental",
|
|
6416
|
+
"summary": "The executable properties related to the Glue job's GlueVersion, JobType and code.",
|
|
6417
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
6415
6418
|
"custom": {
|
|
6416
6419
|
"exampleMetadata": "infused"
|
|
6417
|
-
}
|
|
6418
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
6419
|
-
"stability": "experimental",
|
|
6420
|
-
"summary": "The executable properties related to the Glue job's GlueVersion, JobType and code."
|
|
6420
|
+
}
|
|
6421
6421
|
},
|
|
6422
6422
|
"fqn": "@aws-cdk/aws-glue-alpha.JobExecutable",
|
|
6423
6423
|
"kind": "class",
|
|
6424
6424
|
"locationInModule": {
|
|
6425
6425
|
"filename": "lib/job-executable.ts",
|
|
6426
|
-
"line":
|
|
6426
|
+
"line": 212
|
|
6427
6427
|
},
|
|
6428
6428
|
"methods": [
|
|
6429
6429
|
{
|
|
@@ -6433,7 +6433,7 @@
|
|
|
6433
6433
|
},
|
|
6434
6434
|
"locationInModule": {
|
|
6435
6435
|
"filename": "lib/job-executable.ts",
|
|
6436
|
-
"line":
|
|
6436
|
+
"line": 284
|
|
6437
6437
|
},
|
|
6438
6438
|
"name": "of",
|
|
6439
6439
|
"parameters": [
|
|
@@ -6461,7 +6461,7 @@
|
|
|
6461
6461
|
},
|
|
6462
6462
|
"locationInModule": {
|
|
6463
6463
|
"filename": "lib/job-executable.ts",
|
|
6464
|
-
"line":
|
|
6464
|
+
"line": 245
|
|
6465
6465
|
},
|
|
6466
6466
|
"name": "pythonEtl",
|
|
6467
6467
|
"parameters": [
|
|
@@ -6489,7 +6489,7 @@
|
|
|
6489
6489
|
},
|
|
6490
6490
|
"locationInModule": {
|
|
6491
6491
|
"filename": "lib/job-executable.ts",
|
|
6492
|
-
"line":
|
|
6492
|
+
"line": 271
|
|
6493
6493
|
},
|
|
6494
6494
|
"name": "pythonShell",
|
|
6495
6495
|
"parameters": [
|
|
@@ -6517,7 +6517,7 @@
|
|
|
6517
6517
|
},
|
|
6518
6518
|
"locationInModule": {
|
|
6519
6519
|
"filename": "lib/job-executable.ts",
|
|
6520
|
-
"line":
|
|
6520
|
+
"line": 258
|
|
6521
6521
|
},
|
|
6522
6522
|
"name": "pythonStreaming",
|
|
6523
6523
|
"parameters": [
|
|
@@ -6545,7 +6545,7 @@
|
|
|
6545
6545
|
},
|
|
6546
6546
|
"locationInModule": {
|
|
6547
6547
|
"filename": "lib/job-executable.ts",
|
|
6548
|
-
"line":
|
|
6548
|
+
"line": 219
|
|
6549
6549
|
},
|
|
6550
6550
|
"name": "scalaEtl",
|
|
6551
6551
|
"parameters": [
|
|
@@ -6573,7 +6573,7 @@
|
|
|
6573
6573
|
},
|
|
6574
6574
|
"locationInModule": {
|
|
6575
6575
|
"filename": "lib/job-executable.ts",
|
|
6576
|
-
"line":
|
|
6576
|
+
"line": 232
|
|
6577
6577
|
},
|
|
6578
6578
|
"name": "scalaStreaming",
|
|
6579
6579
|
"parameters": [
|
|
@@ -6601,7 +6601,7 @@
|
|
|
6601
6601
|
},
|
|
6602
6602
|
"locationInModule": {
|
|
6603
6603
|
"filename": "lib/job-executable.ts",
|
|
6604
|
-
"line":
|
|
6604
|
+
"line": 317
|
|
6605
6605
|
},
|
|
6606
6606
|
"name": "bind",
|
|
6607
6607
|
"returns": {
|
|
@@ -6629,7 +6629,7 @@
|
|
|
6629
6629
|
"kind": "interface",
|
|
6630
6630
|
"locationInModule": {
|
|
6631
6631
|
"filename": "lib/job-executable.ts",
|
|
6632
|
-
"line":
|
|
6632
|
+
"line": 325
|
|
6633
6633
|
},
|
|
6634
6634
|
"name": "JobExecutableConfig",
|
|
6635
6635
|
"properties": [
|
|
@@ -6643,7 +6643,7 @@
|
|
|
6643
6643
|
"immutable": true,
|
|
6644
6644
|
"locationInModule": {
|
|
6645
6645
|
"filename": "lib/job-executable.ts",
|
|
6646
|
-
"line":
|
|
6646
|
+
"line": 331
|
|
6647
6647
|
},
|
|
6648
6648
|
"name": "glueVersion",
|
|
6649
6649
|
"type": {
|
|
@@ -6660,7 +6660,7 @@
|
|
|
6660
6660
|
"immutable": true,
|
|
6661
6661
|
"locationInModule": {
|
|
6662
6662
|
"filename": "lib/job-executable.ts",
|
|
6663
|
-
"line":
|
|
6663
|
+
"line": 338
|
|
6664
6664
|
},
|
|
6665
6665
|
"name": "language",
|
|
6666
6666
|
"type": {
|
|
@@ -6676,7 +6676,7 @@
|
|
|
6676
6676
|
"immutable": true,
|
|
6677
6677
|
"locationInModule": {
|
|
6678
6678
|
"filename": "lib/job-executable.ts",
|
|
6679
|
-
"line":
|
|
6679
|
+
"line": 355
|
|
6680
6680
|
},
|
|
6681
6681
|
"name": "script",
|
|
6682
6682
|
"type": {
|
|
@@ -6692,7 +6692,7 @@
|
|
|
6692
6692
|
"immutable": true,
|
|
6693
6693
|
"locationInModule": {
|
|
6694
6694
|
"filename": "lib/job-executable.ts",
|
|
6695
|
-
"line":
|
|
6695
|
+
"line": 343
|
|
6696
6696
|
},
|
|
6697
6697
|
"name": "type",
|
|
6698
6698
|
"type": {
|
|
@@ -6711,7 +6711,7 @@
|
|
|
6711
6711
|
"immutable": true,
|
|
6712
6712
|
"locationInModule": {
|
|
6713
6713
|
"filename": "lib/job-executable.ts",
|
|
6714
|
-
"line":
|
|
6714
|
+
"line": 364
|
|
6715
6715
|
},
|
|
6716
6716
|
"name": "className",
|
|
6717
6717
|
"optional": true,
|
|
@@ -6730,7 +6730,7 @@
|
|
|
6730
6730
|
"immutable": true,
|
|
6731
6731
|
"locationInModule": {
|
|
6732
6732
|
"filename": "lib/job-executable.ts",
|
|
6733
|
-
"line":
|
|
6733
|
+
"line": 391
|
|
6734
6734
|
},
|
|
6735
6735
|
"name": "extraFiles",
|
|
6736
6736
|
"optional": true,
|
|
@@ -6754,7 +6754,7 @@
|
|
|
6754
6754
|
"immutable": true,
|
|
6755
6755
|
"locationInModule": {
|
|
6756
6756
|
"filename": "lib/job-executable.ts",
|
|
6757
|
-
"line":
|
|
6757
|
+
"line": 373
|
|
6758
6758
|
},
|
|
6759
6759
|
"name": "extraJars",
|
|
6760
6760
|
"optional": true,
|
|
@@ -6778,7 +6778,7 @@
|
|
|
6778
6778
|
"immutable": true,
|
|
6779
6779
|
"locationInModule": {
|
|
6780
6780
|
"filename": "lib/job-executable.ts",
|
|
6781
|
-
"line":
|
|
6781
|
+
"line": 400
|
|
6782
6782
|
},
|
|
6783
6783
|
"name": "extraJarsFirst",
|
|
6784
6784
|
"optional": true,
|
|
@@ -6797,7 +6797,7 @@
|
|
|
6797
6797
|
"immutable": true,
|
|
6798
6798
|
"locationInModule": {
|
|
6799
6799
|
"filename": "lib/job-executable.ts",
|
|
6800
|
-
"line":
|
|
6800
|
+
"line": 382
|
|
6801
6801
|
},
|
|
6802
6802
|
"name": "extraPythonFiles",
|
|
6803
6803
|
"optional": true,
|
|
@@ -6820,7 +6820,7 @@
|
|
|
6820
6820
|
"immutable": true,
|
|
6821
6821
|
"locationInModule": {
|
|
6822
6822
|
"filename": "lib/job-executable.ts",
|
|
6823
|
-
"line":
|
|
6823
|
+
"line": 350
|
|
6824
6824
|
},
|
|
6825
6825
|
"name": "pythonVersion",
|
|
6826
6826
|
"optional": true,
|
|
@@ -6866,12 +6866,12 @@
|
|
|
6866
6866
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
6867
6867
|
"datatype": true,
|
|
6868
6868
|
"docs": {
|
|
6869
|
+
"stability": "experimental",
|
|
6870
|
+
"summary": "Construction properties for {@link Job}.",
|
|
6871
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
6869
6872
|
"custom": {
|
|
6870
6873
|
"exampleMetadata": "infused"
|
|
6871
|
-
}
|
|
6872
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
6873
|
-
"stability": "experimental",
|
|
6874
|
-
"summary": "Construction properties for {@link Job}."
|
|
6874
|
+
}
|
|
6875
6875
|
},
|
|
6876
6876
|
"fqn": "@aws-cdk/aws-glue-alpha.JobProps",
|
|
6877
6877
|
"kind": "interface",
|
|
@@ -7312,7 +7312,7 @@
|
|
|
7312
7312
|
"kind": "class",
|
|
7313
7313
|
"locationInModule": {
|
|
7314
7314
|
"filename": "lib/job-executable.ts",
|
|
7315
|
-
"line":
|
|
7315
|
+
"line": 91
|
|
7316
7316
|
},
|
|
7317
7317
|
"methods": [
|
|
7318
7318
|
{
|
|
@@ -7322,7 +7322,7 @@
|
|
|
7322
7322
|
},
|
|
7323
7323
|
"locationInModule": {
|
|
7324
7324
|
"filename": "lib/job-executable.ts",
|
|
7325
|
-
"line":
|
|
7325
|
+
"line": 111
|
|
7326
7326
|
},
|
|
7327
7327
|
"name": "of",
|
|
7328
7328
|
"parameters": [
|
|
@@ -7355,7 +7355,7 @@
|
|
|
7355
7355
|
"immutable": true,
|
|
7356
7356
|
"locationInModule": {
|
|
7357
7357
|
"filename": "lib/job-executable.ts",
|
|
7358
|
-
"line":
|
|
7358
|
+
"line": 95
|
|
7359
7359
|
},
|
|
7360
7360
|
"name": "ETL",
|
|
7361
7361
|
"static": true,
|
|
@@ -7372,7 +7372,7 @@
|
|
|
7372
7372
|
"immutable": true,
|
|
7373
7373
|
"locationInModule": {
|
|
7374
7374
|
"filename": "lib/job-executable.ts",
|
|
7375
|
-
"line":
|
|
7375
|
+
"line": 105
|
|
7376
7376
|
},
|
|
7377
7377
|
"name": "PYTHON_SHELL",
|
|
7378
7378
|
"static": true,
|
|
@@ -7389,7 +7389,7 @@
|
|
|
7389
7389
|
"immutable": true,
|
|
7390
7390
|
"locationInModule": {
|
|
7391
7391
|
"filename": "lib/job-executable.ts",
|
|
7392
|
-
"line":
|
|
7392
|
+
"line": 100
|
|
7393
7393
|
},
|
|
7394
7394
|
"name": "STREAMING",
|
|
7395
7395
|
"static": true,
|
|
@@ -7405,7 +7405,7 @@
|
|
|
7405
7405
|
"immutable": true,
|
|
7406
7406
|
"locationInModule": {
|
|
7407
7407
|
"filename": "lib/job-executable.ts",
|
|
7408
|
-
"line":
|
|
7408
|
+
"line": 118
|
|
7409
7409
|
},
|
|
7410
7410
|
"name": "name",
|
|
7411
7411
|
"type": {
|
|
@@ -7575,12 +7575,12 @@
|
|
|
7575
7575
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
7576
7576
|
"datatype": true,
|
|
7577
7577
|
"docs": {
|
|
7578
|
+
"stability": "experimental",
|
|
7579
|
+
"summary": "Properties of a Partition Index.",
|
|
7580
|
+
"example": "declare const myTable: glue.Table;\nmyTable.addPartitionIndex({\n indexName: 'my-index',\n keyNames: ['year'],\n});",
|
|
7578
7581
|
"custom": {
|
|
7579
7582
|
"exampleMetadata": "infused"
|
|
7580
|
-
}
|
|
7581
|
-
"example": "declare const myTable: glue.Table;\nmyTable.addPartitionIndex({\n indexName: 'my-index',\n keyNames: ['year'],\n});",
|
|
7582
|
-
"stability": "experimental",
|
|
7583
|
-
"summary": "Properties of a Partition Index."
|
|
7583
|
+
}
|
|
7584
7584
|
},
|
|
7585
7585
|
"fqn": "@aws-cdk/aws-glue-alpha.PartitionIndex",
|
|
7586
7586
|
"kind": "interface",
|
|
@@ -7637,18 +7637,18 @@
|
|
|
7637
7637
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
7638
7638
|
"datatype": true,
|
|
7639
7639
|
"docs": {
|
|
7640
|
+
"stability": "experimental",
|
|
7641
|
+
"summary": "Props for creating a Python shell job executable.",
|
|
7642
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
7640
7643
|
"custom": {
|
|
7641
7644
|
"exampleMetadata": "infused"
|
|
7642
|
-
}
|
|
7643
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'PythonShellJob', {\n executable: glue.JobExecutable.pythonShell({\n glueVersion: glue.GlueVersion.V1_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromBucket(bucket, 'script.py'),\n }),\n description: 'an example Python Shell job',\n});",
|
|
7644
|
-
"stability": "experimental",
|
|
7645
|
-
"summary": "Props for creating a Python shell job executable."
|
|
7645
|
+
}
|
|
7646
7646
|
},
|
|
7647
7647
|
"fqn": "@aws-cdk/aws-glue-alpha.PythonShellExecutableProps",
|
|
7648
7648
|
"kind": "interface",
|
|
7649
7649
|
"locationInModule": {
|
|
7650
7650
|
"filename": "lib/job-executable.ts",
|
|
7651
|
-
"line":
|
|
7651
|
+
"line": 207
|
|
7652
7652
|
},
|
|
7653
7653
|
"name": "PythonShellExecutableProps",
|
|
7654
7654
|
"properties": [
|
|
@@ -7662,7 +7662,7 @@
|
|
|
7662
7662
|
"immutable": true,
|
|
7663
7663
|
"locationInModule": {
|
|
7664
7664
|
"filename": "lib/job-executable.ts",
|
|
7665
|
-
"line":
|
|
7665
|
+
"line": 148
|
|
7666
7666
|
},
|
|
7667
7667
|
"name": "glueVersion",
|
|
7668
7668
|
"type": {
|
|
@@ -7678,7 +7678,7 @@
|
|
|
7678
7678
|
"immutable": true,
|
|
7679
7679
|
"locationInModule": {
|
|
7680
7680
|
"filename": "lib/job-executable.ts",
|
|
7681
|
-
"line":
|
|
7681
|
+
"line": 129
|
|
7682
7682
|
},
|
|
7683
7683
|
"name": "pythonVersion",
|
|
7684
7684
|
"type": {
|
|
@@ -7694,7 +7694,7 @@
|
|
|
7694
7694
|
"immutable": true,
|
|
7695
7695
|
"locationInModule": {
|
|
7696
7696
|
"filename": "lib/job-executable.ts",
|
|
7697
|
-
"line":
|
|
7697
|
+
"line": 153
|
|
7698
7698
|
},
|
|
7699
7699
|
"name": "script",
|
|
7700
7700
|
"type": {
|
|
@@ -7713,7 +7713,7 @@
|
|
|
7713
7713
|
"immutable": true,
|
|
7714
7714
|
"locationInModule": {
|
|
7715
7715
|
"filename": "lib/job-executable.ts",
|
|
7716
|
-
"line":
|
|
7716
|
+
"line": 163
|
|
7717
7717
|
},
|
|
7718
7718
|
"name": "extraFiles",
|
|
7719
7719
|
"optional": true,
|
|
@@ -7738,7 +7738,7 @@
|
|
|
7738
7738
|
"immutable": true,
|
|
7739
7739
|
"locationInModule": {
|
|
7740
7740
|
"filename": "lib/job-executable.ts",
|
|
7741
|
-
"line":
|
|
7741
|
+
"line": 139
|
|
7742
7742
|
},
|
|
7743
7743
|
"name": "extraPythonFiles",
|
|
7744
7744
|
"optional": true,
|
|
@@ -7758,18 +7758,18 @@
|
|
|
7758
7758
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
7759
7759
|
"datatype": true,
|
|
7760
7760
|
"docs": {
|
|
7761
|
+
"stability": "experimental",
|
|
7762
|
+
"summary": "Props for creating a Python Spark (ETL or Streaming) job executable.",
|
|
7763
|
+
"example": "new glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});",
|
|
7761
7764
|
"custom": {
|
|
7762
7765
|
"exampleMetadata": "infused"
|
|
7763
|
-
}
|
|
7764
|
-
"example": "new glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});",
|
|
7765
|
-
"stability": "experimental",
|
|
7766
|
-
"summary": "Props for creating a Python Spark (ETL or Streaming) job executable."
|
|
7766
|
+
}
|
|
7767
7767
|
},
|
|
7768
7768
|
"fqn": "@aws-cdk/aws-glue-alpha.PythonSparkJobExecutableProps",
|
|
7769
7769
|
"kind": "interface",
|
|
7770
7770
|
"locationInModule": {
|
|
7771
7771
|
"filename": "lib/job-executable.ts",
|
|
7772
|
-
"line":
|
|
7772
|
+
"line": 202
|
|
7773
7773
|
},
|
|
7774
7774
|
"name": "PythonSparkJobExecutableProps",
|
|
7775
7775
|
"properties": [
|
|
@@ -7783,7 +7783,7 @@
|
|
|
7783
7783
|
"immutable": true,
|
|
7784
7784
|
"locationInModule": {
|
|
7785
7785
|
"filename": "lib/job-executable.ts",
|
|
7786
|
-
"line":
|
|
7786
|
+
"line": 148
|
|
7787
7787
|
},
|
|
7788
7788
|
"name": "glueVersion",
|
|
7789
7789
|
"type": {
|
|
@@ -7799,7 +7799,7 @@
|
|
|
7799
7799
|
"immutable": true,
|
|
7800
7800
|
"locationInModule": {
|
|
7801
7801
|
"filename": "lib/job-executable.ts",
|
|
7802
|
-
"line":
|
|
7802
|
+
"line": 129
|
|
7803
7803
|
},
|
|
7804
7804
|
"name": "pythonVersion",
|
|
7805
7805
|
"type": {
|
|
@@ -7815,7 +7815,7 @@
|
|
|
7815
7815
|
"immutable": true,
|
|
7816
7816
|
"locationInModule": {
|
|
7817
7817
|
"filename": "lib/job-executable.ts",
|
|
7818
|
-
"line":
|
|
7818
|
+
"line": 153
|
|
7819
7819
|
},
|
|
7820
7820
|
"name": "script",
|
|
7821
7821
|
"type": {
|
|
@@ -7834,7 +7834,7 @@
|
|
|
7834
7834
|
"immutable": true,
|
|
7835
7835
|
"locationInModule": {
|
|
7836
7836
|
"filename": "lib/job-executable.ts",
|
|
7837
|
-
"line":
|
|
7837
|
+
"line": 163
|
|
7838
7838
|
},
|
|
7839
7839
|
"name": "extraFiles",
|
|
7840
7840
|
"optional": true,
|
|
@@ -7858,7 +7858,7 @@
|
|
|
7858
7858
|
"immutable": true,
|
|
7859
7859
|
"locationInModule": {
|
|
7860
7860
|
"filename": "lib/job-executable.ts",
|
|
7861
|
-
"line":
|
|
7861
|
+
"line": 175
|
|
7862
7862
|
},
|
|
7863
7863
|
"name": "extraJars",
|
|
7864
7864
|
"optional": true,
|
|
@@ -7882,7 +7882,7 @@
|
|
|
7882
7882
|
"immutable": true,
|
|
7883
7883
|
"locationInModule": {
|
|
7884
7884
|
"filename": "lib/job-executable.ts",
|
|
7885
|
-
"line":
|
|
7885
|
+
"line": 184
|
|
7886
7886
|
},
|
|
7887
7887
|
"name": "extraJarsFirst",
|
|
7888
7888
|
"optional": true,
|
|
@@ -7902,7 +7902,7 @@
|
|
|
7902
7902
|
"immutable": true,
|
|
7903
7903
|
"locationInModule": {
|
|
7904
7904
|
"filename": "lib/job-executable.ts",
|
|
7905
|
-
"line":
|
|
7905
|
+
"line": 139
|
|
7906
7906
|
},
|
|
7907
7907
|
"name": "extraPythonFiles",
|
|
7908
7908
|
"optional": true,
|
|
@@ -7921,12 +7921,12 @@
|
|
|
7921
7921
|
"@aws-cdk/aws-glue-alpha.PythonVersion": {
|
|
7922
7922
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
7923
7923
|
"docs": {
|
|
7924
|
+
"stability": "experimental",
|
|
7925
|
+
"summary": "Python version.",
|
|
7926
|
+
"example": "new glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});",
|
|
7924
7927
|
"custom": {
|
|
7925
7928
|
"exampleMetadata": "infused"
|
|
7926
|
-
}
|
|
7927
|
-
"example": "new glue.Job(this, 'PythonSparkStreamingJob', {\n executable: glue.JobExecutable.pythonStreaming({\n glueVersion: glue.GlueVersion.V2_0,\n pythonVersion: glue.PythonVersion.THREE,\n script: glue.Code.fromAsset(path.join(__dirname, 'job-script/hello_world.py')),\n }),\n description: 'an example Python Streaming job',\n});",
|
|
7928
|
-
"stability": "experimental",
|
|
7929
|
-
"summary": "Python version."
|
|
7929
|
+
}
|
|
7930
7930
|
},
|
|
7931
7931
|
"fqn": "@aws-cdk/aws-glue-alpha.PythonVersion",
|
|
7932
7932
|
"kind": "enum",
|
|
@@ -7948,6 +7948,13 @@
|
|
|
7948
7948
|
"summary": "Python 3 (the exact version depends on GlueVersion and JobCommand used)."
|
|
7949
7949
|
},
|
|
7950
7950
|
"name": "THREE"
|
|
7951
|
+
},
|
|
7952
|
+
{
|
|
7953
|
+
"docs": {
|
|
7954
|
+
"stability": "experimental",
|
|
7955
|
+
"summary": "Python 3.9 (the exact version depends on GlueVersion and JobCommand used)."
|
|
7956
|
+
},
|
|
7957
|
+
"name": "THREE_NINE"
|
|
7951
7958
|
}
|
|
7952
7959
|
],
|
|
7953
7960
|
"name": "PythonVersion",
|
|
@@ -8033,12 +8040,12 @@
|
|
|
8033
8040
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8034
8041
|
"datatype": true,
|
|
8035
8042
|
"docs": {
|
|
8043
|
+
"stability": "experimental",
|
|
8044
|
+
"summary": "S3 encryption configuration.",
|
|
8045
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8036
8046
|
"custom": {
|
|
8037
8047
|
"exampleMetadata": "infused"
|
|
8038
|
-
}
|
|
8039
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8040
|
-
"stability": "experimental",
|
|
8041
|
-
"summary": "S3 encryption configuration."
|
|
8048
|
+
}
|
|
8042
8049
|
},
|
|
8043
8050
|
"fqn": "@aws-cdk/aws-glue-alpha.S3Encryption",
|
|
8044
8051
|
"kind": "interface",
|
|
@@ -8088,13 +8095,13 @@
|
|
|
8088
8095
|
"@aws-cdk/aws-glue-alpha.S3EncryptionMode": {
|
|
8089
8096
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8090
8097
|
"docs": {
|
|
8091
|
-
"custom": {
|
|
8092
|
-
"exampleMetadata": "infused"
|
|
8093
|
-
},
|
|
8094
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8095
8098
|
"see": "https://docs.aws.amazon.com/glue/latest/webapi/API_S3Encryption.html#Glue-Type-S3Encryption-S3EncryptionMode",
|
|
8096
8099
|
"stability": "experimental",
|
|
8097
|
-
"summary": "Encryption mode for S3."
|
|
8100
|
+
"summary": "Encryption mode for S3.",
|
|
8101
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8102
|
+
"custom": {
|
|
8103
|
+
"exampleMetadata": "infused"
|
|
8104
|
+
}
|
|
8098
8105
|
},
|
|
8099
8106
|
"fqn": "@aws-cdk/aws-glue-alpha.S3EncryptionMode",
|
|
8100
8107
|
"kind": "enum",
|
|
@@ -8127,18 +8134,18 @@
|
|
|
8127
8134
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8128
8135
|
"datatype": true,
|
|
8129
8136
|
"docs": {
|
|
8137
|
+
"stability": "experimental",
|
|
8138
|
+
"summary": "Props for creating a Scala Spark (ETL or Streaming) job executable.",
|
|
8139
|
+
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'ScalaSparkEtlJob', {\n executable: glue.JobExecutable.scalaEtl({\n glueVersion: glue.GlueVersion.V2_0,\n script: glue.Code.fromBucket(bucket, 'src/com/example/HelloWorld.scala'),\n className: 'com.example.HelloWorld',\n extraJars: [glue.Code.fromBucket(bucket, 'jars/HelloWorld.jar')],\n }),\n description: 'an example Scala ETL job',\n});",
|
|
8130
8140
|
"custom": {
|
|
8131
8141
|
"exampleMetadata": "infused"
|
|
8132
|
-
}
|
|
8133
|
-
"example": "declare const bucket: s3.Bucket;\nnew glue.Job(this, 'ScalaSparkEtlJob', {\n executable: glue.JobExecutable.scalaEtl({\n glueVersion: glue.GlueVersion.V2_0,\n script: glue.Code.fromBucket(bucket, 'src/com/example/HelloWorld.scala'),\n className: 'com.example.HelloWorld',\n extraJars: [glue.Code.fromBucket(bucket, 'jars/HelloWorld.jar')],\n }),\n description: 'an example Scala ETL job',\n});",
|
|
8134
|
-
"stability": "experimental",
|
|
8135
|
-
"summary": "Props for creating a Scala Spark (ETL or Streaming) job executable."
|
|
8142
|
+
}
|
|
8136
8143
|
},
|
|
8137
8144
|
"fqn": "@aws-cdk/aws-glue-alpha.ScalaJobExecutableProps",
|
|
8138
8145
|
"kind": "interface",
|
|
8139
8146
|
"locationInModule": {
|
|
8140
8147
|
"filename": "lib/job-executable.ts",
|
|
8141
|
-
"line":
|
|
8148
|
+
"line": 190
|
|
8142
8149
|
},
|
|
8143
8150
|
"name": "ScalaJobExecutableProps",
|
|
8144
8151
|
"properties": [
|
|
@@ -8152,7 +8159,7 @@
|
|
|
8152
8159
|
"immutable": true,
|
|
8153
8160
|
"locationInModule": {
|
|
8154
8161
|
"filename": "lib/job-executable.ts",
|
|
8155
|
-
"line":
|
|
8162
|
+
"line": 196
|
|
8156
8163
|
},
|
|
8157
8164
|
"name": "className",
|
|
8158
8165
|
"type": {
|
|
@@ -8169,7 +8176,7 @@
|
|
|
8169
8176
|
"immutable": true,
|
|
8170
8177
|
"locationInModule": {
|
|
8171
8178
|
"filename": "lib/job-executable.ts",
|
|
8172
|
-
"line":
|
|
8179
|
+
"line": 148
|
|
8173
8180
|
},
|
|
8174
8181
|
"name": "glueVersion",
|
|
8175
8182
|
"type": {
|
|
@@ -8185,7 +8192,7 @@
|
|
|
8185
8192
|
"immutable": true,
|
|
8186
8193
|
"locationInModule": {
|
|
8187
8194
|
"filename": "lib/job-executable.ts",
|
|
8188
|
-
"line":
|
|
8195
|
+
"line": 153
|
|
8189
8196
|
},
|
|
8190
8197
|
"name": "script",
|
|
8191
8198
|
"type": {
|
|
@@ -8204,7 +8211,7 @@
|
|
|
8204
8211
|
"immutable": true,
|
|
8205
8212
|
"locationInModule": {
|
|
8206
8213
|
"filename": "lib/job-executable.ts",
|
|
8207
|
-
"line":
|
|
8214
|
+
"line": 163
|
|
8208
8215
|
},
|
|
8209
8216
|
"name": "extraFiles",
|
|
8210
8217
|
"optional": true,
|
|
@@ -8228,7 +8235,7 @@
|
|
|
8228
8235
|
"immutable": true,
|
|
8229
8236
|
"locationInModule": {
|
|
8230
8237
|
"filename": "lib/job-executable.ts",
|
|
8231
|
-
"line":
|
|
8238
|
+
"line": 175
|
|
8232
8239
|
},
|
|
8233
8240
|
"name": "extraJars",
|
|
8234
8241
|
"optional": true,
|
|
@@ -8252,7 +8259,7 @@
|
|
|
8252
8259
|
"immutable": true,
|
|
8253
8260
|
"locationInModule": {
|
|
8254
8261
|
"filename": "lib/job-executable.ts",
|
|
8255
|
-
"line":
|
|
8262
|
+
"line": 184
|
|
8256
8263
|
},
|
|
8257
8264
|
"name": "extraJarsFirst",
|
|
8258
8265
|
"optional": true,
|
|
@@ -8266,12 +8273,12 @@
|
|
|
8266
8273
|
"@aws-cdk/aws-glue-alpha.Schema": {
|
|
8267
8274
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8268
8275
|
"docs": {
|
|
8276
|
+
"see": "https://docs.aws.amazon.com/athena/latest/ug/data-types.html",
|
|
8277
|
+
"stability": "experimental",
|
|
8278
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
8269
8279
|
"custom": {
|
|
8270
8280
|
"exampleMetadata": "infused"
|
|
8271
|
-
}
|
|
8272
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
8273
|
-
"see": "https://docs.aws.amazon.com/athena/latest/ug/data-types.html",
|
|
8274
|
-
"stability": "experimental"
|
|
8281
|
+
}
|
|
8275
8282
|
},
|
|
8276
8283
|
"fqn": "@aws-cdk/aws-glue-alpha.Schema",
|
|
8277
8284
|
"initializer": {
|
|
@@ -8671,13 +8678,13 @@
|
|
|
8671
8678
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8672
8679
|
"base": "aws-cdk-lib.Resource",
|
|
8673
8680
|
"docs": {
|
|
8674
|
-
"custom": {
|
|
8675
|
-
"exampleMetadata": "infused"
|
|
8676
|
-
},
|
|
8677
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8678
8681
|
"remarks": "The following scenarios show some of the ways that you can use a security configuration.\n- Attach a security configuration to an AWS Glue crawler to write encrypted Amazon CloudWatch Logs.\n- Attach a security configuration to an extract, transform, and load (ETL) job to write encrypted Amazon Simple Storage Service (Amazon S3) targets and encrypted CloudWatch Logs.\n- Attach a security configuration to an ETL job to write its jobs bookmarks as encrypted Amazon S3 data.\n- Attach a security configuration to a development endpoint to write encrypted Amazon S3 targets.",
|
|
8679
8682
|
"stability": "experimental",
|
|
8680
|
-
"summary": "A security configuration is a set of security properties that can be used by AWS Glue to encrypt data at rest."
|
|
8683
|
+
"summary": "A security configuration is a set of security properties that can be used by AWS Glue to encrypt data at rest.",
|
|
8684
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8685
|
+
"custom": {
|
|
8686
|
+
"exampleMetadata": "infused"
|
|
8687
|
+
}
|
|
8681
8688
|
},
|
|
8682
8689
|
"fqn": "@aws-cdk/aws-glue-alpha.SecurityConfiguration",
|
|
8683
8690
|
"initializer": {
|
|
@@ -8841,12 +8848,12 @@
|
|
|
8841
8848
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
8842
8849
|
"datatype": true,
|
|
8843
8850
|
"docs": {
|
|
8851
|
+
"stability": "experimental",
|
|
8852
|
+
"summary": "Constructions properties of {@link SecurityConfiguration}.",
|
|
8853
|
+
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8844
8854
|
"custom": {
|
|
8845
8855
|
"exampleMetadata": "infused"
|
|
8846
|
-
}
|
|
8847
|
-
"example": "new glue.SecurityConfiguration(this, 'MySecurityConfiguration', {\n securityConfigurationName: 'name',\n cloudWatchEncryption: {\n mode: glue.CloudWatchEncryptionMode.KMS,\n },\n jobBookmarksEncryption: {\n mode: glue.JobBookmarksEncryptionMode.CLIENT_SIDE_KMS,\n },\n s3Encryption: {\n mode: glue.S3EncryptionMode.KMS,\n },\n});",
|
|
8848
|
-
"stability": "experimental",
|
|
8849
|
-
"summary": "Constructions properties of {@link SecurityConfiguration}."
|
|
8856
|
+
}
|
|
8850
8857
|
},
|
|
8851
8858
|
"fqn": "@aws-cdk/aws-glue-alpha.SecurityConfigurationProps",
|
|
8852
8859
|
"kind": "interface",
|
|
@@ -9288,12 +9295,12 @@
|
|
|
9288
9295
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
9289
9296
|
"base": "aws-cdk-lib.Resource",
|
|
9290
9297
|
"docs": {
|
|
9298
|
+
"stability": "experimental",
|
|
9299
|
+
"summary": "A Glue table.",
|
|
9300
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
9291
9301
|
"custom": {
|
|
9292
9302
|
"exampleMetadata": "infused"
|
|
9293
|
-
}
|
|
9294
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
9295
|
-
"stability": "experimental",
|
|
9296
|
-
"summary": "A Glue table."
|
|
9303
|
+
}
|
|
9297
9304
|
},
|
|
9298
9305
|
"fqn": "@aws-cdk/aws-glue-alpha.Table",
|
|
9299
9306
|
"initializer": {
|
|
@@ -9850,13 +9857,13 @@
|
|
|
9850
9857
|
"@aws-cdk/aws-glue-alpha.TableEncryption": {
|
|
9851
9858
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
9852
9859
|
"docs": {
|
|
9853
|
-
"custom": {
|
|
9854
|
-
"exampleMetadata": "infused"
|
|
9855
|
-
},
|
|
9856
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.S3_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});",
|
|
9857
9860
|
"see": "https://docs.aws.amazon.com/athena/latest/ug/encryption.html",
|
|
9858
9861
|
"stability": "experimental",
|
|
9859
|
-
"summary": "Encryption options for a Table."
|
|
9862
|
+
"summary": "Encryption options for a Table.",
|
|
9863
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n encryption: glue.TableEncryption.S3_MANAGED,\n // ...\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n dataFormat: glue.DataFormat.JSON,\n});",
|
|
9864
|
+
"custom": {
|
|
9865
|
+
"exampleMetadata": "infused"
|
|
9866
|
+
}
|
|
9860
9867
|
},
|
|
9861
9868
|
"fqn": "@aws-cdk/aws-glue-alpha.TableEncryption",
|
|
9862
9869
|
"kind": "enum",
|
|
@@ -9910,11 +9917,11 @@
|
|
|
9910
9917
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
9911
9918
|
"datatype": true,
|
|
9912
9919
|
"docs": {
|
|
9920
|
+
"stability": "experimental",
|
|
9921
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
9913
9922
|
"custom": {
|
|
9914
9923
|
"exampleMetadata": "infused"
|
|
9915
|
-
}
|
|
9916
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
9917
|
-
"stability": "experimental"
|
|
9924
|
+
}
|
|
9918
9925
|
},
|
|
9919
9926
|
"fqn": "@aws-cdk/aws-glue-alpha.TableProps",
|
|
9920
9927
|
"kind": "interface",
|
|
@@ -10194,12 +10201,12 @@
|
|
|
10194
10201
|
"assembly": "@aws-cdk/aws-glue-alpha",
|
|
10195
10202
|
"datatype": true,
|
|
10196
10203
|
"docs": {
|
|
10204
|
+
"stability": "experimental",
|
|
10205
|
+
"summary": "Represents a type of a column in a table schema.",
|
|
10206
|
+
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
10197
10207
|
"custom": {
|
|
10198
10208
|
"exampleMetadata": "infused"
|
|
10199
|
-
}
|
|
10200
|
-
"example": "declare const myDatabase: glue.Database;\nnew glue.Table(this, 'MyTable', {\n database: myDatabase,\n tableName: 'my_table',\n columns: [{\n name: 'col1',\n type: glue.Schema.STRING,\n }],\n partitionKeys: [{\n name: 'year',\n type: glue.Schema.SMALL_INT,\n }, {\n name: 'month',\n type: glue.Schema.SMALL_INT,\n }],\n dataFormat: glue.DataFormat.JSON,\n enablePartitionFiltering: true,\n});",
|
|
10201
|
-
"stability": "experimental",
|
|
10202
|
-
"summary": "Represents a type of a column in a table schema."
|
|
10209
|
+
}
|
|
10203
10210
|
},
|
|
10204
10211
|
"fqn": "@aws-cdk/aws-glue-alpha.Type",
|
|
10205
10212
|
"kind": "interface",
|
|
@@ -10365,6 +10372,6 @@
|
|
|
10365
10372
|
"symbolId": "lib/job:WorkerType"
|
|
10366
10373
|
}
|
|
10367
10374
|
},
|
|
10368
|
-
"version": "2.
|
|
10375
|
+
"version": "2.40.0-alpha.0",
|
|
10369
10376
|
"fingerprint": "**********"
|
|
10370
10377
|
}
|