kdb+ interfacing library for Python
Project description
ATTENTION::
This project is in maintenance mode. We may fix bugs, but no new features will be added in foreseeable future.
qPython
qPython is a Python library providing support for interprocess communication between Python and kdb+ processes, it offers:
Synchronous and asynchronous queries
Convenient asynchronous callbacks mechanism
Support for kdb+ protocol and types: v3.0, v2.6, v<=2.5
Uncompression of the IPC data stream
Internal representation of data via numpy arrays (lists, complex types) and numpy data types (atoms)
Supported on Python 2.7/3.4/3.5/3.6 and numpy 1.8+
For more details please refer to the documentation.
Installation
To install qPython from PyPI:
$ pip install qpython
Please do not use old PyPI package name: exxeleron-qpython.
Building package
Documentation
qPython documentation is generated with help of Sphinx document generator. In order to build the documentation, including the API docs, execute: make html from the doc directory.
Documentation is built into the: doc/build/html/ directory.
Compile Cython extensions
qPython utilizes Cython to tune performance critical parts of the code.
Instructions:
Execute: python setup.py build_ext --inplace
Build binary distribution
Instructions:
Execute: python setup.py bdist
Testing
qPython uses py.test as a test runner for unit tests.
Instructions:
Make sure that top directory is included in the PYTHONPATH
Execute: py.test
Requirements
qPython requires numpy 1.8 to run.
Optional requirements have to be met to provide additional features:
tune performance of critical parts of the code:
Cython 0.20.1
support serialization/deserialization of pandas.Series and pandas.DataFrame
pandas 0.14.0
run Twisted sample:
Twisted 13.2.0
build documentation via Sphinx:
Sphinx 1.2.3
mock 1.0.1
Required libraries can be installed using pip.
To install all the required dependencies, execute: pip install -r requirements.txt
Minimal set of required dependencies can be installed by executing: pip install -r requirements-minimal.txt
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
Built Distribution
File details
Details for the file qPython-nocython-2.0.0.tar.gz
.
File metadata
- Download URL: qPython-nocython-2.0.0.tar.gz
- Upload date:
- Size: 69.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.6.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38fb705152134a60aeadc41c7fcef678f7027b71b3d90a7b8646b117989222fc |
|
MD5 | e22dc7279c8bad265133922bf1f9c069 |
|
BLAKE2b-256 | fb831e849278ab71ebf2094f9d9459aa84aec80b8e5ca9571593ca6f4149e59b |
File details
Details for the file qPython_nocython-2.0.0-py3-none-any.whl
.
File metadata
- Download URL: qPython_nocython-2.0.0-py3-none-any.whl
- Upload date:
- Size: 41.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.6.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28d1a6fa937906fbebd38be827aac2ffb3652bccdffcce18b0c10ef3ecb5cd20 |
|
MD5 | 720afb8b8d09512a0fc294591665bef9 |
|
BLAKE2b-256 | 5516187aadfbcc8d567551467d176fb7dfe48408e9e5f5299735c1f919c86906 |