Aineko, a data integration framework.
Project description
Aineko
Aineko is a Python framework for building data applications.
With Aineko, you seamlessly bring data into any product and iterate quickly. Whether you're an individual developer or part of a larger team, Aineko helps you rapidly build scalable, maintainable, and fast data applications.
Under the hood, Aineko automatically configures tooling needed for production-ready data apps, like message brokers, distributed compute, and more. This allows you to focus on building your application instead of spending time with configuration and infrastructure.
Documentation
For full documentation visit: https://docs.aineko.dev/
Quick Start
Technical Dependencies
- Docker or Docker Desktop
- Poetry (a python dependency manager)
- Python (version 3.10)
- Pip (a python package manager)
Steps to get started
Step 0: Check your dependencies
It's important to make sure you have the correct dependencies installed. This might sound obvious, but it's easy to miss a step and we want to make sure you have a good experience with Aineko. The only dependency which requires a specific version is Python. The other dependencies should work with any recent version.
Let's check each dependency one by one. You can run the following commands in your terminal to check each dependency.
docker --version
should return something likeDocker version 20.10.8, build 3967b7d
python --version
should return something likePython 3.10.12
Click here if you see another version.pip --version
should return something likepip 23.0.1 from xxx/python3.10/site-packages/pip (python 3.10)
poetry --version
should return something likePoetry (version 1.6.1)
Step 1: Install Aineko
pip install aineko
Step 2: Create a template pipeline with aineko cli
aineko create
You will see the following prompts as aineko
tries to create a project directory containing the boilerplate you need for a pipeline. Feel free to use the defaults suggested!
[1/4] project_name (My Awesome Pipeline):
[2/4] project_slug (my_awesome_pipeline):
[3/4] project_description (Behold my awesome pipeline!):
[4/4] pipeline_slug (test-aineko-pipeline):
Step 3: Install dependencies in the new pipeline
cd my_awesome_pipeline
poetry install
Step 4: Start the Aineko background services
poetry run aineko service start
Step 5: Start the template pipeline
poetry run aineko run ./conf/pipeline.yml
Step 6: Check the data being streamed
To view messages running in one of the user-defined datasets:
poetry run aineko stream --dataset test-aineko-pipeline.test_sequence --from-start
alternatively, to view logs stored in the built-in logging
dataset:
poetry run aineko stream --dataset logging --from-start
Note: user-defined datasets have the pipeline name automatically prefixed, but the special built-in dataset logging
does not.
Step 7: Stop the Aineko background services
poetry run aineko service stop
Troubleshooting
How to install a specific version of Python
We recommend using pyenv to manage your Python versions. Once you have pyenv installed, you can run the following commands to install Python 3.10.
pyenv install 3.10
to install Python 3.10- In your project directory, run the following command to set the local Python version to 3.10:
pyenv local 3.10
This will create a.python-version
file in your project directory which will tell pyenv to (automagically) use Python 3.10 when you're in that directory. - Check that you're now using the correct version of Python by running
python --version
. You should see something likePython 3.10.12
. - You're all set! You can now proceed with step 1 of the quick start guide.
Pyenv is a great tool for managing Python versions, but it can be a bit tricky to get it set up correctly. If you're having trouble, check out the pyenv documentation or this tutorial. If you're still having trouble, feel free to reach out to us on Slack!
Examples
To see some examples of Aineko in action visit: https://docs.aineko.dev/examples
- Aineko Dream
- More coming soon...
Contributing
If you're interested in contributing to Aineko, follow this guide: https://docs.aineko.dev/contributing-to-aineko
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 aineko-0.2.2.tar.gz
.
File metadata
- Download URL: aineko-0.2.2.tar.gz
- Upload date:
- Size: 39.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.10.8 Darwin/23.0.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a569a914a4cefadc4e592d3e0c56f06888741a466fae2357e653694c5655c0ff |
|
MD5 | fbe3d2f1bf9a61cea70d1f80853a5b9f |
|
BLAKE2b-256 | 804ab45ec68b2456f2908a718c8803f792403af9478bf65a01b74a48600d5d86 |
Provenance
File details
Details for the file aineko-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: aineko-0.2.2-py3-none-any.whl
- Upload date:
- Size: 45.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.10.8 Darwin/23.0.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0887436277ad6e99f4f125221bb82487844a9da6a00af5688310578b2dc51228 |
|
MD5 | bb868ce4e9b958b51815f845020b90b1 |
|
BLAKE2b-256 | 06fff87ae31f35af5965f798219694357e437f6f542485517dff93ca62181e74 |