Metadata-Version: 2.3
Name: pyexasol
Version: 1.0.1
Summary: Exasol python driver with extra features
License: MIT
Keywords: exasol,sql,database,performance,websocket,import,export
Author: Vitaly Markov
Author-email: wild.desu@gmail.com
Requires-Python: >=3.9.2,<4.0.0
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Database
Provides-Extra: all
Provides-Extra: examples
Provides-Extra: numpy
Provides-Extra: orjson
Provides-Extra: pandas
Provides-Extra: polars
Provides-Extra: rapidjson
Provides-Extra: ujson
Requires-Dist: numpy (>1.26.0,<2) ; extra == "numpy" or extra == "all"
Requires-Dist: orjson (>=3.6) ; extra == "orjson" or extra == "all"
Requires-Dist: packaging
Requires-Dist: pandas[numpy] (>=2,<3) ; extra == "pandas" or extra == "all"
Requires-Dist: polars (>=1.10,<2.0) ; extra == "polars" or extra == "all"
Requires-Dist: pproxy ; extra == "examples" or extra == "all"
Requires-Dist: python-rapidjson ; extra == "rapidjson" or extra == "all"
Requires-Dist: rsa
Requires-Dist: ujson ; extra == "ujson" or extra == "all"
Requires-Dist: websocket-client (>=1.0.1)
Project-URL: Changelog, https://github.com/exasol/pyexasol/blob/master/CHANGELOG.md
Project-URL: Documentation, https://github.com/exasol/pyexasol/
Project-URL: Homepage, https://www.exasol.com/
Project-URL: Issues, https://github.com/exasol/pyexasol/issues
Project-URL: Source, https://github.com/exasol/pyexasol
Description-Content-Type: text/markdown

<h1 align="center">PyExasol</h1>
<p align="center">
<a href="https://github.com/exasol/pyexasol/actions/workflows/pr-merge.yml">
    <img src="https://github.com/exasol/pyexasol/actions/workflows/pr-merge.yml/badge.svg?branch=master" alt="Continuous Integration (master)">
</a>
<a href="https://anaconda.org/conda-forge/pyexasol">
    <img src="https://anaconda.org/conda-forge/pyexasol/badges/version.svg" alt="Anaconda">
</a>
<a href="https://pypi.org/project/pyexasol/">
    <img src="https://img.shields.io/pypi/v/pyexasol" alt="PyPi Package">
</a>
<a href="https://pypi.org/project/pyexasol/">
    <img src="https://img.shields.io/pypi/dm/pyexasol" alt="Downloads">
</a>
<a href="https://pypi.org/project/pyexasol/">
    <img src="https://img.shields.io/pypi/pyversions/pyexasol" alt="Supported Python Versions">
</a>
</p>

PyExasol is the officially supported Python connector for [Exasol](https://www.exasol.com). 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 or polars.

PyExasol provides an [API](https://exasol.github.io/pyexasol/master/api.html) 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.

---
* Documentation: [https://exasol.github.io/pyexasol/](https://exasol.github.io/pyexasol/index.html)
* Source Code: [https://github.com/exasol/pyexasol](https://github.com/exasol/pyexasol)
---

## PyExasol Main Concepts

- Based on [WebSocket protocol](https://github.com/exasol/websocket-api);
- Optimized for minimum overhead;
- Easy integration with pandas and polars via HTTP transport;
- Compression to reduce network bottleneck;


## System Requirements

- Exasol >= 7.1
- Python >= 3.9

## Getting Started

Check out PyExasol's [Getting Started](https://exasol.github.io/pyexasol/master/user_guide/getting_started.html) page for your first steps.

## Developers
* Created by [Vitaly Markov](https://www.linkedin.com/in/markov-vitaly/), 2018 — 2022
* Maintained by [Exasol](https://www.exasol.com) 2023 — Today

