Créer ou modifier une table à l’aide du chargement de fichiers

La page Créer ou modifier une table à l’aide du chargement de fichiers vous permet de charger des fichiers CSV, TSV ou JSON, Avro, Parquet ou texte pour créer ou remplacer une table managée Delta Lake.

Vous pouvez créer des tables managées Delta dans Unity Catalog ou dans le metastore Hive.

Remarque

Vous pouvez également charger des fichiers depuis un stockage cloud à l’aide de l’interface utilisateur d’ajout de données ou à l’aide de COPY INTO.

Important

Vous pouvez utiliser l’interface utilisateur pour créer une table Delta en important de petits fichiers CSV, TSV, JSON, Avro, Parquet ou texte à partir de votre ordinateur local.

  • La page Create or modify a table using file upload prend en charge le chargement de 10 fichiers à la fois, au maximum.
  • La taille totale des fichiers chargés ne doit pas dépasser 2 gigaoctets.
  • Le fichier doit être un fichier CSV, TSV, JSON, Avro, Parquet ou texte et avoir l’extension « .csv », « .tsv » (ou « .tab »), « .json », « .avro », « .parquet » ou « .txt ».
  • Les fichiers compressés, comme les fichiers zip et tar, ne sont pas pris en charge.

Charger le fichier

  1. Cliquez sur New IconNew (Nouveau) > Add data (Ajouter des données).
  2. Cliquez sur Create or modify a table (Créer ou modifier une table).
  3. Cliquez sur le bouton du navigateur de fichiers ou faites un glisser-déposer des fichiers directement sur la zone de dépôt.

Notes

Les fichiers importés sont chargés à un emplacement interne sécurisé au sein de votre compte qui est nettoyée quotidiennement.

Afficher un aperçu, configurer et créer une table

Vous pouvez charger des données dans la zone intermédiaire sans vous connecter aux ressources de calcul, mais vous devez sélectionner une ressource de calcul active pour afficher un aperçu et configurer votre tableau.

Vous pouvez afficher un aperçu de 50 lignes de vos données lorsque vous configurez les options du tableau chargé. Cliquez sur les boutons de grille ou de liste sous le nom de fichier pour changer la présentation de vos données.

Azure Databricks stocke les fichiers de données pour les tables managées dans les emplacements configurés pour le schéma conteneur. Vous avez besoin des autorisations appropriées pour créer une table dans un schéma.

Sélectionnez le schéma souhaité dans lequel créer un tableau en procédant comme suit :

  1. (Pour les espaces de travail avec Unity Catalog uniquement) Vous pouvez sélectionner un catalogue ou l’héritagehive_metastore.
  2. Sélectionnez un schéma.
  3. (Facultatif)Modifiez le nom du tableau.

Notes

Vous pouvez utiliser la liste déroulante pour sélectionner Remplacer une table existante ou Créer une table. Les opérations qui tentent de créer des tables avec des conflits de noms affichent un message d’erreur.

Vous pouvez configurer des options ou des colonnes avant de créer le tableau.

Pour créer la table, cliquez sur Créer en bas de la page.

Options de format

Les options de format dépendent du format de fichier que vous chargez. Les options de format courantes apparaissent dans la barre d’en-tête, tandis que les options moins couramment utilisées sont disponibles dans le dialogueAttributs avancés.

  • Pour des fichiers CSV, les options suivantes sont disponibles :
    • La première ligne contient l’en-tête (activé par défaut) : cette option spécifie si le fichier CSV/TSV contient un en-tête.
    • Délimiteur de colonne : caractère du séparateur entre les colonnes. Un seul caractère est autorisé et la barre oblique inverse n’est pas prise en charge. La valeur par défaut est la virgule pour les fichiers CSV.
    • Détecter automatiquement les types des colonnes (activé par défaut) : détecter automatiquement les types des colonnes à partir du contenu du fichier. Vous pouvez modifier les types dans l’aperçu de la table. Si ce paramètre est défini sur false (faux), tous les types de colonnes sont considérés comme étant STRING.
    • Les lignes s’étendent sur plusieurs lignes (désactivé par défaut) : indique si la valeur d’une colonne peut s’étendre sur plusieurs lignes du fichier.
    • Merge the schema across multiple files (Fusionner le schéma entre plusieurs fichiers) : Indique s’il faut déduire le schéma entre plusieurs fichiers et fusionner le schéma de chaque fichier. Si cette option est désactivée, le schéma d’un seul fichier est utilisé.
  • Pour des fichiers JSON, les options suivantes sont disponibles :
    • Détecter automatiquement les types des colonnes (activé par défaut) : détecter automatiquement les types des colonnes à partir du contenu du fichier. Vous pouvez modifier les types dans l’aperçu de la table. Si ce paramètre est défini sur false (faux), tous les types de colonnes sont considérés comme étant STRING.
    • Les lignes s’étendent sur plusieurs lignes (activé par défaut) : indique si la valeur d’une colonne peut s’étendre sur plusieurs lignes du fichier.
    • Autoriser les commentaires (activé par défaut) : indique si les commentaires sont autorisés dans le fichier.
    • Autoriser les guillemets simples (activés par défaut) : indique si les guillemets simples sont autorisés dans le fichier.
    • Timestamp d’inférence (activé par défaut) : indique s’il faut tenter d’inférer des chaînes de timestamp en tant que TimestampType.
  • Pour des fichiers JSON, les options suivantes sont disponibles :
    • Détecter automatiquement les types des colonnes (activé par défaut) : détecter automatiquement les types des colonnes à partir du contenu du fichier. Vous pouvez modifier les types dans l’aperçu de la table. Si ce paramètre est défini sur false (faux), tous les types de colonnes sont considérés comme étant STRING.
    • Les lignes s’étendent sur plusieurs lignes (désactivé par défaut) : indique si la valeur d’une colonne peut s’étendre sur plusieurs lignes du fichier.
    • Autoriser les commentaires Indique si les commentaires sont autorisés dans le fichier.
    • Autoriser les guillemets simples : indique si les guillemets simples sont autorisés dans le fichier.
    • Déduire l’horodatage : indique s’il faut essayer de déduire des chaînes d’horodatage en tant que TimestampType.

L’aperçu des données est mis à jour automatiquement quand vous modifiez des options de format.

Notes

Quand vous chargez plusieurs fichiers, les règles suivantes s’appliquent :

  • Les paramètres d’en-tête s’appliquent à tous les fichiers. Vérifiez que les en-têtes sont systématiquement absents ou présents dans tous les fichiers chargés pour éviter la perte de données.
  • Les fichiers chargés sont combinés en ajoutant toutes les données sous forme de lignes dans la table cible. La jonction ou la fusion d’enregistrements pendant le chargement de fichiers n’est pas prise en charge.

Noms et types de champs

Vous pouvez modifier des types et des noms de colonnes.

  • Pour modifier les types, cliquez sur l’icône avec le type.

    Remarque

    Vous ne pouvez pas modifier les types imbriqués pour STRUCT ou ARRAY.

  • Pour modifier le nom de la colonne, cliquez sur la zone d’entrée en haut de la colonne.

    Les noms des colonnes ne prennent pas en charge les virgules, les barres obliques inverses et les caractères Unicode (comme les emojis).

Pour des fichiers CSV et JSON, les types de données des colonnes sont inférés par défaut. Vous pouvez interpréter toutes les colonnes comme étant de type STRING en désactivant Attributs avancés>Détecter automatiquement le type de colonne.

Notes

  • L’inférence de schéma effectue la meilleure détection possible des types des colonnes. La modification des types des colonnes peut entraîner le cast de certaines valeurs en NULL si la valeur ne peut pas être castée correctement vers le type de données cible. La conversion de BIGINT en colonnes DATE ou TIMESTAMP n’est pas prise en charge. Databricks vous recommande de d’abord créer une table, puis de transformer après cela ces colonnes en utilisant des fonctions SQL.
  • Pour prendre en charge les noms de colonnes de table contenant des caractères spéciaux, la page Create or modify a table using file upload tire parti du mappage de colonnes.
  • Pour ajouter des commentaires à des colonnes, créez la table, puis accédez à Catalog Explorer où vous pouvez ajouter des commentaires.

Types de données pris en charge

La page Create or modify a table using file upload prend en charge les types de données suivants. Pour plus d’informations sur les types de données individuels, consultez Types de données de SQL.

Type de données Description
BIGINT Nombres entiers signés de 8 octets.
BOOLEAN Valeurs booléennes (true, false)
DATE Valeurs comprenant des valeurs de champs Année, Mois et Jour, sans fuseau horaire.
DOUBLE Nombres à virgule flottante double précision de 8 octets.
STRING Valeurs de chaîne de caractères.
TIMESTAMP Valeurs comprenant des valeurs de champs Année, Mois, Jour, Heure, Minute et Seconde, avec le fuseau horaire local de la session.
STRUCT Les valeurs avec la structure décrite par une séquence de champs.
ARRAY Les valeurs qui composent une séquence d’éléments avec le type
elementType.
DECIMAL(P,S) Nombres avec une précision maximale P et une échelle fixe S.

Problèmes connus

Le cast de BIGINT en types non castables comme DATE, par exemple des dates au format « aaaa », peut déclencher des erreurs.