Importer à partir d’Azure Cosmos DB

Important

Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning avant cette date.

À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.

La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.

cet article explique comment utiliser le module importer des données dans Machine Learning Studio (classic) pour importer des données à partir de Azure Cosmos DB à utiliser dans une expérience de Machine Learning.

Notes

s’applique à: Machine Learning Studio (classic) uniquement

Des modules par glisser-déposer similaires sont disponibles dans Concepteur Azure Machine Learning.

Azure Cosmos DB prend en charge le stockage de base de données NoSQL à l’aide d’un modèle de données flexible. les avantages de l’utilisation des api SQL dans ce magasin de données pour Machine Learning incluent des performances rapides et prévisibles, une mise à l’échelle automatique, une distribution mondiale et des fonctionnalités de requête enrichies.

avec Azure SQL Database, cette option vous permet de filtrer dynamiquement les jeux de données entrants.

en savoir plus sur le fonctionnement : en savoir plus sur Azure Cosmos DB

  • pour commencer à utiliser des Machine Learning à l’aide de données de Azure Cosmos DB, vous devez avoir accès à un compte d’Azure Cosmos DB existant contenant une collection de documents associés.

Notes

l’interface utilisateur de Machine Learning Studio (classic) utilise toujours le nom DocumentDB à de nombreux endroits. par conséquent, vous pouvez continuer à voir les références à DocumentDB, même si l’API a été incorporée dans Azure Cosmos DB.

comment utiliser importer des données avec des Azure Cosmos DB

Nous vous recommandons vivement de profiler vos données avant l’importation, pour vous assurer que le schéma est comme prévu. Le processus d’importation analyse un certain nombre de lignes principales pour déterminer le schéma, mais les lignes ultérieures peuvent contenir des colonnes supplémentaires, ou des données qui provoquent des erreurs.

Importer des données à l’aide de l’Assistant

Le module propose un nouvel Assistant pour vous aider à choisir une option de stockage, sélectionner parmi les abonnements et les comptes existants et configurer rapidement toutes les options.

  1. Ajoutez le module Importer des données à votre expérience. Vous pouvez trouver le module sous entrée et sortie de données.

  2. Cliquez sur lancer l’Assistant importation de données et suivez les invites.

  3. Une fois la configuration terminée, pour copier les données dans votre expérience, cliquez avec le bouton droit sur le module et sélectionnez exécuter sélectionné.

Conseil

Si vous avez besoin de modifier une connexion de données existante, l’Assistant charge tous les détails de configuration précédents. Vous n’avez pas besoin de recommencer à partir de zéro.

Définir manuellement les propriétés du module Importer des données

Les étapes suivantes décrivent la configuration manuelle de la source d’importation.

  1. Ajoutez le module Importer des données à votre expérience. Vous pouvez trouver ce module dans la catégorie entrée et sortie des données .

  2. Pour source de données, sélectionnez Azure DocumentDB.

    Vous devrez peut-être fournir des informations de connexion pour la base de données de documents.

    Conseil

    recherchez le nom de l’option dans Machine Learning Studio (classique) à modifier à une date ultérieure. La fonctionnalité d’importation n’a pas été affectée par le changement de nom.

  3. Pour URL du point de terminaison, dans le portail Azure, cliquez sur clés, puis copiez le contenu du champ URI en haut de la page.

  4. Pour ID de base de données, collez le nom de la base de données à utiliser.

    Pour récupérer le nom de la base de données à partir du portail Azure, cliquez sur Explorateur de documents. Vous pouvez afficher la liste des bases de données et des regroupements dans ce volet.

  5. Pour la clé DocumentDB, collez la clé d’accès du compte.

    Pour rechercher les clés, cliquez sur clés, puis copiez le contenu des champs clé primaire ou clé secondaire .

  6. Pour ID de regroupement, tapez le nom de la collection, tel qu’indiqué dans la base de données CosmosDB spécifiée.

  7. définissez une requête SQL et une condition de filtre sur les données, à l’aide des options de requête SQL et de SQL paramètres de requête .

    pour SQL requête, tapez une requête qui définit les données à extraire de la collection. Nous vous recommandons d’utiliser l' Explorateur de requêtes pour créer et tester vos requêtes CosmosDB au préalable.

    pour les SQL des paramètres de requête, fournissez une expression au format JSON qui peut être utilisée pour filtrer dynamiquement les données retournées. En général, vous fournissez la valeur réelle de la valeur du paramètre lors de l’exécution de l’expérience dans le cadre d’un service Web.

    si vous utilisez un paramètre, vous devez définir le nom de la variable de filtre dans le cadre de la clause where spécifiée dans la zone de texte SQL la requête .

    Si vous ne spécifiez pas d’expression de filtre, par défaut, la valeur est définie sur « {} » et tous les enregistrements sont retournés.

    consultez la section Notes techniques pour obtenir des exemples, des problèmes connus et des conseils supplémentaires sur les requêtes de SQL sur CosmosDB.

  8. Sélectionnez l’option utiliser les résultats mis en cache si vous souhaitez réutiliser les résultats existants.

    Si vous désélectionnez cette option, les données sont lues à partir de la source chaque fois que l’expérimentation est exécutée, que les données soient identiques ou non.

    Machine Learning ne pouvez pas comparer les données mises en cache par rapport aux données de votre compte CosmosDB. Par conséquent, il n’existe aucun moyen d’effectuer des mises à jour incrémentielles à partir de Machine Learning.

    Si vous souhaitez procéder à une nouvelle importation uniquement lorsque les données changent, vous devez définir cette logique dans une autre application, telle que Azure Data Factory. pour plus d’informations, consultez déplacer des données vers et à partir de Azure Cosmos DB à l’aide de Azure Data Factory.

  9. Exécutez l’expérience ou sélectionnez uniquement le module importer des données , puis cliquez sur exécuter la sélection.

Résultats

Une fois que vous avez exécuté le module ou l’expérimentation, vous pouvez cliquer avec le bouton droit sur la sortie du module pour visualiser les résultats sous forme de tableau.

pour capturer un instantané de ces données dans votre espace de travail Machine Learning en tant que jeu de données, vous pouvez cliquer avec le bouton droit sur la sortie du module et sélectionner enregistrer sous le jeude données. Toutefois, cette action capture uniquement les données disponibles au moment de l’importation. Si les données sont censées changer fréquemment, réexécutez Importer les données en fonction des besoins.

Exemples

pour obtenir une procédure pas à pas détaillée de l’utilisation de Azure Cosmos DB comme source de données pour Machine Learning, consultez le Azure AI Gallery.

Notes techniques

Cette section contient des options de configuration avancées et des réponses aux questions fréquemment posées.

Exemples de requêtes simples et paramétrables

Supposons que vous souhaitiez utiliser uniquement les données sur les cas avec des élévations inférieures à 10000 mètres.

Requête simple

collez la requête suivante dans la zone de texte SQL la requête :Select * from volcanodb where volcanodb.Elevation < 10000

Dans ce cas, la valeur de l’expression de filtre est définie sur {} «» et tous les enregistrements sont retournés.

Requête paramétrable

Pour obtenir uniquement les données de l’État régional relatives à un pays spécifique, vous pouvez spécifier la valeur de pays comme paramètre passé à la requête au moment de l’exécution. Cela nécessite les modifications suivantes :

  1. dans la zone de texte SQL la requête , définissez une variable à appliquer au Country champ dans le cadre de la requête SQL :

    Select * from volcanodb where volcanodb.Country = @param1

  2. dans la zone de texte paramètres de la requête SQL , spécifiez le nom du paramètre et sa valeur au format JSON, comme suit :

    {"@param1":"Turkey"}

Ressources

Si vous n’avez pas de magasin de documents existants, consultez ces articles pour commencer.

Aide sur la syntaxe des requêtes et la migration des données

pour obtenir des exemples de requêtes sur un magasin de données JSON, téléchargez le Azure Cosmos DBaide-mémoire pour les requêtes.

si vous avez besoin de télécharger du contenu dans Azure Cosmos DB, nous vous recommandons l' outil de migration Azure Cosmos DB. Il valide, charge et indexe vos données. l’outil prend en charge plusieurs sources, notamment MongoDB, Amazon DynamoDB, HBase, SQL Server des bases de données et des fichiers CSV.

Utilisation de requêtes sans schéma

si les données sont cohérentes et prévisibles, vous pouvez utiliser une syntaxe simple de type SQL, telle que SELECT * FROM <document collection> . C’est ce qu’on appelle une requête sans schéma , car vous n’avez pas nommé les attributs exacts à retourner. Une telle requête retourne tous les champs et toutes les lignes de la collection spécifiée.

Toutefois, si vous ne spécifiez pas de schéma, vous risquez d’obtenir des résultats inattendus ou une erreur d’exécution si les documents comportent des schémas incohérents. Cela est dû au fait que le module importer des données tente de déduire le schéma en fonction d’un nombre de lignes prédéterminé, comme suit :

  1. Quand aucun attribut n’est spécifié, le module analyse la première ligne dans la base de données CosmosDB.
  2. Le module crée des noms de colonne en fonction des attributs et devine ce que les types de données de colonne doivent être basés sur la ligne d’exemple.
  3. Si des lignes ultérieures contiennent des attributs nouveaux ou différents, une erreur d’exécution est générée.

Par conséquent, nous vous recommandons de toujours spécifier les attributs et les valeurs à retourner à partir du magasin de données CosmosDB. Par exemple, au lieu d’utiliser la SELECT * syntaxe, nous vous recommandons de nommer tous les attributs récupérés par la requête, comme suit :

SELECT MyTable.Gender, MyTable.Age, MyTable.Name FROM <document collection>

Paramètres du module

le tableau suivant comprend uniquement les paramètres du module importer des données qui s’appliquent à l’option Azure Cosmos DB.

Nom Plage Type Obligatoire Default Description
Source de données list HTTP obligatoire aucun la source de données peut être http, FTP, https ou FTPS anonyme, un fichier dans le stockage d’objets BLOB azure, une table azure, une Azure SQL Database, une table Hive, un point de terminaison OData ou Azure Cosmos dB.
URL de point de terminaison n'importe laquelle string obligatoire aucun fournir l’URI du serveur de Azure Cosmos DB
ID de base de données n'importe laquelle string obligatoire aucun indiquez le nom de la base de données Azure Cosmos DB
Clé DocumentDB n'importe laquelle SecureString obligatoire aucun fournir une clé API valide pour le compte Azure Cosmos DB
ID de la collection n'importe laquelle string obligatoire aucun fournir le nom d’une collection dans la base de données Azure Cosmos DB
Requête SQL n'importe laquelle string obligatoire aucun requête SQL spécifiant les enregistrements à retourner à partir du magasin de données Azure Cosmos DB

Sorties

Nom Type Description
Jeu de données de résultats Table de données Jeu de données avec des données téléchargées

Exceptions

Exception Description
Erreur 0003 Une exception se produit si une ou plusieurs entrées ont la valeur Null ou sont vides.
Erreur 0029 Une exception se produit lorsqu'un URI non valide est passé.
Erreur 0002 Une exception se produit si un ou plusieurs paramètres n'ont pas pu être analysés ou convertis à partir du type spécifié dans le type requis par la méthode cible.
Erreur 0048 Une exception se produit quand il n'est pas possible d'ouvrir un fichier.
Erreur 0049 Une exception se produit quand il n'est pas possible d'analyser un fichier.

pour obtenir la liste des erreurs spécifiques aux modules Studio (classiques), consultez Machine Learning codes d’erreur.

pour obtenir la liste des exceptions d’api, consultez Machine Learning les Codes d’erreur de l' api REST.

Voir aussi

Importer des données
Exporter les données
Importer à partir d’une URL web via HTTP
Importer à partir d’une requête Hive
Importer à partir d’Azure SQL Database
Importer à partir du Stockage Blob Azure
Importer à partir de fournisseurs de flux de données
Importer à partir d’une base de données SQL Server locale