Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Recherche sémantique pour AWS Glue Data Catalog
Note
Le contexte commercial et la recherche sémantique sont en cours de prévisualisation AWS Glue et sont susceptibles d'être modifiés.
La recherche sémantique vous permet de découvrir les actifs de données par leur signification en plus de la correspondance exacte des mots clés. Les résultats sont classés par similitude sémantique avec votre requête. Vous pouvez affiner les résultats à l'aide de filtres sur le type de ressource, les champs de métadonnées et les termes du glossaire.
Utilisation de l' SearchAssets API
L'SearchAssetsAPI accepte SearchTextFilterClause, ou les deux. Lorsque ni l'un ni l'autre n'est fourni, il renvoie tous les actifs. Paramètres facultatifs :Sort,MaxResults,NextToken.
Recherche de texte
aws glue search-assets \ --search-text "customer purchases"
Exemple de sortie :
{ "Items": [ {"Id": "c9vq7sh2fk4t2h", "AssetName": "Customer Sales Transactions", "AssetTypeId": "Table"} ] }
Limitez les résultats avec --max-results :
aws glue search-assets \ --search-text "quarterly revenue" \ --max-results 5
Filtrer les résultats de recherche
FilterClauseÀ utiliser pour affiner les résultats. Types de filtres pris en charge :
AttributeFilter— Opérateurs :
equals,greaterThan,greaterThanOrEquals,lessThan,lessThanOrEquals,notExists.AndAllFilters— Tous les filtres doivent correspondre (ET logique).
OrAnyFilters— Au moins un doit correspondre (OR logique).
Pour filtrer en fonction d'un seul attribut
Filtrer uniquement les actifs de la table :
aws glue search-assets \ --search-text "revenue" \ --filter-clause '{ "AttributeFilter": { "Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Table"} } }'
Pour combiner des filtres avec la logique AND
Trouvez les actifs du tableau mis à jour après un horodatage :
aws glue search-assets \ --search-text "customer data" \ --filter-clause '{ "AndAllFilters": [ {"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Table"}}}, {"AttributeFilter": {"Attribute": "updatedAt", "Operator": "greaterThan", "Value": {"LongValue": 1718400000}}} ] }'
Pour combiner des filtres avec la logique OR
Recherchez des tables ou des actifs de compétences :
aws glue search-assets \ --search-text "customer data" \ --filter-clause '{ "OrAnyFilters": [ {"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Table"}}}, {"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Skill"}}} ] }'
Pour filtrer par terme du glossaire
Filtrez les ressources étiquetées avec un terme spécifique du glossaire (par ID de terme) :
aws glue search-assets \ --search-text "financial data" \ --filter-clause '{ "AttributeFilter": { "Attribute": "glossaryTerms", "Operator": "equals", "Value": {"StringValue": "glossary-term-id"} } }'
Pour utiliser des filtres ET et OU imbriqués
Trouvez un tableau ou des actifs de compétences contenant un terme spécifique du glossaire :
aws glue search-assets \ --search-text "customer" \ --filter-clause '{ "AndAllFilters": [ {"OrAnyFilters": [ {"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Table"}}}, {"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Skill"}}} ]}, {"AttributeFilter": {"Attribute": "glossaryTerms", "Operator": "equals", "Value": {"StringValue": "glossary-term-id"}}} ] }'
Tri des résultats de recherche
Par défaut, les résultats sont triés par pertinence sémantique. Pour trier par attribut :
aws glue search-assets \ --search-text "customer purchases" \ --sort '{"Attribute": "assetName", "Order": "ASCENDING"}'
aws glue search-assets \ --search-text "customer purchases" \ --sort '{"Attribute": "updatedAt", "Order": "DESCENDING"}'
Note
Lorsque vous spécifiez un attribut de tri, les résultats sont triés en fonction de cet attribut plutôt que par pertinence sémantique.
Pagination des résultats de recherche
Lorsque les résultats sont supérieursMaxResults, la réponse inclut unNextToken. Utilisez-le pour récupérer des pages supplémentaires.
aws glue search-assets \ --search-text "customer data" \ --max-results 10 \ --next-token "eyJsYXN0RXZhbHVhdGVkS2V5Ijp7ImlkIjp7InMiOiJhMWIyYzNkNCJ9fX0="
Continuez jusqu'à ce que la réponse n'inclue plus unNextToken.
Exécution de requêtes filtrées uniquement
À utiliser uniquement FilterClause sans SearchText pour répertorier les actifs sans classement sémantique.
aws glue search-assets \ --filter-clause '{"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Table"}}}' \ --max-results 20
Note
Lorsque vous omettez les deux SearchText etFilterClause, l'API renvoie tous les actifs.
Exemples
Pour découvrir les atouts de compétences d'un domaine
Trouvez des actifs de compétences liés aux données de vente :
aws glue search-assets \ --search-text "sales domain usage rules" \ --filter-clause '{"AttributeFilter": {"Attribute": "type", "Operator": "equals", "Value": {"StringValue": "Skill"}}}'
Note
Cette requête renvoie uniquement les actifs de compétences personnalisés. Les compétences gérées ne sont pas renvoyées par l'SearchAssetsAPI.
Pour combiner la recherche de texte et le tri
Bénéficiez d'une vue complète des actifs correspondants :
aws glue search-assets \ --search-text "customer" \ --sort '{"Attribute": "updatedAt", "Order": "DESCENDING"}' \ --max-results 10