Core module for Fishnet compute-over-data (CoD) network on Aleph.im
Project description
Fishnet
Fishnet stands for Financial time Series Hosting NETwork.
It is a Compute-over-Data (CoD) system that uses the distributed Aleph.im network as a substrate for computation. It is a decentralized, peer-to-peer, and serverless system that allows users to run statistical computations on their timeseries data without having to upload it to a centralized server.
This python module contains a common data model, built on the Aleph Active Record SDK (AARS), that is being used by the Fishnet API and Executor VMs. The data model is used to store and query:
- Timeseries & Datasets
- Algorithms
- Permissions
- Executions
- Results
Also contains the executor code for the Fishnet Executor VM. Right now it supports Pandas, but in the future it will support other execution environments (e.g. PyTorch, Tensorflow).
Deployment
You can deploy your own Fishnet instance using the deployment
package.
from aleph_client import AuthenticatedUserSession
from fishnet_cod.deployment import deploy_apis, deploy_executors
aleph_session = AuthenticatedUserSession() # you'll need tons of $ALEPH
executors = deploy_executors(
executor_path="/your/executor/asgi/app",
time_slices=[0, -1], # one executor for all data
deployer_session=aleph_session,
channel="MY_DEPLOYMENT_CHANNEL",
)
deploy_apis(executors)
Roadmap
- Basic message model
- API for communicating with Fishnet system
- Basic CRUD operations
- Permission management
- Local VM caching
- Signature verification of requests
- Discovery of other API instances
- Dedicated API deploy function
- Timeslice distribution across Executor nodes
- Executor VM
- Listens for Aleph "Execution" messages and executes them
- Uploads results to Aleph
- Pandas support
- Dedicated Executor deploy function
- Distributed execution & aggregation
- Discovery of other Executor instances
- Uploading executors with metadata: assigned timeslice, code version
- Different execution environments (e.g. PyTorch, Tensorflow)
- GPU support
- Versioning and immutable VMs
- Automatic Versioning & Deprecation
- Version Manifest & Message metadata
- Make all deployments immutable
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 fishnet_cod-1.0.0a1.tar.gz
.
File metadata
- Download URL: fishnet_cod-1.0.0a1.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab8380aaa2c5c6661bbdb81e2b9356f8c4743920b9571ad9bbab13ad9b768d9c |
|
MD5 | d317390c11d8cc4f6e236ff9fdd7dece |
|
BLAKE2b-256 | e696ec1c86263a8274b781a475cb7f49429383f213fd0462c77f1a538a7fca31 |
File details
Details for the file fishnet_cod-1.0.0a1-py3-none-any.whl
.
File metadata
- Download URL: fishnet_cod-1.0.0a1-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e1126e86b7e21ad1f5b5f2122dc8beae90f1231cd1838ce6d1ae82c2abae422 |
|
MD5 | ff0d93bc8c79e4d95254e8aa657c8792 |
|
BLAKE2b-256 | ab18551f544ea7f121743f23632be28ec6012cd7bb9351a57b8ba14b5524f9b2 |