Skip to main content

Workflow orchestration and management.

Project description

Orion

A development repo for Prefect Orion; reference documentation can be found at https://orion-docs.prefect.io/.

Welcome!

Prefect Orion is the second-generation workflow orchestration engine from Prefect, now available as a technical preview.

Orion has been designed from the ground up to handle the dynamic, scalable workloads that the modern data stack demands. Powered by a brand-new, asynchronous rules engine, it represents an enormous amount of research, development, and dedication to a simple idea:

You should love your workflows again.

Read the docs, run the code, or host the UI. Join thousands of community members in our Slack community to share your thoughts and feedback. Thanks for being part of the mission to build a new kind of workflow system and, of course, happy engineering!

"Don't Panic"

Prefect Orion is under active development and may change rapidly. For production use, we recommend Prefect Core.


Hello, Orion!

Prefect is the easiest way to transform any function into a unit of work that can be observed and governed by orchestration rules.

Add workflow features like retries, distributed execution, scheduling, caching, and much more, with minimal changes to your code. Every activity is tracked and becomes visible in the Orion Dashboard.

Decorate functions to automatically retry them on failure while providing complete visibility in the Orion Dashboard.

from prefect import flow, task
from typing import List
import httpx


@task(retries=3)
def get_stars(repo: str):
    url = f"https://api.github.com/repos/{repo}"
    count = httpx.get(url).json()["stargazers_count"]
    print(f"{repo} has {count} stars!")


@flow(name="Github Stars")
def github_stars(repos: List[str]):
    for repo in repos:
        get_stars(repo)


# run the flow!
github_stars(["PrefectHQ/Prefect", "PrefectHQ/miter-design"])

After running any running some flows, fire up the UI to gain insight into their execution:

prefect orion start

From here, you can continue to use Prefect interactively or set up automated deployments.

Next steps

Orion was designed to be incrementally adopted into your workflows, and our documentation is organized to support your exploration as much as possible. It is organized into four main sections whose applicability will depend on your objectives and comfort level.

Getting started

Begin by installing Orion on your machine, then follow one of our friendly tutorials to learn by example. See the Getting Started overview for more.

Developing Orion

The Orion CLI provides several helpful CLI commands to aid development:

Start a development UI and API:

$ prefect dev start

Start a development UI only:

$ prefect dev ui

Rebuild the static UI (the UI served by prefect orion start):

$ prefect dev build-ui

Concepts

Learn more about Orion's features and design by reading our in-depth concept docs. These are intended to introduce the building blocks of Orion, build up to orchestration and deployment, and finally cover some of the advanced use cases that Orion makes possible.

Frequently asked questions

Orion represents a fundamentally new way of building and orchestrating data workflows. Learn more about the project by reading our FAQ.

API reference

Orion provides a number of programmatic workflow interfaces, each of which is documented in the API Reference. This is where you can learn how a specific function works, or see the expected payload for a REST endpoint.

Join the community

Orion was made possible by the fastest-growing community of data engineers. The Prefect Slack community is a fantastic place to learn more, ask questions, or get help with workflow design. Join us and thousands of friendly data engineers to help build a new kind of workflow system.

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

prefect-2.0a8.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

prefect-2.0a8-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file prefect-2.0a8.tar.gz.

File metadata

  • Download URL: prefect-2.0a8.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for prefect-2.0a8.tar.gz
Algorithm Hash digest
SHA256 0bbafd4b967f3d1aa34dc891a1b1ac18dcb2055dc73a60980f421bfbc0df0f4e
MD5 62ec2d749e74fe3378b218cd80660b32
BLAKE2b-256 16058a0e61c4d52ffd0486364430406f0a2c028f4ddb51dc2da5bcb6b4e2f81c

See more details on using hashes here.

File details

Details for the file prefect-2.0a8-py3-none-any.whl.

File metadata

  • Download URL: prefect-2.0a8-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for prefect-2.0a8-py3-none-any.whl
Algorithm Hash digest
SHA256 c0cb6c2c854c3eba3cd314af1a1ebaa031b4c1354d12bcffa9fe99cb93e9183a
MD5 8c3961753540d14f24ad3fef835db5f0
BLAKE2b-256 f67ef0c7cd60a90a2d54477b695f085ff95e8ca443a2c2c86d7bc4c0da314f04

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