Class DataCatalog
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<DataCatalog.Builder,
DataCatalog>
Contains information about a data catalog in an Amazon Web Services account.
In the Athena console, data catalogs are listed as "data sources" on the Data sources page under the Data source name column.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic DataCatalog.Builder
builder()
final ConnectionType
The type of connection for aFEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
).final String
The type of connection for aFEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
).final String
An optional description of the data catalog.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final String
error()
Text of the error that occurred during data catalog creation or deletion.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the Parameters property.final String
name()
The name of the data catalog.Specifies the Lambda function or functions to use for the data catalog.static Class
<? extends DataCatalog.Builder> final DataCatalogStatus
status()
The status of the creation or deletion of the data catalog.final String
The status of the creation or deletion of the data catalog.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.final DataCatalogType
type()
The type of data catalog to create:LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.final String
The type of data catalog to create:LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
name
The name of the data catalog. The catalog name must be unique for the Amazon Web Services account and can use a maximum of 127 alphanumeric, underscore, at sign, or hyphen characters. The remainder of the length constraint of 256 is reserved for use by Athena.
- Returns:
- The name of the data catalog. The catalog name must be unique for the Amazon Web Services account and can use a maximum of 127 alphanumeric, underscore, at sign, or hyphen characters. The remainder of the length constraint of 256 is reserved for use by Athena.
-
description
An optional description of the data catalog.
- Returns:
- An optional description of the data catalog.
-
type
The type of data catalog to create:
LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.FEDERATED
is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass.If the service returns an enum value that is not available in the current SDK version,
type
will returnDataCatalogType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtypeAsString()
.- Returns:
- The type of data catalog to create:
LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.FEDERATED
is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass. - See Also:
-
typeAsString
The type of data catalog to create:
LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.FEDERATED
is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass.If the service returns an enum value that is not available in the current SDK version,
type
will returnDataCatalogType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtypeAsString()
.- Returns:
- The type of data catalog to create:
LAMBDA
for a federated catalog,GLUE
for an Glue Data Catalog, andHIVE
for an external Apache Hive metastore.FEDERATED
is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass. - See Also:
-
hasParameters
public final boolean hasParameters()For responses, this returns true if the service returned a value for the Parameters property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
parameters
Specifies the Lambda function or functions to use for the data catalog. This is a mapping whose values depend on the catalog type.
-
For the
HIVE
data catalog type, use the following syntax. Themetadata-function
parameter is required.The sdk-version
parameter is optional and defaults to the currently supported version.metadata-function=lambda_arn, sdk-version=version_number
-
For the
LAMBDA
data catalog type, use one of the following sets of required parameters, but not both.-
If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.
metadata-function=lambda_arn, record-function=lambda_arn
-
If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.
function=lambda_arn
-
-
The
GLUE
type takes a catalog ID parameter and is required. Thecatalog_id
is the account ID of the Amazon Web Services account to which the Glue catalog belongs.catalog-id=catalog_id
-
The
GLUE
data catalog type also applies to the defaultAwsDataCatalog
that already exists in your account, of which you can have only one and cannot modify.
-
-
The
FEDERATED
data catalog type uses one of the following parameters, but not both. Useconnection-arn
for an existing Glue connection. Useconnection-type
andconnection-properties
to specify the configuration setting for a new connection.-
connection-arn:<glue_connection_arn_to_reuse>
-
connection-type:MYSQL|REDSHIFT|...., connection-properties:"<json_string>"
For
<json_string>
, use escaped JSON text, as in the following example."{\"spill_bucket\":\"my_spill\",\"spill_prefix\":\"athena-spill\",\"host\":\"abc12345.snowflakecomputing.com\",\"port\":\"1234\",\"warehouse\":\"DEV_WH\",\"database\":\"TEST\",\"schema\":\"PUBLIC\",\"SecretArn\":\"arn:aws:secretsmanager:ap-south-1:111122223333:secret:snowflake-XHb67j\"}"
-
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasParameters()
method.- Returns:
- Specifies the Lambda function or functions to use for the data catalog. This is a mapping whose values
depend on the catalog type.
-
For the
HIVE
data catalog type, use the following syntax. Themetadata-function
parameter is required.The sdk-version
parameter is optional and defaults to the currently supported version.metadata-function=lambda_arn, sdk-version=version_number
-
For the
LAMBDA
data catalog type, use one of the following sets of required parameters, but not both.-
If you have one Lambda function that processes metadata and another for reading the actual data, use the following syntax. Both parameters are required.
metadata-function=lambda_arn, record-function=lambda_arn
-
If you have a composite Lambda function that processes both metadata and data, use the following syntax to specify your Lambda function.
function=lambda_arn
-
-
The
GLUE
type takes a catalog ID parameter and is required. Thecatalog_id
is the account ID of the Amazon Web Services account to which the Glue catalog belongs.catalog-id=catalog_id
-
The
GLUE
data catalog type also applies to the defaultAwsDataCatalog
that already exists in your account, of which you can have only one and cannot modify.
-
-
The
FEDERATED
data catalog type uses one of the following parameters, but not both. Useconnection-arn
for an existing Glue connection. Useconnection-type
andconnection-properties
to specify the configuration setting for a new connection.-
connection-arn:<glue_connection_arn_to_reuse>
-
connection-type:MYSQL|REDSHIFT|...., connection-properties:"<json_string>"
For
<json_string>
, use escaped JSON text, as in the following example."{\"spill_bucket\":\"my_spill\",\"spill_prefix\":\"athena-spill\",\"host\":\"abc12345.snowflakecomputing.com\",\"port\":\"1234\",\"warehouse\":\"DEV_WH\",\"database\":\"TEST\",\"schema\":\"PUBLIC\",\"SecretArn\":\"arn:aws:secretsmanager:ap-south-1:111122223333:secret:snowflake-XHb67j\"}"
-
-
-
-
status
The status of the creation or deletion of the data catalog.
-
The
LAMBDA
,GLUE
, andHIVE
data catalog types are created synchronously. Their status is eitherCREATE_COMPLETE
orCREATE_FAILED
. -
The
FEDERATED
data catalog type is created asynchronously.
Data catalog creation status:
-
CREATE_IN_PROGRESS
: Federated data catalog creation in progress. -
CREATE_COMPLETE
: Data catalog creation complete. -
CREATE_FAILED
: Data catalog could not be created. -
CREATE_FAILED_CLEANUP_IN_PROGRESS
: Federated data catalog creation failed and is being removed. -
CREATE_FAILED_CLEANUP_COMPLETE
: Federated data catalog creation failed and was removed. -
CREATE_FAILED_CLEANUP_FAILED
: Federated data catalog creation failed but could not be removed.
Data catalog deletion status:
-
DELETE_IN_PROGRESS
: Federated data catalog deletion in progress. -
DELETE_COMPLETE
: Federated data catalog deleted. -
DELETE_FAILED
: Federated data catalog could not be deleted.
If the service returns an enum value that is not available in the current SDK version,
status
will returnDataCatalogStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromstatusAsString()
.- Returns:
- The status of the creation or deletion of the data catalog.
-
The
LAMBDA
,GLUE
, andHIVE
data catalog types are created synchronously. Their status is eitherCREATE_COMPLETE
orCREATE_FAILED
. -
The
FEDERATED
data catalog type is created asynchronously.
Data catalog creation status:
-
CREATE_IN_PROGRESS
: Federated data catalog creation in progress. -
CREATE_COMPLETE
: Data catalog creation complete. -
CREATE_FAILED
: Data catalog could not be created. -
CREATE_FAILED_CLEANUP_IN_PROGRESS
: Federated data catalog creation failed and is being removed. -
CREATE_FAILED_CLEANUP_COMPLETE
: Federated data catalog creation failed and was removed. -
CREATE_FAILED_CLEANUP_FAILED
: Federated data catalog creation failed but could not be removed.
Data catalog deletion status:
-
DELETE_IN_PROGRESS
: Federated data catalog deletion in progress. -
DELETE_COMPLETE
: Federated data catalog deleted. -
DELETE_FAILED
: Federated data catalog could not be deleted.
-
- See Also:
-
-
statusAsString
The status of the creation or deletion of the data catalog.
-
The
LAMBDA
,GLUE
, andHIVE
data catalog types are created synchronously. Their status is eitherCREATE_COMPLETE
orCREATE_FAILED
. -
The
FEDERATED
data catalog type is created asynchronously.
Data catalog creation status:
-
CREATE_IN_PROGRESS
: Federated data catalog creation in progress. -
CREATE_COMPLETE
: Data catalog creation complete. -
CREATE_FAILED
: Data catalog could not be created. -
CREATE_FAILED_CLEANUP_IN_PROGRESS
: Federated data catalog creation failed and is being removed. -
CREATE_FAILED_CLEANUP_COMPLETE
: Federated data catalog creation failed and was removed. -
CREATE_FAILED_CLEANUP_FAILED
: Federated data catalog creation failed but could not be removed.
Data catalog deletion status:
-
DELETE_IN_PROGRESS
: Federated data catalog deletion in progress. -
DELETE_COMPLETE
: Federated data catalog deleted. -
DELETE_FAILED
: Federated data catalog could not be deleted.
If the service returns an enum value that is not available in the current SDK version,
status
will returnDataCatalogStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromstatusAsString()
.- Returns:
- The status of the creation or deletion of the data catalog.
-
The
LAMBDA
,GLUE
, andHIVE
data catalog types are created synchronously. Their status is eitherCREATE_COMPLETE
orCREATE_FAILED
. -
The
FEDERATED
data catalog type is created asynchronously.
Data catalog creation status:
-
CREATE_IN_PROGRESS
: Federated data catalog creation in progress. -
CREATE_COMPLETE
: Data catalog creation complete. -
CREATE_FAILED
: Data catalog could not be created. -
CREATE_FAILED_CLEANUP_IN_PROGRESS
: Federated data catalog creation failed and is being removed. -
CREATE_FAILED_CLEANUP_COMPLETE
: Federated data catalog creation failed and was removed. -
CREATE_FAILED_CLEANUP_FAILED
: Federated data catalog creation failed but could not be removed.
Data catalog deletion status:
-
DELETE_IN_PROGRESS
: Federated data catalog deletion in progress. -
DELETE_COMPLETE
: Federated data catalog deleted. -
DELETE_FAILED
: Federated data catalog could not be deleted.
-
- See Also:
-
-
connectionType
The type of connection for a
FEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
). For information about individual connectors, see Available data source connectors.If the service returns an enum value that is not available in the current SDK version,
connectionType
will returnConnectionType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromconnectionTypeAsString()
.- Returns:
- The type of connection for a
FEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
). For information about individual connectors, see Available data source connectors. - See Also:
-
connectionTypeAsString
The type of connection for a
FEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
). For information about individual connectors, see Available data source connectors.If the service returns an enum value that is not available in the current SDK version,
connectionType
will returnConnectionType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromconnectionTypeAsString()
.- Returns:
- The type of connection for a
FEDERATED
data catalog (for example,REDSHIFT
,MYSQL
, orSQLSERVER
). For information about individual connectors, see Available data source connectors. - See Also:
-
error
Text of the error that occurred during data catalog creation or deletion.
- Returns:
- Text of the error that occurred during data catalog creation or deletion.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<DataCatalog.Builder,
DataCatalog> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
- Returns:
- The mapping between the field name and its corresponding field.
-