Préparation
ipython pour exécuter les commandes dans la suite de ce guide, que vous pouvez lancer avec la commande suivante :
Interroger un fichier JSON dans S3
Configurer le format de sortie
CSV, mais il peut être modifié via le paramètre output_format.
chDB prend en charge les formats de données de ClickHouse, ainsi que certains formats qui lui sont propres, dont DataFrame, qui renvoie un Pandas DataFrame :
Créer une table à partir d’un fichier JSON
chDB exécute un seul moteur embarqué par processus. Le répertoire de la base de données (son chemin) respecte donc quelques règles :
- Un processus par chemin : un répertoire de données chDB ne peut être ouvert que par un seul processus du système d’exploitation à la fois. Toute tentative d’ouverture du même chemin par un second processus échoue jusqu’à la fermeture du premier.
- Un chemin par processus : tant qu’une session ou une connexion est ouverte, l’ouverture d’une autre pour un chemin différent échoue ; fermez d’abord la ou les sessions/connexions ouvertes pour éviter cette erreur. Plusieurs sessions ou connexions sur le même chemin peuvent coexister.
- Concurrence : les sessions ou connexions sur le même chemin peuvent exécuter des requêtes simultanément.
- Les sessions sans chemin sont partagées : sans chemin, les sessions utilisent la base de données
:memory:du processus (les sessions vides voient donc les tables des autres), et son répertoire temporaire n’est supprimé que lorsque la dernière se ferme.
dislikes à partir du schéma du fichier JSON, en utilisant la technique CREATE...EMPTY AS.
Nous utiliserons le paramètre schema_inference_make_columns_nullable afin que les types de colonnes ne deviennent pas tous Nullable.
DESCRIBE pour examiner le schéma :
CREATE...AS.
Créons une autre table avec cette technique :