aws-native logo
AWS Native v0.54.0, Mar 21 23

aws-native.athena.DataCatalog

Resource schema for AWS::Athena::DataCatalog

Example Usage

Example

using System.Collections.Generic;
using Pulumi;
using AwsNative = Pulumi.AwsNative;

return await Deployment.RunAsync(() => 
{
    var myAthenaDataCatalog = new AwsNative.Athena.DataCatalog("myAthenaDataCatalog", new()
    {
        Name = "MyCustomDataCatalog",
        Type = AwsNative.Athena.DataCatalogType.Hive,
        Description = "Custom Hive Catalog Description",
        Tags = new[]
        {
            new AwsNative.Athena.Inputs.DataCatalogTagArgs
            {
                Key = "key1",
                Value = "value1",
            },
            new AwsNative.Athena.Inputs.DataCatalogTagArgs
            {
                Key = "key2",
                Value = "value2",
            },
        },
        Parameters = 
        {
            { "metadata-function", "arn:aws:lambda:us-west-2:111122223333:function:lambdaname" },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/athena"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := athena.NewDataCatalog(ctx, "myAthenaDataCatalog", &athena.DataCatalogArgs{
			Name:        pulumi.String("MyCustomDataCatalog"),
			Type:        athena.DataCatalogTypeHive,
			Description: pulumi.String("Custom Hive Catalog Description"),
			Tags: []athena.DataCatalogTagArgs{
				{
					Key:   pulumi.String("key1"),
					Value: pulumi.String("value1"),
				},
				{
					Key:   pulumi.String("key2"),
					Value: pulumi.String("value2"),
				},
			},
			Parameters: pulumi.Any{
				MetadataFunction: "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

Coming soon!

import pulumi
import pulumi_aws_native as aws_native

my_athena_data_catalog = aws_native.athena.DataCatalog("myAthenaDataCatalog",
    name="MyCustomDataCatalog",
    type=aws_native.athena.DataCatalogType.HIVE,
    description="Custom Hive Catalog Description",
    tags=[
        aws_native.athena.DataCatalogTagArgs(
            key="key1",
            value="value1",
        ),
        aws_native.athena.DataCatalogTagArgs(
            key="key2",
            value="value2",
        ),
    ],
    parameters={
        "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";

const myAthenaDataCatalog = new aws_native.athena.DataCatalog("myAthenaDataCatalog", {
    name: "MyCustomDataCatalog",
    type: aws_native.athena.DataCatalogType.Hive,
    description: "Custom Hive Catalog Description",
    tags: [
        {
            key: "key1",
            value: "value1",
        },
        {
            key: "key2",
            value: "value2",
        },
    ],
    parameters: {
        "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
    },
});

Coming soon!

Example

using System.Collections.Generic;
using Pulumi;
using AwsNative = Pulumi.AwsNative;

return await Deployment.RunAsync(() => 
{
    var myAthenaDataCatalog = new AwsNative.Athena.DataCatalog("myAthenaDataCatalog", new()
    {
        Name = "MyCustomDataCatalog",
        Type = AwsNative.Athena.DataCatalogType.Hive,
        Description = "Custom Hive Catalog Description",
        Tags = new[]
        {
            new AwsNative.Athena.Inputs.DataCatalogTagArgs
            {
                Key = "key1",
                Value = "value1",
            },
            new AwsNative.Athena.Inputs.DataCatalogTagArgs
            {
                Key = "key2",
                Value = "value2",
            },
        },
        Parameters = 
        {
            { "metadata-function", "arn:aws:lambda:us-west-2:111122223333:function:lambdaname" },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/athena"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := athena.NewDataCatalog(ctx, "myAthenaDataCatalog", &athena.DataCatalogArgs{
			Name:        pulumi.String("MyCustomDataCatalog"),
			Type:        athena.DataCatalogTypeHive,
			Description: pulumi.String("Custom Hive Catalog Description"),
			Tags: []athena.DataCatalogTagArgs{
				{
					Key:   pulumi.String("key1"),
					Value: pulumi.String("value1"),
				},
				{
					Key:   pulumi.String("key2"),
					Value: pulumi.String("value2"),
				},
			},
			Parameters: pulumi.Any{
				MetadataFunction: "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

Coming soon!

import pulumi
import pulumi_aws_native as aws_native

my_athena_data_catalog = aws_native.athena.DataCatalog("myAthenaDataCatalog",
    name="MyCustomDataCatalog",
    type=aws_native.athena.DataCatalogType.HIVE,
    description="Custom Hive Catalog Description",
    tags=[
        aws_native.athena.DataCatalogTagArgs(
            key="key1",
            value="value1",
        ),
        aws_native.athena.DataCatalogTagArgs(
            key="key2",
            value="value2",
        ),
    ],
    parameters={
        "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";

const myAthenaDataCatalog = new aws_native.athena.DataCatalog("myAthenaDataCatalog", {
    name: "MyCustomDataCatalog",
    type: aws_native.athena.DataCatalogType.Hive,
    description: "Custom Hive Catalog Description",
    tags: [
        {
            key: "key1",
            value: "value1",
        },
        {
            key: "key2",
            value: "value2",
        },
    ],
    parameters: {
        "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname",
    },
});

Coming soon!

Create DataCatalog Resource

new DataCatalog(name: string, args: DataCatalogArgs, opts?: CustomResourceOptions);
@overload
def DataCatalog(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                description: Optional[str] = None,
                name: Optional[str] = None,
                parameters: Optional[Any] = None,
                tags: Optional[Sequence[DataCatalogTagArgs]] = None,
                type: Optional[DataCatalogType] = None)
@overload
def DataCatalog(resource_name: str,
                args: DataCatalogArgs,
                opts: Optional[ResourceOptions] = None)
func NewDataCatalog(ctx *Context, name string, args DataCatalogArgs, opts ...ResourceOption) (*DataCatalog, error)
public DataCatalog(string name, DataCatalogArgs args, CustomResourceOptions? opts = null)
public DataCatalog(String name, DataCatalogArgs args)
public DataCatalog(String name, DataCatalogArgs args, CustomResourceOptions options)
type: aws-native:athena:DataCatalog
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args DataCatalogArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args DataCatalogArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args DataCatalogArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DataCatalogArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args DataCatalogArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

DataCatalog Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The DataCatalog resource accepts the following input properties:

Type Pulumi.AwsNative.Athena.DataCatalogType

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

Description string

A description of the data catalog to be created.

Name string

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

Parameters object

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

Tags List<Pulumi.AwsNative.Athena.Inputs.DataCatalogTagArgs>

A list of comma separated tags to add to the data catalog that is created.

Type DataCatalogType

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

Description string

A description of the data catalog to be created.

Name string

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

Parameters interface{}

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

Tags []DataCatalogTagArgs

A list of comma separated tags to add to the data catalog that is created.

type DataCatalogType

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

description String

A description of the data catalog to be created.

name String

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

parameters Object

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

tags List<DataCatalogTagArgs>

A list of comma separated tags to add to the data catalog that is created.

type DataCatalogType

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

description string

A description of the data catalog to be created.

name string

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

parameters any

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

tags DataCatalogTagArgs[]

A list of comma separated tags to add to the data catalog that is created.

type DataCatalogType

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

description str

A description of the data catalog to be created.

name str

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

parameters Any

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

tags Sequence[DataCatalogTagArgs]

A list of comma separated tags to add to the data catalog that is created.

type "LAMBDA" | "GLUE" | "HIVE"

The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore.

description String

A description of the data catalog to be created.

name String

The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.

parameters Any

Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type.

tags List<Property Map>

A list of comma separated tags to add to the data catalog that is created.

Outputs

All input properties are implicitly available as output properties. Additionally, the DataCatalog resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

Id string

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

id string

The provider-assigned unique ID for this managed resource.

id str

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

Supporting Types

DataCatalogTag

Key string
Value string
Key string
Value string
key String
value String
key string
value string
key str
value str
key String
value String

DataCatalogType

Lambda
LAMBDA
Glue
GLUE
Hive
HIVE
DataCatalogTypeLambda
LAMBDA
DataCatalogTypeGlue
GLUE
DataCatalogTypeHive
HIVE
Lambda
LAMBDA
Glue
GLUE
Hive
HIVE
Lambda
LAMBDA
Glue
GLUE
Hive
HIVE
LAMBDA_
LAMBDA
GLUE
GLUE
HIVE
HIVE
"LAMBDA"
LAMBDA
"GLUE"
GLUE
"HIVE"
HIVE

Package Details

Repository
AWS Native pulumi/pulumi-aws-native
License
Apache-2.0