尋找特徵商店中的特徵群組 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

尋找特徵商店中的特徵群組

使用 Amazon SageMaker Feature Store,您可以使用主控台或搜尋操作來搜尋功能群組。您可以透過搜尋功能尋找與您正在建立的模型相關的特徵和特徵群組。您可以透過搜尋功能快速尋找與您的使用案例相關的特徵群組。

注意

您要搜尋的功能群組必須位於 AWS 區域 和 AWS 帳戶中,或與 共用並使其可供您的 探索 AWS 帳戶。如需如何共用功能群組目錄和授予可探索性的詳細資訊,請參閱 共用您的特徵群組目錄

下表顯示可搜尋的欄位,以及您是否可以使用主控台搜尋特定欄位。

您可以使用 Amazon SageMaker Studio Classic 或 中的 Search操作來搜尋功能 SageMaker API。下表列出所有可搜尋的中繼資料,以及是否可以在主控台中搜尋。您可以為自己的特徵群組搜尋標籤,但無法對您可探索的特徵群組進行搜尋。

可搜尋的中繼資料 API 欄位名稱 可在主控台中搜尋? 可跨帳戶搜尋?
所有標籤 AllTags
建立失敗原因 FailureReason
建立狀態 FeatureGroupStatus
建立時間 CreationTime
描述 描述
事件時間特徵名稱 EventTimeFeatureName
特徵定義 FeatureDefinitions
功能群組 ARN FeatureGroupARN
特徵群組名稱 FeatureGroupName
離線儲存組態 OfflineStoreConfig
離線儲存狀態 OfflineStoreStatus
上次更新狀態 LastUpdateStatus
記錄識別符特徵名稱 RecordIdentifierFeatureName
標籤 標籤。key

如何尋找功能群組

您可以使用主控台或 Amazon SageMaker Feature Store API 來尋找功能群組。透過主控台使用 Feature Store 的指示取決於您是否已啟用 Amazon SageMaker StudioAmazon SageMaker Studio Classic作為預設體驗。

  1. 按照 中的指示開啟 Studio 主控台推出 Amazon SageMaker 工作

  2. 在左側導覽窗格中選擇資料以展開下拉式清單。

  3. 從下拉式清單中,選擇 Feature Store

  4. (選用) 若要檢視功能群組,請選擇我的帳戶 。若要檢視共用功能群組,請選擇跨帳戶

  5. 特徵群組目錄索引標籤下,選擇我的帳戶以檢視您的特徵群組。

  6. 特徵群組目錄索引標籤下,選擇跨帳戶以檢視其他人可發現的功能群組。在 建立下,您可以檢視資源擁有者帳戶 ID。

  7. 您可以在搜尋下拉式清單中搜尋功能群組:

    • (選用) 若要篩選搜尋,請選擇搜尋下拉式清單旁的篩選條件圖示。您可以使用篩選條件來指定搜尋結果中的參數或日期範圍。如果您搜尋 參數,請指定其索引鍵和值。若要尋找功能群組,您可以指定時間範圍、清除 (取消選取) 您不想查詢的資料欄、選擇要搜尋的商店,或依狀態搜尋。

    • 對於共用資源,只有在您擁有從資源擁有者帳戶授予的適當存取權限時,才能編輯功能群組中繼資料或功能定義。僅探索能力許可將不允許您編輯中繼資料或功能定義。如需授予存取權限的詳細資訊,請參閱 啟用跨帳戶存取權

本節中的程式碼使用 中的 Search操作 AWS SDK for Python (Boto3) 來執行搜尋查詢,以尋找功能群組。如需提交查詢的其他語言的相關資訊,請參閱 Amazon 參考 中的 SageMaker API

如需 Feature Store 範例和資源的詳細資訊,請參閱 Amazon SageMaker Feature Store 資源

下列程式碼顯示使用 的不同搜尋查詢範例API:

# Return all feature groups sagemaker_client.search( Resource="FeatureGroups", ) # Search for feature groups that are shared with your account sagemaker_session.search( resource="FeatureGroup", search_expression={ "Filters": [ { "Name": "FeatureGroupName", "Value": "MyFeatureGroup", "Operator": "Contains", } ], "Operator": "And", }, sort_by="Name", sort_order="Ascending", next_token="token", max_results=50, CrossAccountFilterOption="SameAccount" ) # Search for all feature groups with a name that contains the "ver" substring sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'FeatureGroupName', 'Operator': 'Contains', 'Value': 'ver' }, ] } ) # Search for all feature groups that have the EXACT name "airport" sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'FeatureGroupName', 'Operator': 'Equals', 'Value': 'airport' }, ] } ) # Search for all feature groups that contains the name "ver" # AND have a record identifier feature name that contains "wha" # AND have a tag (key or value) that contains "hea" sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'FeatureGroupName', 'Operator': 'Contains', 'Value': 'ver' }, { 'Name': 'RecordIdentifierFeatureName', 'Operator': 'Contains', 'Value': 'wha' }, { 'Name': 'AllTags', 'Operator': 'Contains', 'Value': 'hea' }, ] } ) # Search for all feature groups with substring "ver" in its name # OR feature groups that have a record identifier feature name that contains "wha" # OR feature groups that have a tag (key or value) that contains "hea" sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'FeatureGroupName', 'Operator': 'Contains', 'Value': 'ver' }, { 'Name': 'RecordIdentifierFeatureName', 'Operator': 'Contains', 'Value': 'wha' }, { 'Name': 'AllTags', 'Operator': 'Contains', 'Value': 'hea' }, ], 'Operator': 'Or' # note that this is explicitly set to "Or"- the default is "And" } ) # Search for all feature groups with substring "ver" in its name # OR feature groups that have a record identifier feature name that contains "wha" # OR tags with the value 'Sage' for the 'org' key sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'FeatureGroupName', 'Operator': 'Contains', 'Value': 'ver' }, { 'Name': 'RecordIdentifierFeatureName', 'Operator': 'Contains', 'Value': 'wha' }, { 'Name': 'Tags.org', 'Operator': 'Contains', 'Value': 'Sage' }, ], 'Operator': 'Or' # note that this is explicitly set to "Or"- the default is "And" } ) # Search for all offline only feature groups sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'OnlineStoreConfig.EnableOnlineStore', 'Operator': 'NotEquals', 'Value': 'true' }, { 'Name': 'OfflineStoreConfig.S3StorageConfig.S3Uri', 'Operator': 'Exists' } ] } ) # Search for all online only feature groups sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'OnlineStoreConfig.EnableOnlineStore', 'Operator': 'Equals', 'Value': 'true' }, { 'Name': 'OfflineStoreConfig.S3StorageConfig.S3Uri', 'Operator': 'NotExists' } ] } ) # Search for all feature groups that are BOTH online and offline sagemaker_client.search( Resource="FeatureGroups", SearchExpression={ 'Filters': [ { 'Name': 'OnlineStoreConfig.EnableOnlineStore', 'Operator': 'Equals', 'Value': 'true' }, { 'Name': 'OfflineStoreConfig.S3StorageConfig.S3Uri', 'Operator': 'Exists' } ] } )

您也可以使用 python SDK AWS RAM APIs來建立資源共用。API 簽章提供如下。若要使用 pythonSDK AWS RAM API,您需要使用執行角色連接 AWS RAM 完整存取受管政策。

response = client.create_resource_share( name='string', resourceArns=[ 'string', ], principals=[ 'string', ], tags=[ { 'key': 'string', 'value': 'string' }, ], allowExternalPrincipals=True|False, clientToken='string', permissionArns=[ 'string', ] )