Skip to main content

Exasol python driver with extra features

Project description

Pyexasol

Continuous Integration (master) Anaconda PyPi Package Downloads Supported Python Versions

PyEXASOL is the officially supported Python connector for Exasol. It helps to handle massive volumes of data commonly associated with this DBMS.

You may expect significant performance improvement over ODBC in a single process scenario involving pandas.

PyEXASOL provides API to read & write multiple data streams in parallel using separate processes, which is necessary to fully utilize hardware and achieve linear scalability. With PyEXASOL you are no longer limited to a single CPU core.

Quick links

PyEXASOL main concepts

  • Based on WebSocket protocol;
  • Optimized for minimum overhead;
  • Easy integration with pandas via HTTP transport;
  • Compression to reduce network bottleneck;

System requirements

  • Exasol >= 7.1
  • Python >= 3.9

Getting started

Install PyEXASOL:

pip install pyexasol[pandas]

Run basic query:

import pyexasol

C = pyexasol.connect(dsn='<host:port>', user='sys', password='exasol')

stmt = C.execute("SELECT * FROM EXA_ALL_USERS")

for row in stmt:
    print(row)

Load data into pandas.DataFrame:

import pyexasol

C = pyexasol.connect(dsn='<host:port>', user='sys', password='exasol', compression=True)

df = C.export_to_pandas("SELECT * FROM EXA_ALL_USERS")
print(df.head())

You may set up local config to store your personal Exasol credentials and connection options:

import pyexasol

C = pyexasol.connect_local_config('my_config')

stmt = C.execute("SELECT CURRENT_TIMESTAMP")
print(stmt.fetchone())

Connect to Exasol SAAS using OpenID token for authentication:

import pyexasol

C = pyexasol.connect(dsn='<host:port>', user='sys', refresh_token='<token>')

stmt = C.execute("SELECT * FROM EXA_ALL_USERS")

for row in stmt:
    print(row)

Created by

Vitaly Markov, 2018 — 2022

Enjoy!

Maintained by

Exasol 2023 — Today

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyexasol-0.27.0.tar.gz (49.0 kB view details)

Uploaded Source

Built Distribution

pyexasol-0.27.0-py3-none-any.whl (57.1 kB view details)

Uploaded Python 3

File details

Details for the file pyexasol-0.27.0.tar.gz.

File metadata

  • Download URL: pyexasol-0.27.0.tar.gz
  • Upload date:
  • Size: 49.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.10.6-200.fc40.x86_64

File hashes

Hashes for pyexasol-0.27.0.tar.gz
Algorithm Hash digest
SHA256 795490cd810617bf927e0e90b88347facb5e66f58e0e16378fef5d22fadacd60
MD5 cbddc6a12588aa58ec6d40e244357dce
BLAKE2b-256 98e6bcfab874cc0468996d98b10d17200ad8f4064819b8090f1ef084d61c994c

See more details on using hashes here.

File details

Details for the file pyexasol-0.27.0-py3-none-any.whl.

File metadata

  • Download URL: pyexasol-0.27.0-py3-none-any.whl
  • Upload date:
  • Size: 57.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.10.6-200.fc40.x86_64

File hashes

Hashes for pyexasol-0.27.0-py3-none-any.whl
Algorithm Hash digest
SHA256 041e1db1ae8f26fa24876056ce8da5830e346fc47734847a95cc960ac056d0c6
MD5 91a157b75e54e502e6674e6337acc568
BLAKE2b-256 5b601a7b5e671ee4e448e8954bfd97db9721226a7c4f043390bdff43c3c44677

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page