CfnFeatureGroupPropsMixin

class aws_cdk.mixins_preview.aws_sagemaker.mixins.CfnFeatureGroupPropsMixin(props, *, strategy=None)

Bases: Mixin

Create a new FeatureGroup .

A FeatureGroup is a group of Features defined in the FeatureStore to describe a Record .

The FeatureGroup defines the schema and features contained in the FeatureGroup. A FeatureGroup definition is composed of a list of Features , a RecordIdentifierFeatureName , an EventTimeFeatureName and configurations for its OnlineStore and OfflineStore . Check AWS service quotas to see the FeatureGroup s quota for your AWS account. .. epigraph:

You must include at least one of ``OnlineStoreConfig`` and ``OfflineStoreConfig`` to create a ``FeatureGroup`` .
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html

CloudformationResource:

AWS::SageMaker::FeatureGroup

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

from aws_cdk import CfnTag
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview import mixins
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

# offline_store_config: Any
# online_store_config: Any

cfn_feature_group_props_mixin = sagemaker_mixins.CfnFeatureGroupPropsMixin(sagemaker_mixins.CfnFeatureGroupMixinProps(
    description="description",
    event_time_feature_name="eventTimeFeatureName",
    feature_definitions=[sagemaker_mixins.CfnFeatureGroupPropsMixin.FeatureDefinitionProperty(
        feature_name="featureName",
        feature_type="featureType"
    )],
    feature_group_name="featureGroupName",
    offline_store_config=offline_store_config,
    online_store_config=online_store_config,
    record_identifier_feature_name="recordIdentifierFeatureName",
    role_arn="roleArn",
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    throughput_config=sagemaker_mixins.CfnFeatureGroupPropsMixin.ThroughputConfigProperty(
        provisioned_read_capacity_units=123,
        provisioned_write_capacity_units=123,
        throughput_mode="throughputMode"
    )
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::SageMaker::FeatureGroup.

Parameters:

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['description', 'eventTimeFeatureName', 'featureDefinitions', 'featureGroupName', 'offlineStoreConfig', 'onlineStoreConfig', 'recordIdentifierFeatureName', 'roleArn', 'tags', 'throughputConfig']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

DataCatalogConfigProperty

class CfnFeatureGroupPropsMixin.DataCatalogConfigProperty(*, catalog=None, database=None, table_name=None)

Bases: object

The meta data of the Glue table which serves as data catalog for the OfflineStore .

Parameters:
  • catalog (Optional[str]) – The name of the Glue table catalog.

  • database (Optional[str]) – The name of the Glue table database.

  • table_name (Optional[str]) – The name of the Glue table.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-datacatalogconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

data_catalog_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.DataCatalogConfigProperty(
    catalog="catalog",
    database="database",
    table_name="tableName"
)

Attributes

catalog

The name of the Glue table catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-datacatalogconfig.html#cfn-sagemaker-featuregroup-datacatalogconfig-catalog

database

The name of the Glue table database.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-datacatalogconfig.html#cfn-sagemaker-featuregroup-datacatalogconfig-database

table_name

The name of the Glue table.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-datacatalogconfig.html#cfn-sagemaker-featuregroup-datacatalogconfig-tablename

FeatureDefinitionProperty

class CfnFeatureGroupPropsMixin.FeatureDefinitionProperty(*, feature_name=None, feature_type=None)

Bases: object

A list of features.

You must include FeatureName and FeatureType . Valid feature FeatureType s are Integral , Fractional and String .

Parameters:
  • feature_name (Optional[str]) – The name of a feature. The type must be a string. FeatureName cannot be any of the following: is_deleted , write_time , api_invocation_time . The name: - Must start with an alphanumeric character. - Can only include alphanumeric characters, underscores, and hyphens. Spaces are not allowed.

  • feature_type (Optional[str]) – The value type of a feature. Valid values are Integral, Fractional, or String.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

feature_definition_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.FeatureDefinitionProperty(
    feature_name="featureName",
    feature_type="featureType"
)

Attributes

feature_name

The name of a feature.

The type must be a string. FeatureName cannot be any of the following: is_deleted , write_time , api_invocation_time .

The name:

  • Must start with an alphanumeric character.

  • Can only include alphanumeric characters, underscores, and hyphens. Spaces are not allowed.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html#cfn-sagemaker-featuregroup-featuredefinition-featurename

feature_type

The value type of a feature.

Valid values are Integral, Fractional, or String.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-featuredefinition.html#cfn-sagemaker-featuregroup-featuredefinition-featuretype

OfflineStoreConfigProperty

class CfnFeatureGroupPropsMixin.OfflineStoreConfigProperty(*, data_catalog_config=None, disable_glue_table_creation=None, s3_storage_config=None, table_format=None)

Bases: object

The configuration of an OfflineStore .

Provide an OfflineStoreConfig in a request to CreateFeatureGroup to create an OfflineStore .

To encrypt an OfflineStore using at rest data encryption, specify AWS Key Management Service (KMS) key ID, or KMSKeyId , in S3StorageConfig .

Parameters:
  • data_catalog_config (Union[IResolvable, DataCatalogConfigProperty, Dict[str, Any], None]) – The meta data of the Glue table that is autogenerated when an OfflineStore is created.

  • disable_glue_table_creation (Union[bool, IResolvable, None]) – Set to True to disable the automatic creation of an AWS Glue table when configuring an OfflineStore . If set to False , Feature Store will name the OfflineStore Glue table following Athena’s naming recommendations . The default value is False .

  • s3_storage_config (Union[IResolvable, S3StorageConfigProperty, Dict[str, Any], None]) – The Amazon Simple Storage (Amazon S3) location of OfflineStore .

  • table_format (Optional[str]) – Format for the offline store table. Supported formats are Glue (Default) and Apache Iceberg .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-offlinestoreconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

offline_store_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.OfflineStoreConfigProperty(
    data_catalog_config=sagemaker_mixins.CfnFeatureGroupPropsMixin.DataCatalogConfigProperty(
        catalog="catalog",
        database="database",
        table_name="tableName"
    ),
    disable_glue_table_creation=False,
    s3_storage_config=sagemaker_mixins.CfnFeatureGroupPropsMixin.S3StorageConfigProperty(
        kms_key_id="kmsKeyId",
        s3_uri="s3Uri"
    ),
    table_format="tableFormat"
)

Attributes

data_catalog_config

The meta data of the Glue table that is autogenerated when an OfflineStore is created.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-offlinestoreconfig.html#cfn-sagemaker-featuregroup-offlinestoreconfig-datacatalogconfig

disable_glue_table_creation

Set to True to disable the automatic creation of an AWS Glue table when configuring an OfflineStore .

If set to False , Feature Store will name the OfflineStore Glue table following Athena’s naming recommendations .

The default value is False .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-offlinestoreconfig.html#cfn-sagemaker-featuregroup-offlinestoreconfig-disablegluetablecreation

s3_storage_config

The Amazon Simple Storage (Amazon S3) location of OfflineStore .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-offlinestoreconfig.html#cfn-sagemaker-featuregroup-offlinestoreconfig-s3storageconfig

table_format

Format for the offline store table.

Supported formats are Glue (Default) and Apache Iceberg .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-offlinestoreconfig.html#cfn-sagemaker-featuregroup-offlinestoreconfig-tableformat

OnlineStoreConfigProperty

class CfnFeatureGroupPropsMixin.OnlineStoreConfigProperty(*, enable_online_store=None, security_config=None, storage_type=None, ttl_duration=None)

Bases: object

Use this to specify the AWS Key Management Service (KMS) Key ID, or KMSKeyId , for at rest data encryption.

You can turn OnlineStore on or off by specifying the EnableOnlineStore flag at General Assembly.

The default value is False .

Parameters:
  • enable_online_store (Union[bool, IResolvable, None]) – Turn OnlineStore off by specifying False for the EnableOnlineStore flag. Turn OnlineStore on by specifying True for the EnableOnlineStore flag. The default value is False .

  • security_config (Union[IResolvable, OnlineStoreSecurityConfigProperty, Dict[str, Any], None]) – Use to specify KMS Key ID ( KMSKeyId ) for at-rest encryption of your OnlineStore .

  • storage_type (Optional[str]) – Option for different tiers of low latency storage for real-time data retrieval. - Standard : A managed low latency data store for feature groups. - InMemory : A managed data store for feature groups that supports very low latency retrieval.

  • ttl_duration (Union[IResolvable, TtlDurationProperty, Dict[str, Any], None]) – Time to live duration, where the record is hard deleted after the expiration time is reached; ExpiresAt = EventTime + TtlDuration . For information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

online_store_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.OnlineStoreConfigProperty(
    enable_online_store=False,
    security_config=sagemaker_mixins.CfnFeatureGroupPropsMixin.OnlineStoreSecurityConfigProperty(
        kms_key_id="kmsKeyId"
    ),
    storage_type="storageType",
    ttl_duration=sagemaker_mixins.CfnFeatureGroupPropsMixin.TtlDurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

enable_online_store

Turn OnlineStore off by specifying False for the EnableOnlineStore flag.

Turn OnlineStore on by specifying True for the EnableOnlineStore flag.

The default value is False .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html#cfn-sagemaker-featuregroup-onlinestoreconfig-enableonlinestore

security_config

Use to specify KMS Key ID ( KMSKeyId ) for at-rest encryption of your OnlineStore .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html#cfn-sagemaker-featuregroup-onlinestoreconfig-securityconfig

storage_type

Option for different tiers of low latency storage for real-time data retrieval.

  • Standard : A managed low latency data store for feature groups.

  • InMemory : A managed data store for feature groups that supports very low latency retrieval.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html#cfn-sagemaker-featuregroup-onlinestoreconfig-storagetype

ttl_duration

Time to live duration, where the record is hard deleted after the expiration time is reached;

ExpiresAt = EventTime + TtlDuration . For information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoreconfig.html#cfn-sagemaker-featuregroup-onlinestoreconfig-ttlduration

OnlineStoreSecurityConfigProperty

class CfnFeatureGroupPropsMixin.OnlineStoreSecurityConfigProperty(*, kms_key_id=None)

Bases: object

The security configuration for OnlineStore .

Parameters:

kms_key_id (Optional[str]) – The AWS Key Management Service (KMS) key ARN that SageMaker Feature Store uses to encrypt the Amazon S3 objects at rest using Amazon S3 server-side encryption. The caller (either user or IAM role) of CreateFeatureGroup must have below permissions to the OnlineStore KmsKeyId : - "kms:Encrypt" - "kms:Decrypt" - "kms:DescribeKey" - "kms:CreateGrant" - "kms:RetireGrant" - "kms:ReEncryptFrom" - "kms:ReEncryptTo" - "kms:GenerateDataKey" - "kms:ListAliases" - "kms:ListGrants" - "kms:RevokeGrant" The caller (either user or IAM role) to all DataPlane operations ( PutRecord , GetRecord , DeleteRecord ) must have the following permissions to the KmsKeyId : - "kms:Decrypt"

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoresecurityconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

online_store_security_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.OnlineStoreSecurityConfigProperty(
    kms_key_id="kmsKeyId"
)

Attributes

kms_key_id

The AWS Key Management Service (KMS) key ARN that SageMaker Feature Store uses to encrypt the Amazon S3 objects at rest using Amazon S3 server-side encryption.

The caller (either user or IAM role) of CreateFeatureGroup must have below permissions to the OnlineStore KmsKeyId :

  • "kms:Encrypt"

  • "kms:Decrypt"

  • "kms:DescribeKey"

  • "kms:CreateGrant"

  • "kms:RetireGrant"

  • "kms:ReEncryptFrom"

  • "kms:ReEncryptTo"

  • "kms:GenerateDataKey"

  • "kms:ListAliases"

  • "kms:ListGrants"

  • "kms:RevokeGrant"

The caller (either user or IAM role) to all DataPlane operations ( PutRecord , GetRecord , DeleteRecord ) must have the following permissions to the KmsKeyId :

  • "kms:Decrypt"

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-onlinestoresecurityconfig.html#cfn-sagemaker-featuregroup-onlinestoresecurityconfig-kmskeyid

S3StorageConfigProperty

class CfnFeatureGroupPropsMixin.S3StorageConfigProperty(*, kms_key_id=None, s3_uri=None)

Bases: object

The Amazon Simple Storage (Amazon S3) location and security configuration for OfflineStore .

Parameters:
  • kms_key_id (Optional[str]) – The AWS Key Management Service (KMS) key ARN of the key used to encrypt any objects written into the OfflineStore S3 location. The IAM roleARN that is passed as a parameter to CreateFeatureGroup must have below permissions to the KmsKeyId : - "kms:GenerateDataKey"

  • s3_uri (Optional[str]) – The S3 URI, or location in Amazon S3, of OfflineStore . S3 URIs have a format similar to the following: s3://example-bucket/prefix/ .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-s3storageconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

s3_storage_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.S3StorageConfigProperty(
    kms_key_id="kmsKeyId",
    s3_uri="s3Uri"
)

Attributes

kms_key_id

The AWS Key Management Service (KMS) key ARN of the key used to encrypt any objects written into the OfflineStore S3 location.

The IAM roleARN that is passed as a parameter to CreateFeatureGroup must have below permissions to the KmsKeyId :

  • "kms:GenerateDataKey"

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-s3storageconfig.html#cfn-sagemaker-featuregroup-s3storageconfig-kmskeyid

s3_uri

The S3 URI, or location in Amazon S3, of OfflineStore .

S3 URIs have a format similar to the following: s3://example-bucket/prefix/ .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-s3storageconfig.html#cfn-sagemaker-featuregroup-s3storageconfig-s3uri

ThroughputConfigProperty

class CfnFeatureGroupPropsMixin.ThroughputConfigProperty(*, provisioned_read_capacity_units=None, provisioned_write_capacity_units=None, throughput_mode=None)

Bases: object

Used to set feature group throughput configuration.

There are two modes: ON_DEMAND and PROVISIONED . With on-demand mode, you are charged for data reads and writes that your application performs on your feature group. You do not need to specify read and write throughput because Feature Store accommodates your workloads as they ramp up and down. You can switch a feature group to on-demand only once in a 24 hour period. With provisioned throughput mode, you specify the read and write capacity per second that you expect your application to require, and you are billed based on those limits. Exceeding provisioned throughput will result in your requests being throttled.

Note: PROVISIONED throughput mode is supported only for feature groups that are offline-only, or use the `Standard <https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OnlineStoreConfig.html#sagemaker-Type-OnlineStoreConfig-StorageType>`_ tier online store.

Parameters:
  • provisioned_read_capacity_units (Union[int, float, None]) – For provisioned feature groups with online store enabled, this indicates the read throughput you are billed for and can consume without throttling. This field is not applicable for on-demand feature groups.

  • provisioned_write_capacity_units (Union[int, float, None]) – For provisioned feature groups, this indicates the write throughput you are billed for and can consume without throttling. This field is not applicable for on-demand feature groups.

  • throughput_mode (Optional[str]) – The mode used for your feature group throughput: ON_DEMAND or PROVISIONED .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-throughputconfig.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

throughput_config_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.ThroughputConfigProperty(
    provisioned_read_capacity_units=123,
    provisioned_write_capacity_units=123,
    throughput_mode="throughputMode"
)

Attributes

provisioned_read_capacity_units

For provisioned feature groups with online store enabled, this indicates the read throughput you are billed for and can consume without throttling.

This field is not applicable for on-demand feature groups.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-throughputconfig.html#cfn-sagemaker-featuregroup-throughputconfig-provisionedreadcapacityunits

provisioned_write_capacity_units

For provisioned feature groups, this indicates the write throughput you are billed for and can consume without throttling.

This field is not applicable for on-demand feature groups.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-throughputconfig.html#cfn-sagemaker-featuregroup-throughputconfig-provisionedwritecapacityunits

throughput_mode

ON_DEMAND or PROVISIONED .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-throughputconfig.html#cfn-sagemaker-featuregroup-throughputconfig-throughputmode

Type:

The mode used for your feature group throughput

TtlDurationProperty

class CfnFeatureGroupPropsMixin.TtlDurationProperty(*, unit=None, value=None)

Bases: object

Time to live duration, where the record is hard deleted after the expiration time is reached;

ExpiresAt = EventTime + TtlDuration . For information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

Parameters:
  • unit (Optional[str]) – TtlDuration time unit.

  • value (Union[int, float, None]) – TtlDuration time value.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-ttlduration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_sagemaker import mixins as sagemaker_mixins

ttl_duration_property = sagemaker_mixins.CfnFeatureGroupPropsMixin.TtlDurationProperty(
    unit="unit",
    value=123
)

Attributes

unit

TtlDuration time unit.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-ttlduration.html#cfn-sagemaker-featuregroup-ttlduration-unit

value

TtlDuration time value.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-featuregroup-ttlduration.html#cfn-sagemaker-featuregroup-ttlduration-value