Skip to main content

Python DB-API driver for Wherobots DB

Project description

wherobots-python-dbapi

Python DB-API implementation for Wherobots DB. This package implements a PEP-0249 compatible driver to programmatically connect to a Wherobots DB runtime and execute Spatial SQL queries.

Installation

If you use Poetry in your project, add the dependency with poetry add:

$ poetry add wherobots-python-dbapi

Otherwise, just pip install it:

$ pip install wherobots-python-dbapi

Usage

Basic usage

Basic usage follows the typical pattern of establishing the connection, acquiring a cursor, and executing SQL queries through it:

from wherobots.db import connect
from wherobots.db.region import Region
from wherobots.db.runtime import Runtime

with connect(
        api_key='...',
        runtime=Runtime.TINY,
        region=Region.AWS_US_WEST_2) as conn:
    curr = conn.cursor()
    curr.execute("SHOW SCHEMAS IN wherobots_open_data")
    results = curr.fetchall()
    print(results)

The Cursor supports the context manager protocol, so you can use it within a with statement when needed:

with connect(...) as conn:
    with conn.cursor() as curr:
        curr.execute(...)
        results = curr.fetchall()

It also implements the close() method, as suggested by the PEP-2049 specification, to support situations where the cursor is wrapped in a contextmanager.closing().

Runtime and region selection

You can chose the Wherobots runtime you want to use using the runtime parameter, passing in one of the Runtime enum values. For more information on runtime sizing and selection, please consult the Wherobots product documentation.

The only supported Wherobots compute region for now is aws-us-west-2, in AWS's Oregon (us-west-2) region.

Advanced parameters

The connect() method takes some additional parameters that advanced users may find useful:

  • results_format: one of the ResultsFormat enum values; Arrow encoding is the default and most efficient format for receiving query results.
  • data_compression: one of the DataCompression enum values; Brotli compression is the default and the most efficient compression algorithm for receiving query results.
  • geometry_representation: one of the GeometryRepresentation enum values; selects the encoding of geometry columns returned to the client application. The default is EWKT (string) and the most convenient for human inspection while still being usable by libraries like Shapely.
  • reuse_session: controls whether an existing runtime of the same type and in the same region that is available should be re-used for this connection. This is the default behavior.

Project details


Download files

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

Source Distribution

wherobots_python_dbapi-0.8.0.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

wherobots_python_dbapi-0.8.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file wherobots_python_dbapi-0.8.0.tar.gz.

File metadata

File hashes

Hashes for wherobots_python_dbapi-0.8.0.tar.gz
Algorithm Hash digest
SHA256 31d05a844d6baa19e61dde942a86e1b2a4e7715ebb04ccbcf80aab00afca750d
MD5 71fe1a3e2146157df6234bbaf93a04f7
BLAKE2b-256 30829fb6936e2f4c53dc5a34fcafa57d866520bfd53d225b698e8606e39bbcbb

See more details on using hashes here.

File details

Details for the file wherobots_python_dbapi-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for wherobots_python_dbapi-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a1669595e117025199cb2b963fab4c8f0af17362865a00218d0f11d9a18e0977
MD5 a46af02ad473512098cc3d9905bfbf23
BLAKE2b-256 da86bd8b071d427a542e9eb02cb5eba5aa84aacecff2c333ec461ef0676649f0

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