JSON, Dynamic, Variant, BFloat16, Time et Time64.
Les types AggregateFunction, Interval, Nothing et QBit ne sont pas pris en charge.
Syntaxe
Arguments
Paramètres
SETTINGS est le dernier argument de l’appel. Il détermine comment sont générées les valeurs Nullable, Variant, Dynamic et JSON.
SETTINGS peut également être le seul argument, auquel cas la structure de la table d’insertion est conservée :
Valeur renvoyée
Un objet de type table avec le schéma demandé.Exemple d’utilisation
structure (dans ce cas, la structure est aléatoire) :
generateRandom(generateRandomStructure(), [random seed], max_string_length, max_array_length) avec une valeur de max_array_length suffisamment élevée peut générer une sortie extrêmement volumineuse en raison de la profondeur d’imbrication potentiellement importante (jusqu’à 16) des types complexes (Array, Tuple, Map, Nested).Génération de JSON
Une colonneJSON générée s’apparente à un flux de documents de même schéma : l’ensemble des clés et le type
de chaque clé sont déterminés par la graine du générateur aléatoire et restent identiques dans toute la colonne, tandis que les valeurs,
les clés absentes et la longueur des tableaux varient d’une ligne à l’autre. La profondeur des objets est limitée par
max_json_depth, le nombre de clés par niveau par max_json_keys_per_object, et chaque clé a une probabilité null_ratio
d’être absente d’une ligne. Les valeurs des feuilles ont les types que l’analyseur JSON déduit de documents réels :
Int64, UInt64, Float64, Bool, String, Date, DateTime, des tableaux de ces types, des tableaux
d’objets et des tableaux mixtes ; quelques clés changent de type dans une faible proportion des lignes, comme dans
les données collectées auprès d’une application.
La déclaration du type définit le schéma généré : les chemins typés sont toujours présents avec leur
type déclaré, les chemins exclus par SKIP et SKIP REGEXP ne sont jamais générés, et les limites max_dynamic_paths et
max_dynamic_types sont respectées. Les chemins au-delà de max_dynamic_paths se retrouvent donc dans les données partagées de
la colonne.
JSON, Dynamic ou Variant :