Aller au contenu principal

Créer ou modifier une table à l'aide de l'upload de fichier

La page Créer ou modifier une table à l'aide d'un upload de fichier vous permet d'uploader des fichiers CSV, TSV, JSON, Avro, Parquet ou texte pour créer ou écraser une table Delta Lake gérée.

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

remarque

De plus, vous pouvez utiliser l'interface utilisateur d'ajout de données ou COPY INTO pour charger des fichiers à partir du stockage cloud.

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 machine locale.

  • La page Créer ou modifier une table à l'aide d'un upload de fichier prend en charge l'upload de 10 fichiers maximum à la fois.
  • La taille totale des fichiers upload doit être inférieure à 2 gigaoctets.
  • Le fichier doit être au format CSV, TSV, JSON, Avro, Parquet ou texte, et avoir l'extension « .csv », "TSV" (ou « .tab »), "JSON", « .avro », "Parquet", ou « .txt ».
  • Les fichiers compressés tels que zip et les fichiers tar ne sont pas pris en charge.

upload the file

  1. Cliquez sur Nouvelle icône Nouveau > Ajouter ou upload des données .
  2. Cliquez sur **Créer ou modifier une table**.
  3. Cliquez sur **parcourir** ou faites glisser et déposez les fichiers directement sur la zone de dépôt.
remarque

Les fichiers importés sont chargés vers un emplacement interne sécurisé dans votre compte, qui est collecté chaque jour.

Prévisualiser, configurer et créer une table

Vous pouvez upload des données dans la zone de transit sans vous connecter aux ressources de compute, mais vous devez sélectionner une ressource de compute active pour prévisualiser et configurer votre table. L'interface utilisateur d'upload de fichiers prend en charge les SQL Warehouse, le compute Serverless et le compute dédié. Les clusters de groupes ne sont pas pris en charge.

Vous pouvez prévisualiser 50 lignes de vos données lorsque vous configurez les options de la table upload. Cliquez sur les boutons de la grille ou de la liste sous le nom du fichier pour modifier la présentation de vos données.

Databricks stocke les fichiers de données des tables gérées aux 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 une table en procédant comme suit :

  1. (Pour les workspaces compatibles avec Unity Catalog uniquement) Vous pouvez sélectionner un catalogue ou le hive_metastore hérité.
  2. Sélectionnez un schéma.
  3. (Facultatif) Modifier le nom de la table.
remarque

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

Vous pouvez configurer les options ou les colonnes avant de créer la table.

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 upload. Les options de format courantes apparaissent dans la barre d'en-tête, tandis que les options moins couramment utilisées sont disponibles dans la boîte de dialogue Attributs avancés .

  • Pour le CSV, les options suivantes sont disponibles :

    • **La première ligne contient l’en-tête** (activé par default) : Cette option spécifie si le fichier CSV/TSV contient un en-tête.
    • Délimiteur de colonne : le caractère séparateur entre les colonnes. Un seul caractère est autorisé, et la barre oblique inversée n’est pas prise en charge. La valeur par défaut est la virgule pour les fichiers CSV.
    • Détecter automatiquement les types de colonnes (activé par default) : détecte automatiquement les types de colonnes à partir du contenu du fichier. Vous pouvez modifier les types dans le tableau d'aperçu. Si cette valeur est définie sur faux, tous les types de colonnes sont inférés comme STRING.
    • **Les lignes s'étendent sur plusieurs lignes** (désactivé par default) : Indique si la valeur d'une colonne peut s'étendre sur plusieurs lignes dans le fichier.
    • **Merge the schema across multiple files** : s'il faut ou non déduire le schéma de plusieurs fichiers et fusionner le schéma de chaque fichier. Si cette option est désactivée, le schéma d’un fichier est utilisé.
  • Pour JSON, les options suivantes sont disponibles :

    • Détecter automatiquement les types de colonnes (activé par default) : détecte automatiquement les types de colonnes à partir du contenu du fichier. Vous pouvez modifier les types dans le tableau d'aperçu. Si cette valeur est définie sur faux, tous les types de colonnes sont inférés comme STRING.
    • Les lignes s'étendent sur plusieurs lignes (activé par default) : Si la valeur d'une colonne peut s'étendre sur plusieurs lignes dans le fichier.
    • Autoriser les commentaires (activé par default) : indique si les commentaires sont autorisés dans le fichier.
    • Autoriser les guillemets simples (activé par default) : indique si les guillemets simples sont autorisés dans le fichier.
    • Déduire le Timestamp (activé par default) : s'il faut essayer d'inférer les chaînes d'horodatage comme TimestampType.

L'aperçu des données se met à jour automatiquement lorsque vous modifiez les options de format.

remarque

Lorsque vous upload plusieurs fichiers, les règles suivantes s’appliquent :

  • Les paramètres d'en-tête s'appliquent à tous les fichiers. Assurez-vous que les en-têtes sont systématiquement absents ou présents dans tous les fichiers upload afin d'éviter toute perte de données.
  • Les fichiers upload se combinent en ajoutant toutes les données sous forme de lignes dans la table cible. La jointure ou la fusion d’enregistrements lors de l’upload de fichiers n’est pas prise en charge.

Noms des colonnes et types

Vous pouvez modifier les noms et types 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 de saisie en haut de la colonne.

    Les noms de colonne ne prennent pas en charge les virgules, les barres obliques inverses ou les caractères Unicode (tels que les emojis).

Les types de données des colonnes sont déduits par default pour les fichiers CSV et JSON. Vous pouvez interpréter toutes les colonnes comme étant de type STRING en désactivant Attributs avancés > Détecter automatiquement les types de colonnes .

remarque
  • L'inférence de schéma effectue une détection au mieux des types de colonnes. Le changement des types de colonnes peut entraîner que certaines valeurs soient converties en NULL si la valeur ne peut pas être correctement convertie en type de données cible. La conversion BIGINT en DATE ou TIMESTAMP colonnes n'est pas prise en charge. Databricks vous recommande de créer une table d'abord, puis de transformer ces colonnes à l'aide de fonctions SQL par la suite.
  • Pour prendre en charge les noms de colonnes de table avec des caractères spéciaux, la page Créer ou modifier une table à l'aide de l'upload de fichiers utilise le mappage de colonnes.
  • Pour ajouter des commentaires aux colonnes, créez la table et accédez à Explorateur de catalogues où vous pouvez ajouter des commentaires.

Types de données pris en charge

La page Créer ou modifier une table à l’aide du fichier upload prend en charge les types de données suivants. Pour plus d’information sur les types de données individuels, voir types de données SQL.

Type de données

Description

BIGINT

Nombres entiers signés de 8 octets.

BOOLEAN

Valeurs booléennes (true, false).

DATE

Valeurs comprenant les valeurs des 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 les valeurs des champs année, mois, jour, heure, minute et seconde, avec le fuseau horaire local de la session.

STRUCT

Valeurs avec la structure décrite par une séquence de champs.

ARRAY

Valeurs comprenant une séquence d'éléments avec le type elementType.

DECIMAL(P,S)

Nombres avec une précision maximale de P et une échelle fixe de S.

Type de données

Description

BIGINT

Nombres entiers signés de 8 octets.

BOOLEAN

Valeurs booléennes (true, false).

DATE

Valeurs comprenant les valeurs des 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 les valeurs des champs année, mois, jour, heure, minute et seconde, avec le fuseau horaire local de la session.

STRUCT

Valeurs avec la structure décrite par une séquence de champs.

ARRAY

Valeurs comprenant une séquence d'éléments avec le type elementType.

DECIMAL(P,S)

Nombres avec une précision maximale de P et une échelle fixe de S.

Problèmes connus

La conversion de BIGINT en types non convertibles comme DATE, tels que les dates au format 'aaaa', peut Trigger des erreurs.