Skip to content

simplylu/PyQDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

API wrapper following the basic API requirements of QuestDB described here.

Usage

Install requirements:

pip3 install -r requirements.txt

Import

from PyQDB import QuestDB

qdb = QuestDB()

Methods

/imp - Import

/imp streams tabular text data directly into a table. It supports CSV, TAB and pipe (|) delimited inputs with optional headers. There are no restrictions on data size. Data types and structures are detected automatically, without additional configuration. In some cases, additional configuration can be provided to improve the automatic detection as described in user-defined schema.

res = qdb.imp(filename="test.csv", name="PyQDB")

See qdb_api.py or API reference for all possible parameters.

/exec - Execute queries

/exec compiles and executes the SQL query supplied as a parameter and returns a JSON response.

res = qdb.exec(query="SELECT * FROM PyQDB")

SQL queries will be verified via sqlvalidator==0.0.17 there might be issues with QuestDB SQL Syntax.

See qdb_api.py or API reference for all possible parameters.

/exp - Export data

This endpoint allows you to pass url-encoded queries but the request body is returned in a tabular form to be saved and reused as opposed to JSON.

res = qdb.exp(query="SELECT * FROM PyQDB")

Thanks to Issue #1 you can now choose between the following output formats:

  • CSV: qdb.exp(query="...", output="csv")
  • DataFrame: qdb.exp(query="...", output="pandas"

See qdb_api.py or API reference for all possible parameters.

About

Simple API wrapper for the QuestDB REST API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages