Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-7782

Thin Client lib: Python

    XMLWordPrintableJSON

    Details

      Description

      Implement Thin (lightweight) Client lib in Python programming language for Ignite Binary Client Protocol https://apacheignite.readme.io/docs/binary-client-protocol

      Prototype:
      https://github.com/skozlov-gridgain/apache-ignite-python-thin-client

      Example - NodeJS client - IGNITE-7777
      https://github.com/nobitlost/ignite/tree/master/modules/platforms/nodejs

      -------------------------------------------

      Package name (for use with setuptools/PyPI):

      pyignite

      Location of the lib in the repository:

      .../modules/platforms/python

      Python version:

      3.4+ (tested on 3.4 and 3.6)

      Ignite version:

      2.7.

      Architecture:

      Syncronous (safe for use with threading/multiprocessing), object-oriented.

      Documentation:

      Sphinx/autodoc + readme.md

      Test framework:

      pytest, pytest-runner for setuptools pytest integration.

      Usage examples included:
      • cache management (creating, configuring, deleting),
      • key-value operations,
      • cache scan,
      • basic SQL queries,
      • simple and advanced work with Complex objects,
      • fail-over connection.
      Goal:

      Create a full-featured Ignite thin client library:

      • carefully implement, test, and document all the features of the binary protocol, that can be useful in Python programs,
      • implement and document features like type IDs or serialization hints, that are mostly useless in Python, for interoperability's sake,
      • skip features, that are not applicable to Python programs, like filter object in scan query.
      Proposed scope of features:
      • basic and SSL-wrapped TCP connection,
      • authentication and authorization,
      • failover mechanism,
      • all datatypes,
      • all client operations (except Binary-Type operations with type names).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Melnichuk Dmitry Melnichuk
                Reporter:
                alexey.kosenchuk Alexey Kosenchuk
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: