Options de chargeur automatique
Les options de configuration propres à la source cloudFiles
sont précédées par cloudFiles
afin qu’elles se trouvent dans un espace de noms distinct des autres options de source de flux structuré.
- Options courantes d’Auto Loader
- Options de liste de répertoires
- Options de notification de fichiers
- Options de format de fichier
- Options spécifiques au cloud
Options d’Auto Loader courantes
Vous pouvez configurer les options suivantes pour le mode Liste de répertoires ou Notification de fichiers.
Option |
---|
cloudFiles.allowOverwrites Entrez : Boolean Indique s’il faut autoriser les modifications des fichiers du répertoire d’entrée à remplacer les données existantes. Il existe quelques avertissements concernant l’activation de cette configuration. Veuillez vous référer à Auto Loader traite-t-il à nouveau le fichier lorsque le fichier est ajouté ou écrasé ? pour plus de détails. Valeur par défaut : false |
cloudFiles.backfillInterval Entrez : Interval String Auto Loader peut déclencher des renvois asynchrones à un intervalle donné, par exemple, 1 day pour un renvoi une fois par jour ou 1 week pour un renvoi une fois par semaine. Les systèmes de notification d’événements de fichiers ne garantissent pas une livraison à 100 % de tous les fichiers qui ont été chargés. Vous pouvez donc utiliser des renvois pour garantir que tous les fichiers seront finalement traités, disponibles dans Databricks Runtime 8.4 (EoS) et versions ultérieures.Valeur par défaut : aucune |
cloudFiles.format Type : String Le format du fichier de données dans le chemin source. Les valeurs autorisées sont les suivantes : - avro : fichier Avro- binaryFile : Fichier binaire- csv Lire les fichiers CSV- json : Fichier JSON- orc : fichier ORC- parquet : Lire des fichiers Parquet à l’aide d’Azure Databricks- text : fichiers texte- xml : Lire et écrire des fichiers XMLValeur par défaut : aucune (option obligatoire) |
cloudFiles.includeExistingFiles Entrez : Boolean Indique si les fichiers existants doivent être inclus dans le chemin d’entrée du traitement du flux ou si seuls les nouveaux fichiers arrivant après la configuration initiale doivent être traités. Cette option est évaluée uniquement lorsque vous démarrez un flux pour la première fois. La modification de cette option après le redémarrage du flux n’a aucun effet. Valeur par défaut : true |
cloudFiles.inferColumnTypes Entrez : Boolean Indique s’il faut déduire les types de colonnes exacts lors de l’utilisation de l’inférence de schéma. Par défaut, les colonnes sont déduites sous forme de chaînes lors de l’inférence de jeux de données JSON et CSV. Pour plus d’informations, consultez Inférence de schéma. Valeur par défaut : false |
cloudFiles.maxBytesPerTrigger Entrez : Byte String Nombre maximal de nouveaux octets à traiter dans chaque déclencheur. Vous pouvez spécifier une chaîne d’octets comme 10g pour limiter chaque microlot à 10 Go de données. Il s’agit d’une valeur maximale non stricte. Si vous avez des fichiers de 3 Go chacun, Azure Databricks traite 12 Go dans un microlot. En cas d’utilisation avec cloudFiles.maxFilesPerTrigger , Azure Databricks consomme jusqu’à la limite inférieure de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger , selon celle qui est atteinte en premier. Cette option n’a pas d’effet quand elle est utilisée avec Trigger.Once() (Trigger.Once() est déprécié).Valeur par défaut : aucune |
cloudFiles.maxFileAge Type : Interval String Durée de suivi d’un événement de fichier à des fins de déduplication. Databricks ne recommande pas de régler ce paramètre, sauf si vous ingérez des données de l’ordre de millions de fichiers par heure. Pour plus d’informations, consultez la section relative à la rétention des événements. Un réglage cloudFiles.maxFileAge trop agressif peut entraîner des problèmes de qualité des données, notamment l'ingestion des données en double ou des fichiers manquants. Par conséquent, Databricks recommande un paramètre conservateur pour cloudFiles.maxFileAge , 90 jours, par exemple. Cette durée est similaire à ce que les solutions d'ingestion de données comparables recommandent.Valeur par défaut : aucune |
cloudFiles.maxFilesPerTrigger Type : Integer Nombre maximal de nouveaux fichiers à traiter dans chaque déclencheur. En cas d’utilisation avec cloudFiles.maxBytesPerTrigger , Azure Databricks consomme jusqu’à la limite inférieure de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger , selon celle qui est atteinte en premier. Cette option n’a aucun effet lorsqu’elle est utilisée avec Trigger.Once() (déprécié).Valeur par défaut : 1000 |
cloudFiles.partitionColumns Entrez : String Liste de colonnes de partition de type Hive, séparées par des virgules, que vous souhaitez déduire de la structure de répertoire des fichiers. Les colonnes de partition de type Hive sont des paires clé-valeur associées à un signe d’égalité, par exemple <base-path>/a=x/b=1/c=y/file.format . Dans cet exemple, les colonnes de partition sont a , b et c . Par défaut, ces colonnes sont automatiquement ajoutées à votre schéma, si vous utilisez l’inférence de schéma et fournissez le <base-path> à partir duquel charger les données. Si vous fournissez un schéma, Auto Loader s’attend à ce que ces colonnes soient incluses dans le schéma. Si vous ne voulez pas que ces colonnes fassent partie de votre schéma, vous pouvez spécifier "" pour ignorer ces colonnes. En outre, vous pouvez utiliser cette option lorsque vous souhaitez que les colonnes soient déduites du chemin d’accès au fichier dans les structures de répertoire complexes, comme dans l’exemple ci-dessous :<base-path>/year=2022/week=1/file1.csv <base-path>/year=2022/month=2/day=3/file2.csv <base-path>/year=2022/month=2/day=4/file3.csv En spécifiant cloudFiles.partitionColumns sous la forme year,month,day , vous obtiendrezyear=2022 pour file1.csv , mais les colonnes month et day seront null .month et day seront analysées correctement pour file2.csv et file3.csv .Valeur par défaut : aucune |
cloudFiles.schemaEvolutionMode Entrez : String Mode d’évolution du schéma à mesure que de nouvelles colonnes sont découvertes dans les données. Par défaut, les colonnes sont déduites sous forme de chaînes lors de l’inférence de jeux de données JSON. Pour plus d’informations, consultez Évolution de schéma. Valeur par défaut : "addNewColumns" si aucun schéma n’est fourni.Sinon, "none" . |
cloudFiles.schemaHints Entrez : String Informations relatives au schéma que vous fournissez à Auto Loader pendant l’inférence de schéma. Pour plus d’informations, consultez les conseils de schéma. Valeur par défaut : aucune |
cloudFiles.schemaLocation Entrez : String Emplacement dans lequel stocker le schéma inféré et les modifications ultérieures. Pour plus d’informations, consultez Inférence de schéma. Valeur par défaut : aucune (obligatoire lors de l’inférence du schéma) |
cloudFiles.useStrictGlobber Type : Boolean Indique s’il faut utiliser un globber strict qui correspond au comportement d’utilisation des caractères génériques par défaut d’autres sources de fichiers dans Apache Spark. Pour plus d’informations, consultez Modèles de chargement de données courants. Disponible dans Databricks Runtime 12.2 LTS et versions ultérieures. Valeur par défaut : false |
cloudFiles.validateOptions Entrez : Boolean Indique s’il faut valider les options d’Auto Loader et renvoyer une erreur pour les options inconnues ou incohérentes. Valeur par défaut : true |
Options de liste de répertoires
Les options suivantes s’appliquent au mode Liste de répertoires.
Option |
---|
cloudFiles.useIncrementalListing (déconseillé)Entrez : String Cette fonctionnalité est déconseillée. Databricks vous recommande d’utiliser un mode de notification de fichier plutôt que cloudFiles.useIncrementalListing .Indique s’il faut utiliser la liste incrémentielle plutôt que la liste complète en mode Liste de répertoires. Par défaut, Auto Loader fait de son mieux pour détecter automatiquement si un répertoire donné s’applique à la liste incrémentielle. Vous pouvez utiliser explicitement la liste incrémentielle ou la liste de répertoires complète en la définissant respectivement sur true ou false .L’activation incorrecte de la liste incrémentielle sur un répertoire non lexical empêche le chargeur automatique de découvrir de nouveaux fichiers. Fonctionne avec Azure Data Lake Storage Gen2 ( abfss:// ), S3 (s3:// ) et GCS (gs:// ).Disponible dans Databricks Runtime 9.1 LTS et ultérieur. Valeur par défaut : auto Valeurs disponibles : auto , true , false |
Options de notification de fichiers
Les options suivantes s’appliquent au mode Notification de fichiers.
Option |
---|
cloudFiles.fetchParallelism Entrez : Integer Nombre de threads à utiliser lors de la récupération de messages auprès du service de mise en file d’attente. Valeur par défaut : 1 |
cloudFiles.pathRewrites Type : Une chaîne JSON Obligatoire uniquement si vous spécifiez un queueUrl qui reçoit des notifications de fichiers de plusieurs compartiments S3 et que vous souhaitez tirer parti des points de montage configurés pour accéder aux données de ces conteneurs. Utilisez cette option pour réécrire le préfixe du chemin d’accès bucket/key avec le point de montage. Seuls les préfixes peuvent être réécrits. Par exemple, pour la configuration{"<databricks-mounted-bucket>/path": "dbfs:/mnt/data-warehouse"} , le chemin d’accèss3://<databricks-mounted-bucket>/path/2017/08/fileA.json est réécrit en dbfs:/mnt/data-warehouse/2017/08/fileA.json .Valeur par défaut : aucune |
cloudFiles.resourceTag Entrez : Map(String, String) Série de paires de balises clé-valeur pour aider à associer et à identifier les ressources liées, par exemple : cloudFiles.option("cloudFiles.resourceTag.myFirstKey", "myFirstValue") .option("cloudFiles.resourceTag.mySecondKey", "mySecondValue") Pour plus d’informations sur AWS, consultez Balises de répartition des coûts Amazon SQS et Configuration des balises pour une rubrique Amazon SNS. (1) Pour plus d’informations sur Azure, consultez Affectation de noms pour les files d’attente et les métadonnées et la couverture de properties.labels dans Abonnements aux événements. Auto Loader stocke ces paires de balises clé-valeur au format JSON en tant qu’étiquettes. (1)Pour plus d’informations sur GCP, consultez Signaler l’utilisation avec des libellés. (1) Valeur par défaut : aucune |
cloudFiles.useNotifications Type : Boolean Indique s’il faut utiliser le mode Notification de fichiers pour déterminer l’existence de nouveaux fichiers. Si false , utilisez le mode Liste de répertoires. Consultez Comparer les modes de détection de fichiers Auto Loader.Valeur par défaut : false |
(1) Auto Loader ajoute les paires de balises clé-valeur suivantes par défaut dans la mesure du possible :
vendor
:Databricks
path
: emplacement à partir duquel les données sont chargées. Non disponible dans GCP en raison de limitations des libellés.checkpointLocation
: Emplacement du point de contrôle du flux. Non disponible dans GCP en raison de limitations des libellés.streamId
: Identificateur unique au niveau mondial pour le flux.
Ces noms de clés sont réservés et vous ne pouvez pas remplacer leurs valeurs.
options de format de fichier
Grâce à Auto Loader, vous pouvez ingérer des fichiers JSON
, CSV
, PARQUET
, AVRO
, TEXT
, BINARYFILE
et ORC
.
- Options génériques
- Options
JSON
- Options
CSV
- Options
XML
- Options
PARQUET
- Options
AVRO
- Options
BINARYFILE
- Options
TEXT
- Options
ORC
Options génériques
Les options suivantes s’appliquent à tous les formats de fichier.
Option |
---|
ignoreCorruptFiles Entrez : Boolean Indique s’il faut ignorer les fichiers endommagés. Si la valeur est true, les travaux Spark continueront à s’exécuter lorsqu’ils rencontrent des fichiers manquants et le contenu qui a été lu sera toujours renvoyé. Observable sous la forme numSkippedCorruptFiles dans lacolonne operationMetrics de l’historique Delta Lake. Disponible dans Databricks Runtime 11.3 LTS et versions ultérieures.Valeur par défaut : false |
ignoreMissingFiles Entrez : Boolean Indique s’il faut ignorer les fichiers manquants. Si la valeur est true, les travaux Spark continueront à s’exécuter lorsqu’ils rencontrent des fichiers manquants, et le contenu qui a été lu sera toujours renvoyé. Disponible dans Databricks Runtime 11.3 LTS et versions ultérieures. Valeur par défaut : false pour le chargeur automatique, true pour COPY INTO (hérité) |
modifiedAfter Type : Timestamp String , par exemple, 2021-01-01 00:00:00.000000 UTC+0 Timestamp facultatif pour ingérer les fichiers dont l'horodatage de modification est postérieur à l'horodatage fourni. Valeur par défaut : aucune |
modifiedBefore Type : Timestamp String , par exemple, 2021-01-01 00:00:00.000000 UTC+0 Un horodatage optionnel pour ingérer les fichiers dont l'horodatage de modification est antérieur à l'horodatage fourni. Valeur par défaut : aucune |
pathGlobFilter ou fileNamePattern Entrez : String Modèle Glob potentiel à fournir pour choisir des fichiers. Équivalent à PATTERN dans COPY INTO (hérité). fileNamePattern peut être utilisé dans read_files .Valeur par défaut : aucune |
recursiveFileLookup Type : Boolean Décider si l’inférence de partition doit être ignorée lors de l’inférence de schéma. Cette opération n’affecte les fichiers qui sont chargés. Valeur par défaut : false |
Options JSON
Option |
---|
allowBackslashEscapingAnyCharacter Entrez : Boolean Indique s’il faut autoriser les barres obliques inverses pour placer dans une séquence d'échappement tout caractère qui suit. Si cette option n’est pas activée, seuls les caractères explicitement listés par la spécification JSON peuvent être placés dans une séquence d’échappement. Valeur par défaut : false |
allowComments Entrez : Boolean Indique s’il faut autoriser ou non l’utilisation de commentaires de style Java, C et C++ (variétés '/' , '*' et '//' ) dans le contenu analysé.Valeur par défaut : false |
allowNonNumericNumbers Entrez : Boolean Indique s’il faut autoriser l'ensemble des jetons non numériques ( NaN ) comme valeurs légales de nombres flottants.Valeur par défaut : true |
allowNumericLeadingZeros Type : Boolean Indique s’il faut autoriser les nombres entiers à commencer par des zéros supplémentaires (pouvant être ignorés) (par exemple, 000001 ).Valeur par défaut : false |
allowSingleQuotes Entrez : Boolean Indique s’il faut autoriser l'utilisation de guillemets simples (apostrophe, caractère '\' ) pour citer des chaînes de caractères (noms et valeurs de chaînes).Valeur par défaut : true |
allowUnquotedControlChars Entrez : Boolean Indique s’il faut autoriser les chaînes JSON à contenir des caractères de contrôle sans séquence d’échappement (caractères ASCII dont la valeur est inférieure à 32, y compris les tabulations et sauts de ligne). Valeur par défaut : false |
allowUnquotedFieldNames Entrez : Boolean Indique s’il faut autoriser l’utilisation de noms de champs sans guillemets (autorisés par JavaScript, mais pas par la spécification JSON). Valeur par défaut : false |
badRecordsPath Entrez : String Chemin d’accès pour stocker les fichiers contenant des informations sur les enregistrements JSON incorrects. Valeur par défaut : aucune |
columnNameOfCorruptRecord Entrez : String Colonne de stockage des enregistrements malformés et qui ne peuvent pas être analysés. Si l’élément mode de l'analyse est défini comme DROPMALFORMED , cette colonne sera vide.Valeur par défaut : _corrupt_record |
dateFormat Entrez : String Format d’analyse des chaînes de date. Valeur par défaut : yyyy-MM-dd |
dropFieldIfAllNull Type : Boolean Indique s’il faut ignorer les colonnes de toutes les valeurs Null ou des tableaux/structs vides pendant l’inférence de schéma. Valeur par défaut : false |
encoding ou charset Entrez : String Nom de l’encodage des fichiers JSON. Consultez java.nio.charset.Charset pour obtenir la liste des options. Vous ne pouvez pas utiliser UTF-16 et UTF-32 lorsque multiline est true .Valeur par défaut : UTF-8 |
inferTimestamp Entrez : Boolean Indique s’il faut essayer de déduire les chaînes timestamp en tant que TimestampType . Lorsque la valeur est définie surtrue , l’inférence de schéma peut prendre beaucoup plus de temps. Vous devez activer cloudFiles.inferColumnTypes pour une utilisation avec Auto Loader (Chargeur automatique).Valeur par défaut : false |
lineSep Entrez : String Chaîne entre deux enregistrements JSON consécutifs. Valeur par défaut : Aucune, qui couvre \r , \r\n et \n |
locale Entrez : String Identificateur java.util.Locale . Influe sur la date par défaut, le timestamp et l'analyse des décimales au sein du JSON.Valeur par défaut : US |
mode Type : String Mode de l’analyseur pour la gestion des enregistrements mal formés. Valeurs possibles : 'PERMISSIVE' ,'DROPMALFORMED' , ou 'FAILFAST' .Valeur par défaut : PERMISSIVE |
multiLine Entrez : Boolean Indique si les enregistrements JSON s’étendent sur plusieurs lignes. Valeur par défaut : false |
prefersDecimal Entrez : Boolean Tente d'interpréter les chaînes comme DecimalType plutôt que comme type float ou double lorsque cela est possible. Vous devez également utiliser une inférence de schéma, en activantinferSchema ou en utilisant cloudFiles.inferColumnTypes avec Chargeur automatique.Valeur par défaut : false |
primitivesAsString Entrez : Boolean Indique s’il faut déduire les types primitifs comme les nombres et les valeurs booléennes comme StringType .Valeur par défaut : false |
readerCaseSensitive Entrez : Boolean Spécifie le comportement de respect de la casse lorsque rescuedDataColumn est activé. Si la valeur est vraie, sauver les colonnes de données du schéma dont les noms diffèrent au niveau de la casse. Sinon, lire les données sans respect de la casse. Disponible dans Databricks Runtime13.3 et versions ultérieures. Valeur par défaut : true |
rescuedDataColumn Entrez : String Indique s’il faut collecter toutes les données qui ne peuvent pas être analysées en raison d’une incompatibilité de type de données ou de schéma (y compris la casse des colonnes) dans une colonne distincte. Cette colonne est incluse par défaut lors de l’utilisation d’Auto Loader. Pour plus de détails, reportez-vous à Qu’est-ce que la colonne des données récupérées ?. COPY INTO (hérité) ne prend pas en charge la colonne de données sauvée, car vous ne pouvez pas définir manuellement le schéma à l’aide de COPY INTO . Databricks recommande d’utiliser le chargeur automatique pour la plupart des scénarios d’ingestion.Valeur par défaut : aucune |
singleVariantColumn Entrez : String Indique s’il faut ingérer l’intégralité du document JSON, analysé dans une seule colonne de variante avec la chaîne donnée comme nom de la colonne. Si cette option est désactivée, les champs JSON sont ingérés dans leurs propres colonnes. Valeur par défaut : aucune |
timestampFormat Entrez : String Format d’analyse des chaînes de timestamp. Valeur par défaut : yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Entrez : String L’élément java.time.ZoneId à utiliser lors de l'analyse des timestamps et des dates.Valeur par défaut : aucune |
Options CSV
Option |
---|
badRecordsPath Entrez : String Chemin d’accès pour stocker les fichiers contenant des informations sur les enregistrements CSV incorrects. Valeur par défaut : aucune |
charToEscapeQuoteEscaping Entrez : Char Caractère utilisé pour placer dans une séquence d’échappement le caractère utilisé pour les guillemets d’échappement. Par exemple, pour l'enregistrement suivant : [ " a\\", b ] :– Si le caractère d’échappement de '\' n’est pas défini, l’enregistrement n’est pas analysé. L’analyseur lira les caractères : [a],[\],["],[,],[ ],[b] et générera une erreur car il ne trouve pas de guillemet fermant.– Si le caractère d’échappement de '\' est défini comme '\' , l’enregistrement est lu avec 2 valeurs : [a\] et [b] .Valeur par défaut : '\0' |
columnNameOfCorruptRecord Pris en charge pour Auto Loader. Non pris en charge pour COPY INTO (hérité).Type : String Colonne pour stocker les enregistrements malformés et qui ne peuvent pas être analysés. Si l’élément mode de l'analyse est défini comme DROPMALFORMED , cette colonne sera vide.Valeur par défaut : _corrupt_record |
comment Entrez : Char Définit le caractère qui représente un commentaire de ligne lorsqu’il se trouve au début d’une ligne de texte. Utilisez '\0' pour désactiver le saut des commentaires.Valeur par défaut : '\u0000' |
dateFormat Entrez : String Format d’analyse des chaînes de date. Valeur par défaut : yyyy-MM-dd |
emptyValue Entrez : String Représentation sous forme de chaîne d’une valeur vide. Valeur par défaut : "" |
encoding ou charset Type : String Nom de l’encodage des fichiers CSV. Pour obtenir la liste des options, consultez java.nio.charset.Charset . UTF-16 et UTF-32 ne peuvent pas être utilisées lorsque multiline est true .Valeur par défaut : UTF-8 |
enforceSchema Type : Boolean Indique s’il faut appliquer de force le schéma spécifié ou déduit aux fichiers CSV. Si l’option est activée, les en-têtes des fichiers CSV sont ignorés. Cette option est ignorée par défaut lors de l’utilisation d’Auto Loader pour récupérer des données et permettre l’évolution du schéma. Valeur par défaut : true |
escape Entrez : Char Caractère d’échappement à utiliser lors de l’analyse des données. Valeur par défaut : '\' |
header Type : Boolean Indique si les fichiers CSV contiennent un en-tête. Auto Loader suppose que les fichiers comportent des en-têtes lors de l’inférence du schéma. Valeur par défaut : false |
ignoreLeadingWhiteSpace Entrez : Boolean Indique s’il faut ignorer les espaces blancs de début pour chaque valeur analysée. Valeur par défaut : false |
ignoreTrailingWhiteSpace Entrez : Boolean Indique s’il faut ignorer les espaces blancs de fin pour chaque valeur analysée. Valeur par défaut : false |
inferSchema Entrez : Boolean Indique s’il faut déduire les types de données des enregistrements CSV analysés ou supposer que toutes les colonnes sont de type StringType . Nécessite un passage supplémentaire sur les données si la valeur est true . Pour Chargeur automatique, utilisez cloudFiles.inferColumnTypes à la place.Valeur par défaut : false |
lineSep Entrez : String Une chaîne entre deux enregistrements CSV consécutifs. Valeur par défaut : Aucune, qui couvre \r , \r\n et \n |
locale Entrez : String Identificateur java.util.Locale . Influence la configuration par défaut de la date, de l’horodatage et du format décimal dans le fichier CSV.Valeur par défaut : US |
maxCharsPerColumn Entrez : Int Nombre maximal de caractères attendus d’une valeur à analyser. Peut être utilisé pour éviter les erreurs de mémoire. La valeur par défaut est -1 , ce qui signifie illimité.Valeur par défaut : -1 |
maxColumns Entrez : Int Limite inconditionnelle du nombre de colonnes qu’un enregistrement peut avoir. Valeur par défaut : 20480 |
mergeSchema Entrez : Boolean Indique s’il faut déduire le schéma entre plusieurs fichiers et fusionner le schéma de chaque fichier. Option activée par défaut pour Auto Loader lors de l’inférence du schéma. Valeur par défaut : false |
mode Entrez : String Mode de l’analyseur pour la gestion des enregistrements mal formés. Valeurs possibles : 'PERMISSIVE' ,'DROPMALFORMED' et 'FAILFAST' .Valeur par défaut : PERMISSIVE |
multiLine Type : Boolean Indique si les enregistrements CSV s’étendent sur plusieurs lignes. Valeur par défaut : false |
nanValue Entrez : String Représentation sous forme de chaîne d'une valeur non numérique lors de l'analyse des colonnes FloatType et DoubleType .Valeur par défaut : "NaN" |
negativeInf Entrez : String Représentation sous forme de chaîne de l'infini négatif lors de l'analyse des colonnes FloatType ou DoubleType .Valeur par défaut : "-Inf" |
nullValue Entrez : String Représentation sous forme de chaîne d’une valeur Null. Valeur par défaut : "" |
parserCaseSensitive (déconseillé)Type : Boolean Lors de la lecture de fichiers, indique s’il faut aligner les colonnes déclarées dans l’en-tête avec le cas de schéma en respectant la casse. Il s’agit de true par défaut pour Auto Loader. Les colonnes qui diffèrent au niveau de la casse sont récupérées dans rescuedDataColumn si cette option est activée. Cette option a été abandonnée au profit de readerCaseSensitive .Valeur par défaut : false |
positiveInf Type : String Représentation sous forme de chaîne de l'infini positif lors de l'analyse des colonnes FloatType ou DoubleType .Valeur par défaut : "Inf" |
preferDate Type : Boolean Tente de déduire des chaînes en tant que dates au lieu de timestamp lorsque cela est possible. Vous devez également utiliser l’inférence de schéma, en activant inferSchema ou en utilisantcloudFiles.inferColumnTypes avec Chargeur automatique.Valeur par défaut : true |
quote Type : Char Caractère utilisé pour échapper des valeurs où le délimiteur de champ fait partie de la valeur. Valeur par défaut : " |
readerCaseSensitive Entrez : Boolean Spécifie le comportement de respect de la casse lorsque rescuedDataColumn est activé. Si la valeur est vraie, sauver les colonnes de données du schéma dont les noms diffèrent au niveau de la casse. Sinon, lire les données sans respect de la casse.Valeur par défaut : true |
rescuedDataColumn Entrez : String Indique s’il faut collecter toutes les données qui ne peuvent pas être analysées en raison d’une incompatibilité de type de données et de schéma (y compris la casse des colonnes) dans une colonne distincte. Cette colonne est incluse par défaut lors de l’utilisation d’Auto Loader. Pour plus de détails, reportez-vous à Qu’est-ce que la colonne des données récupérées ?. COPY INTO (hérité) ne prend pas en charge la colonne de données sauvée, car vous ne pouvez pas définir manuellement le schéma à l’aide de COPY INTO . Databricks recommande d’utiliser le chargeur automatique pour la plupart des scénarios d’ingestion.Valeur par défaut : aucune |
sep ou delimiter Entrez : String Chaîne de séparateur entre les colonnes. Valeur par défaut : "," |
skipRows Entrez : Int Nombre de lignes à ignorer à partir du début du fichier CSV (y compris les lignes commentées et les lignes vides). Si header a la valeur vraie, l’en-tête sera la première ligne non ignorée et non commentée.Valeur par défaut : 0 |
timestampFormat Entrez : String Format d’analyse des chaînes de timestamp. Valeur par défaut : yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Entrez : String L’élément java.time.ZoneId à utiliser lors de l'analyse des timestamps et des dates.Valeur par défaut : aucune |
unescapedQuoteHandling Type : String Stratégie de gestion des guillemets sans séquence d’échappement. Options autorisées : - STOP_AT_CLOSING_QUOTE : si l’entrée contient des guillemets sans séquence d’échappement, accumuler le caractère de guillemet et poursuivre l’analyse de la valeur comme une valeur entre guillemets, jusqu’à ce qu’un guillemet fermant soit trouvé.- BACK_TO_DELIMITER : si l’entrée contient des guillemets sans séquence d’échappement, la valeur est considérée comme une valeur sans guillemets. L'analyseur accumulera tous les caractères de la valeur analysée actuelle jusqu'à trouver le délimiteur défini par sep . Si la valeur ne contient aucun délimiteur, l’analyseur continue à accumuler les caractères de l’entrée jusqu’à trouver un délimiteur ou une fin de ligne.- STOP_AT_DELIMITER : si l’entrée contient des guillemets sans séquence d’échappement, la valeur est considérée comme une valeur sans guillemets. L'analyseur accumulera tous les caractères jusqu'à trouver le délimiteur défini par sep ou une ligne de fin.- SKIP_VALUE : si l’entrée contient des guillemets sans séquence d’échappement, le contenu analysé pour la valeur donnée est ignoré (jusqu’au prochain délimiteur) et la valeur définie dans nullValue est produite à la place.- RAISE_ERROR : si l’entrée contient des guillemets sans séquence d’échappement, uneTextParsingException sera levée.Valeur par défaut : STOP_AT_DELIMITER |
Options XML
Option | Description | Étendue |
---|---|---|
rowTag |
La balise de ligne des fichiers XML à traiter comme une ligne. Dans l’exemple XML <books> <book><book>...<books> , la valeur appropriée est book . C'est une option obligatoire. |
lecture |
samplingRatio |
Définit une fraction de lignes utilisées pour l’inférence de schéma. Les fonctions intégrées XML ignorent cette option. Par défaut : 1.0 . |
lecture |
excludeAttribute |
Indique s’il faut exclure des attributs dans les éléments. Par défaut : false . |
lecture |
mode |
Mode de traitement des enregistrements endommagés pendant l’analyse.PERMISSIVE : pour les enregistrements endommagés, place la chaîne malformée dans un champ configuré par columnNameOfCorruptRecord et définit les champs malformés sur null . Pour conserver les enregistrements corrompus, vous pouvez définir un champ de type string nommé columnNameOfCorruptRecord dans un schéma défini par l’utilisateur. Si un schéma n’a pas le champ, les enregistrements endommagés sont supprimés pendant l’analyse. Lors de l’inférence d’un schéma, l’analyseur ajoute implicitement un champ columnNameOfCorruptRecord dans un schéma de sortie.DROPMALFORMED : ignore les enregistrements endommagés. Ce mode n’est pas pris en charge pour les fonctions intégrées XML.FAILFAST : lève une exception lorsque l’analyseur rencontre des enregistrements endommagés. |
lecture |
inferSchema |
Si true , tente de déduire un type approprié pour chaque colonne DataFrame résultante. Si false , toutes les colonnes résultantes sont de type string . Valeur par défaut :true . Les fonctions intégrées XML ignorent cette option. |
lecture |
columnNameOfCorruptRecord |
Permet de renommer le nouveau champ qui contient une chaîne malformée créée par le mode PERMISSIVE . Par défaut : spark.sql.columnNameOfCorruptRecord . |
lecture |
attributePrefix |
Le préfixe des attributs permettant de les différencier des éléments. Il s’agira du préfixe pour les noms de champs. La valeur par défaut est _ . Peut être vide pour lire du code XML, mais pas pour l’écriture. |
lecture, écriture |
valueTag |
Balise utilisée pour les données caractères dans les éléments qui ont également des éléments d’attribut(s) ou d’élément(s) enfant(s). L’utilisateur peut spécifier le champ valueTag dans le schéma ou il sera ajouté automatiquement pendant l’inférence du schéma lorsque les données caractères sont présentes dans des éléments avec d’autres éléments ou attributs. Valeur par défaut : _VALUE |
lecture, écriture |
encoding |
Pour la lecture, décode les fichiers XML par le type d’encodage donné. Pour l’écriture, spécifie l’encodage (charset) des fichiers XML enregistrés. Les fonctions intégrées XML ignorent cette option. Par défaut : UTF-8 . |
lecture, écriture |
ignoreSurroundingSpaces |
Définit si les espaces blancs entourant les valeurs lues doivent être ignorés. Par défaut : true . Les caractères constitués uniquement d'espaces blancs sont ignorés. |
lecture |
rowValidationXSDPath |
Chemin d’accès à un fichier XSD facultatif utilisé pour valider le code XML de chaque ligne individuellement. Les lignes qui ne peuvent pas être validées sont traitées comme des erreurs d’analyse comme indiqué ci-dessus. Le XSD, par ailleurs, n'affecte ni le schéma fourni ni le schéma inféré. | lecture |
ignoreNamespace |
Si true , les préfixes d’espaces de noms sur les éléments et attributs XML sont ignorés. Les balises <abc:author> et <def:author> , par exemple, sont traitées comme si elles étaient simplement <author> . Les espaces de noms ne peuvent pas être ignorés sur l’élément rowTag , uniquement ses enfants en lecture. L’analyse XML ne prend pas en compte l’espace de noms même si false . Par défaut : false . |
lecture |
timestampFormat |
Chaîne de format de timestamp personnalisée qui suit le format du modèle Date/Heure. Cela s’applique au type timestamp . Par défaut : yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] . |
lecture, écriture |
timestampNTZFormat |
Chaîne de format personnalisée pour l’horodatage sans fuseau horaire qui suit le format de modèle Date/Heure. Cela s’applique au type TimestampNTZType. Valeur par défaut :yyyy-MM-dd'T'HH:mm:ss[.SSS] |
lecture, écriture |
dateFormat |
Chaîne de format de date personnalisée qui suit le format de modèle date-heure. S’applique au type date. Par défaut : yyyy-MM-dd . |
lecture, écriture |
locale |
Définit des paramètres régionaux comme étiquette de langue au format IETF BCP 47. Par exemple, locale est utilisé pour l’analyse des dates et des horodatages. Par défaut : en-US . |
lecture |
rootTag |
Balise racine des fichiers XML. Par exemple, dans <books> <book><book>...</books> , la valeur appropriée est books . Vous pouvez inclure des attributs de base en spécifiant une valeur comme books foo="bar" . Par défaut : ROWS . |
écrire |
declaration |
Contenu de la déclaration XML à écrire au début de chaque fichier XML de sortie, avant le rootTag . Par exemple, une valeur de foo entraîne l’écriture de <?xml foo?> . Définissez sur une chaîne vide pour supprimer. Valeur par défaut : version="1.0" encoding="UTF-8" standalone="yes" . |
écrire |
arrayElementName |
Nom de l’élément XML qui entoure chaque élément d’une colonne matricielle lors de l’écriture. Par défaut : item . |
écrire |
nullValue |
Définit la représentation sous forme de chaîne de caractères d’une valeur nulle. Valeur par défaut : chaîne null . Quand il s’agit de null , l’analyseur n’écrit pas d’attributs et d’éléments pour les champs. |
lecture, écriture |
compression |
Code de compression à utiliser lors de l’enregistrement dans un fichier. Il peut s’agir de l’un des noms raccourcis insensibles à la casse connus (none , bzip2 , gzip , lz4 , snappy etdeflate ). Les fonctions intégrées XML ignorent cette option. Par défaut : none . |
écrire |
validateName |
Si la valeur est vraie, lève une erreur en cas d’échec de validation du nom d’élément XML. Par exemple, les noms de champs SQL peuvent avoir des espaces, mais les noms d’éléments XML ne peuvent pas. Valeur par défaut :true . |
écrire |
readerCaseSensitive |
Spécifie le comportement de respect de la casse lorsque rescuedDataColumn est activé. Si la valeur est vraie, sauver les colonnes de données du schéma dont les noms diffèrent au niveau de la casse. Sinon, lire les données sans respect de la casse. Par défaut : true . |
lecture |
rescuedDataColumn |
Indique s’il faut collecter toutes les données qui ne peuvent pas être analysées en raison d’une incompatibilité de type de données et de schéma (y compris la casse des colonnes) dans une colonne distincte. Cette colonne est incluse par défaut lors de l’utilisation d’Auto Loader. Pour plus d’informations, consultez Qu’est-ce que la colonne de données récupérées ?COPY INTO (hérité) ne prend pas en charge la colonne de données sauvée, car vous ne pouvez pas définir manuellement le schéma à l’aide de COPY INTO . Databricks recommande d’utiliser le chargeur automatique pour la plupart des scénarios d’ingestion.Valeur par défaut : None. |
lecture |
Options PARQUET
Option |
---|
datetimeRebaseMode Type : String Contrôle le réajustement des valeurs DATE et TIMESTAMP entre les calendriers julien et grégorien proleptique. Valeurs autorisées : EXCEPTION , LEGACY etCORRECTED .Valeur par défaut : LEGACY |
int96RebaseMode Entrez : String Contrôle la relocalisation des valeurs de timestamp INT96 entre les calendriers julien et grégorien proleptique. Valeurs autorisées : EXCEPTION , LEGACY etCORRECTED .Valeur par défaut : LEGACY |
mergeSchema Entrez : Boolean Indique s’il faut déduire le schéma entre plusieurs fichiers et fusionner le schéma de chaque fichier. Valeur par défaut : false |
readerCaseSensitive Entrez : Boolean Spécifie le comportement de respect de la casse lorsque rescuedDataColumn est activé. Si la valeur est vraie, sauver les colonnes de données du schéma dont les noms diffèrent au niveau de la casse. Sinon, lire les données sans respect de la casse.Valeur par défaut : true |
rescuedDataColumn Entrez : String Voulez-vous collecter toutes les données qui ne peuvent pas être analysées en raison d'une incompatibilité de type de données ou de schéma (y compris la casse des colonnes) dans une colonne distincte ? Cette colonne est incluse par défaut lors de l’utilisation d’Auto Loader. Pour plus de détails, reportez-vous à Qu’est-ce que la colonne des données récupérées ?. COPY INTO (hérité) ne prend pas en charge la colonne de données sauvée, car vous ne pouvez pas définir manuellement le schéma à l’aide de COPY INTO . Databricks recommande d’utiliser le chargeur automatique pour la plupart des scénarios d’ingestion.Valeur par défaut : aucune |
Options AVRO
Option |
---|
avroSchema Type : String Schéma facultatif fourni par un utilisateur au format Avro. Lors de la lecture Avro, cette option peut être définie sur un schéma évolué, qui est compatible mais différent du schéma Avro réel. Le schéma de désérialisation sera cohérent avec le schéma évolué. Par exemple, si vous définissez un schéma évolué contenant une colonne supplémentaire avec une valeur par défaut, le résultat de la lecture contiendra également la nouvelle colonne. Valeur par défaut : aucune |
datetimeRebaseMode Entrez : String Contrôle le rebasage des valeurs DATE et TIMESTAMP entre les calendriers julien et proleptique grégorien. Valeurs autorisées : EXCEPTION , LEGACY etCORRECTED .Valeur par défaut : LEGACY |
mergeSchema Entrez : Boolean Indique s’il faut déduire le schéma entre plusieurs fichiers et fusionner le schéma de chaque fichier. mergeSchema pour Avro n’assouplit pas les types de données.Valeur par défaut : false |
readerCaseSensitive Type : Boolean Spécifie le comportement de respect de la casse lorsque rescuedDataColumn est activé. Si la valeur est vraie, sauver les colonnes de données du schéma dont les noms diffèrent au niveau de la casse. Sinon, lire les données sans respect de la casse.Valeur par défaut : true |
rescuedDataColumn Type : String Si vous souhaitez collecter toutes les données qui ne peuvent pas être analysées en raison d'une incompatibilité de type de données ou d'une incompatibilité de schéma (y compris la casse des colonnes) dans une colonne séparée. Cette colonne est incluse par défaut lors de l’utilisation d’Auto Loader. COPY INTO (hérité) ne prend pas en charge la colonne de données sauvée, car vous ne pouvez pas définir manuellement le schéma à l’aide de COPY INTO . Databricks recommande d’utiliser le chargeur automatique pour la plupart des scénarios d’ingestion.Pour plus de détails, reportez-vous à Qu’est-ce que la colonne des données récupérées ?. Valeur par défaut : aucune |
Options BINARYFILE
Les fichiers binaires n’ont pas d’autres options de configuration.
Options TEXT
Option |
---|
encoding Type : String Nom de l’encodage des fichiers TEXT. Consultez java.nio.charset.Charset pour obtenir la liste des options.Valeur par défaut : UTF-8 |
lineSep Entrez : String Chaîne entre deux enregistrements TEXT consécutifs. Valeur par défaut : Aucune, qui couvre \r , \r\n et \n |
wholeText Entrez : Boolean Indique si un fichier doit être lu en tant qu’enregistrement unique. Valeur par défaut : false |
Options ORC
Option |
---|
mergeSchema Entrez : Boolean Indique s’il faut déduire le schéma entre plusieurs fichiers et fusionner le schéma de chaque fichier. Valeur par défaut : false |
Options spécifiques au cloud
Auto Loader fournit un certain nombre d’options permettant de configurer l’infrastructure cloud.
Options spécifiques à AWS
Fournissez l’option suivante uniquement si vous choisissez cloudFiles.useNotifications
= true
et que vous souhaitez qu’Auto Loader configure les services de notification pour vous :
Option |
---|
cloudFiles.region Entrez : String Région où le compartiment S3 source réside et où les services AWS SNS et SQS seront créés. Valeur par défaut : la région de l’instance EC2. |
Fournissez l’option suivante uniquement si vous choisissez cloudFiles.useNotifications
= true
et voulez qu’Auto Loader utilise une file d’attente que vous avez déjà configurée :
Option |
---|
cloudFiles.queueUrl Type : String URL de la file d’attente SQS. Si elle est fournie, Auto Loader consomme directement les événements de cette file d’attente au lieu de configurer ses propres services AWS SNS et SQS. Valeur par défaut : aucune |
Options d’authentification AWS
Fournissez l’option d’authentification suivante pour utiliser les informations d’identification d’un service Databricks :
Option |
---|
databricks.serviceCredential Type : String Nom de votre identifiant de service Databricks. Valeur par défaut : aucune |
Lorsque les informations d’identification du service Databricks ou les rôles IAM ne sont pas disponibles, vous pouvez fournir les options d’authentification suivantes à la place :
Option |
---|
cloudFiles.awsAccessKey Entrez : String ID de la clé d’accès AWS pour l’utilisateur. À fournir avec cloudFiles.awsSecretKey .Valeur par défaut : aucune |
cloudFiles.awsSecretKey Entrez : String Clé d’accès au secret AWS pour l’utilisateur. À fournir avec cloudFiles.awsAccessKey .Valeur par défaut : aucune |
cloudFiles.roleArn Type : String ARN d’un rôle IAM à adopter, si nécessaire. Le rôle peut être adopté à partir du profil d’instance de votre cluster ou en fournissant des informations d’identification avec cloudFiles.awsAccessKey et cloudFiles.awsSecretKey .Valeur par défaut : aucune |
cloudFiles.roleExternalId Entrez : String Identificateur à fournir lors de l’adoption d’un rôle en utilisant cloudFiles.roleArn .Valeur par défaut : aucune |
cloudFiles.roleSessionName Type : String Nom de session facultatif à utiliser lors de l’adoption d’un rôle en utilisant cloudFiles.roleArn .Valeur par défaut : aucune |
cloudFiles.stsEndpoint Entrez : String Point de terminaison facultatif à fournir pour accéder à AWS STS lors de l’adoption d’un rôle en utilisant cloudFiles.roleArn .Valeur par défaut : aucune |
Options spécifiques à Azure
Vous devez fournir des valeurs pour toutes les options suivantes si vous spécifiez cloudFiles.useNotifications
= true
et souhaitez qu’Auto Loader configure les services de notification pour vous :
Option |
---|
cloudFiles.resourceGroup Entrez : String Groupe de ressources Azure sous lequel le compte de stockage est créé. Valeur par défaut : aucune |
cloudFiles.subscriptionId Type : String ID d’abonnement Azure sous lequel le groupe de ressources est créé. Valeur par défaut : aucune |
databricks.serviceCredential Entrez : String Nom de vos informations d’identification de service Databricks. Valeur par défaut : aucune |
Si les informations d’identification d’un service Databricks ne sont pas disponibles, vous pouvez fournir les options d’authentification suivantes à la place :
Option |
---|
cloudFiles.clientId Entrez : String ID client ou ID d’application du principal de service. Valeur par défaut : aucune |
cloudFiles.clientSecret Type : String Secret client du principal de service. Valeur par défaut : aucune |
cloudFiles.connectionString Entrez : String Chaîne de connexion pour le compte de stockage, basée sur la clé d’accès du compte ou la signature d’accès partagé (SAS). Valeur par défaut : aucune |
cloudFiles.tenantId Entrez : String ID de locataire Azure sous lequel le principal de service est créé. Valeur par défaut : aucune |
Important
La configuration des notifications automatisées est disponible dans les régions Azure China et Azure Government avec Databricks Runtime 9.1 et ses versions ultérieures. Vous devez fournir un queueName
pour utiliser Auto Loader avec les notifications de fichiers dans ces régions pour les anciennes versions de DBR.
Fournissez l’option suivante uniquement si vous choisissez cloudFiles.useNotifications
= true
et voulez qu’Auto Loader utilise une file d’attente que vous avez déjà configurée :
Choix |
---|
cloudFiles.queueName Entrez : String Nom de la file d’attente Azure. S’il est fourni, la source de fichiers cloud consomme directement les événements de cette file d’attente au lieu de configurer ses propres services Azure Event Grid et Stockage File d’attente. Dans ce cas, votre databricks.serviceCredential ou cloudFiles.connectionString nécessite uniquement des autorisations de lecture sur la file d’attente.Valeur par défaut : aucune |
Options spécifiques à Google
L'Auto Loader peut configurer automatiquement les services de notification pour vous en utilisant les identifiants de service Databricks . Le compte de service créé avec les informations d’identification du service Databricks nécessite les autorisations spécifiées dans Qu’est-ce que le mode de notification de fichier chargeur automatique ?.
Option |
---|
cloudFiles.projectId Entrez : String ID du projet dans lequel se trouve le compartiment GCS. L’abonnement à Google Cloud Pub/Sub sera également créé dans ce projet. Valeur par défaut : aucune |
databricks.serviceCredential Entrez : String Nom de votre identifiant de service Databricks. Valeur par défaut : aucune |
Si les informations d’identification d’un service Databricks ne sont pas disponibles, vous pouvez utiliser directement des comptes de service Google. Vous pouvez configurer votre cluster pour qu’il assume un compte de service en suivant configuration du service Google ou en fournissant directement les options d’authentification suivantes :
Option |
---|
cloudFiles.client Entrez : String ID client du compte de service Google. Valeur par défaut : aucune |
cloudFiles.clientEmail Entrez : String Adresse e-mail du compte de service Google. Valeur par défaut : aucune |
cloudFiles.privateKey Entrez : String Clé privée générée pour le compte de service Google. Valeur par défaut : aucune |
cloudFiles.privateKeyId Entrez : String ID de la clé privée générée pour le compte de service Google. Valeur par défaut : aucune |
Fournissez l’option suivante uniquement si vous choisissez cloudFiles.useNotifications
= true
et voulez qu’Auto Loader utilise une file d’attente que vous avez déjà configurée :
Option |
---|
cloudFiles.subscription Entrez : String Nom de l’abonnement à Google Cloud Pub/Sub. S’il est fourni, la source de fichiers cloud consomme les événements de cette file d’attente au lieu de configurer ses propres services de notification GCS et Google Cloud Pub/Sub. Valeur par défaut : aucune |