Python Package for Uploading Data to Dune Community Sources
Project description
dune-aws
Basic AWS Components for syncing off-chain data with Dune Community Sources
Installation & Usage
pip install dune-aws
Usage Option 1; Direct via AWSClient
This option provides the end user with many facets of functionality (delete, upload, download, view files).
One can mix and match the required components for their use case (utilizing also aws.last_sync_block).
For a very simple example utilizing this, see Option 2.
import os
from dune_aws.aws import AWSClient
aws_client = AWSClient(
internal_role=os.environ["AWS_INTERNAL_ROLE"],
# Info below is provided by Dune team.
external_role=os.environ["AWS_EXTERNAL_ROLE"],
external_id=os.environ["AWS_EXTERNAL_ID"],
bucket=os.environ["AWS_BUCKET"],
)
data_set = [{"x": 1, "y": 2}, {"z": 3}]
aws_client.put_object(
data_set,
object_key="table_name/must_contain_dot_json_then_number.json",
)
Usage Option 2; Simpler via RecordHandler
from dune_aws.record_handler import RecordHandler
handler = RecordHandler(
file="table_name/moo_123",
data_set=[{"x": 1, "y": 2}, {"z": 3}] # should be list[dict[str, Any]],
# If AWSClient is not supplied to the handler, it will be loaded from environment.
)
handler.upload_content(delete_first=True)
Note that, one must first coordinate with Dune to
- gain access to the AWS bucket (i.e. external credentials) and
- define the table schema of your dataset.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dune_aws-0.0.0b0.tar.gz.
File metadata
- Download URL: dune_aws-0.0.0b0.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9302364cb97fe115e2656c5eca1d47b96a7a984ace884f7f8f646573f7247b97
|
|
| MD5 |
947bddcce787fa7682efbe2e2305b723
|
|
| BLAKE2b-256 |
71ed4fae7563a2a8ec904945285d186606d3149faa35e9e210591da2106fc9dc
|
File details
Details for the file dune_aws-0.0.0b0-py3-none-any.whl.
File metadata
- Download URL: dune_aws-0.0.0b0-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
525d820181d863f793f704d9bdf6a5475467b5ad07d8a241244bc41a02d079c0
|
|
| MD5 |
0a96679563103b88265b876057a9046a
|
|
| BLAKE2b-256 |
d1ca1edf552a917fe6299e3aa7ff03fe1ec8163ceff888c288873d5dd3db8a1b
|