Passer au contenu principal
Permet de traiter en parallèle des fichiers à partir d’une URL depuis plusieurs nœuds d’un cluster spécifié. Sur l’initiateur, une connexion est établie avec tous les nœuds du cluster, l’astérisque présent dans le chemin de fichier de l’URL est développé, puis chaque fichier est réparti dynamiquement. Sur le nœud worker, celui-ci demande à l’initiateur la tâche suivante à traiter, puis la traite. Cette opération est répétée jusqu’à ce que toutes les tâches soient terminées.

Syntaxe

urlCluster(cluster_name, URL, format, structure)

Arguments

ArgumentDescription
cluster_nameNom d’un cluster servant à construire un ensemble d’adresses et de paramètres de connexion pour des serveurs distants et locaux.
URLAdresse d’un serveur HTTP ou HTTPS pouvant accepter des requêtes GET. Type : String.
formatFormat des données. Type : String.
structureStructure de la table au format 'UserID UInt64, Name String'. Détermine les noms et les types des colonnes. Type : String.

Valeur renvoyée

Une table au format et à la structure spécifiés, contenant les données de l’URL définie.

Exemples

Récupération des 3 premières lignes d’une table contenant des colonnes de type String et UInt32 depuis un serveur HTTP qui répond au format CSV.
  1. Créez un serveur HTTP simple à l’aide des outils standard de Python 3, puis démarrez-le :
from http.server import BaseHTTPRequestHandler, HTTPServer

class CSVHTTPServer(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/csv')
        self.end_headers()

        self.wfile.write(bytes('Hello,1\nWorld,2\n', "utf-8"))

if __name__ == "__main__":
    server_address = ('127.0.0.1', 12345)
    HTTPServer(server_address, CSVHTTPServer).serve_forever()
SELECT * FROM urlCluster('cluster_simple','http://127.0.0.1:12345', CSV, 'column1 String, column2 UInt32')

Globs dans l’URL

Les motifs dans { } sont utilisés pour générer un ensemble de shards ou pour spécifier des adresses de basculement. Pour connaître les types de motifs pris en charge ainsi que des exemples, consultez la description de la fonction remote. Le caractère | à l’intérieur des motifs est utilisé pour spécifier des adresses de basculement. Celles-ci sont parcourues dans le même ordre que celui dans lequel elles sont listées dans le motif. Le nombre d’adresses générées est limité par le paramètre glob_expansion_max_elements.
Dernière modification le 29 juin 2026