Last updated:
0 purchases
peaka 1.1.0
Peaka Python client
Client for Peaka, a Zero-ETL data integration platform.
Provides a low-level client and a DBAPI 2.0 implementation and a SQLAlchemy adapter.
It supports Python>=3.8 and PyPy.
Usage
The Python Database API (DBAPI)
Installation
$ pip install peaka
Quick Start
Use the DBAPI interface to query Peaka:
You can call the connect_to_peaka method with your Peaka api_key. catalog, schema, timezone and zone are the optional parameters.
from peaka.dbapi import connect_to_peaka
conn = connect_to_peaka(api_key="<YOUR_API_KEY>", catalog="<CATALOG_NAME>", schema="<SCHEMA_NAME>", timezone="<TIMEZONE>", zone="<'eu' | 'us'>")
cur = conn.cursor()
cur.execute("SELECT * FROM <table_name>")
rows = cur.fetchall()
You can query your table directly, if you enter the catalog and schema when you connect.
SQLAlchemy
Installation
$ pip install peaka[sqlalchemy]
Usage
To connect to Peaka using SQLAlchemy, use a connection string (URL) following this pattern:
peaka://dbc.peaka.studio:4567/<catalog>/<schema>?http_scheme=https&extra_credential=[["peakaKey",<YOUR_API_KEY>]]&access_token=true
NOTE: schema is optional
Examples:
from sqlalchemy import create_engine
from sqlalchemy.schema import Table, MetaData
from sqlalchemy.sql.expression import select, text
engine = create_engine('peaka://dbc.peaka.studio:4567/<CATALOG_NAME>/<SCHEMA_NAME>?http_scheme=https&extra_credential=[["peakaKey",<YOUR_API_KEY>]]&access_token=true')
connection = engine.connect()
rows = connection.execute(text("SELECT * FROM <TABLE_NAME>")).fetchall()
# or using SQLAlchemy schema
nodes = Table(
'<TABLE_NAME>',
MetaData(schema='<SCHEMA_NAME>'),
peaka_autoload=True,
autoload_with=engine
)
rows = connection.execute(select(nodes)).fetchall()
In order to pass additional connection attributes use connect_args method.
Attributes can also be passed in the connection string.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.