Data Catalog Args
data class DataCatalogArgs(val description: Output<String>? = null, val name: Output<String>? = null, val parameters: Output<Map<String, String>>? = null, val tags: Output<Map<String, String>>? = null, val type: Output<String>? = null) : ConvertibleToJava<DataCatalogArgs>
Provides an Athena data catalog. More information about Athena and Athena data catalogs can be found in the Athena User Guide.
Tip: for a more detailed explanation on the usage of
parameters
, see the DataCatalog API documentation
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.athena.DataCatalog;
import com.pulumi.aws.athena.DataCatalogArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataCatalog("example", DataCatalogArgs.builder()
.description("Example Athena data catalog")
.parameters(Map.of("function", "arn:aws:lambda:eu-central-1:123456789012:function:not-important-lambda-function"))
.tags(Map.of("Name", "example-athena-data-catalog"))
.type("LAMBDA")
.build());
}
}
Content copied to clipboard
Hive based Data Catalog
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.athena.DataCatalog;
import com.pulumi.aws.athena.DataCatalogArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataCatalog("example", DataCatalogArgs.builder()
.description("Hive based Data Catalog")
.parameters(Map.of("metadata-function", "arn:aws:lambda:eu-central-1:123456789012:function:not-important-lambda-function"))
.type("HIVE")
.build());
}
}
Content copied to clipboard
Glue based Data Catalog
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.athena.DataCatalog;
import com.pulumi.aws.athena.DataCatalogArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataCatalog("example", DataCatalogArgs.builder()
.description("Glue based Data Catalog")
.parameters(Map.of("catalog-id", "123456789012"))
.type("GLUE")
.build());
}
}
Content copied to clipboard
Lambda based Data Catalog
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.athena.DataCatalog;
import com.pulumi.aws.athena.DataCatalogArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DataCatalog("example", DataCatalogArgs.builder()
.description("Lambda based Data Catalog")
.parameters(Map.ofEntries(
Map.entry("metadata-function", "arn:aws:lambda:eu-central-1:123456789012:function:not-important-lambda-function-1"),
Map.entry("record-function", "arn:aws:lambda:eu-central-1:123456789012:function:not-important-lambda-function-2")
))
.type("LAMBDA")
.build());
}
}
Content copied to clipboard
Import
Data catalogs can be imported using their name
, e.g.,
$ pulumi import aws:athena/dataCatalog:DataCatalog example example-data-catalog
Content copied to clipboard