Skip to main content

Workflow orchestration and management.

Project description

PyPI

Prefect 2

Prefect 2 is the second-generation dataflow coordination and orchestration platform from Prefect.

Prefect 2 has been designed from the ground up to handle the dynamic, scalable workloads that the modern data stack demands. Powered by Prefect Orion, 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"

Still using Prefect 1 Core and Server? Find the legacy Prefect 1 docs at https://docs-v1.prefect.io/.


Hello, Orion!

Powered by the Orion engine, 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.

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"])

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

Prefect 2 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 Prefect on your machine--Prefect currently supports the following Python versions: 3.7, 3.8, 3.9, 3.10. Then follow one of our friendly tutorials to learn by example. See the Getting Started overview for more.

Concepts

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

Frequently asked questions

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

API reference

Prefect 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.

Contributing

See our documentation on contributing to Prefect 2.

Join the community

Prefect 2 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. The Prefect Discourse is an additional community-driven knowledge base to find answers to your Prefect-related questions. 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

This version

2.7.0

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.7.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

prefect-2.7.0-py3-none-any.whl (1.6 MB view details)

Uploaded Python 3

File details

Details for the file prefect-2.7.0.tar.gz.

File metadata

  • Download URL: prefect-2.7.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for prefect-2.7.0.tar.gz
Algorithm Hash digest
SHA256 cc1521f01afedbe208c78513e48981a4cd0955193de68f427cd433d3e772f9c7
MD5 dc03f1c27a5f255fd4334febb9b8d93d
BLAKE2b-256 fa4b8bd52af84f9b75980950e7d3cbea82f1f1e8ce3610bae38efab98b65556d

See more details on using hashes here.

File details

Details for the file prefect-2.7.0-py3-none-any.whl.

File metadata

  • Download URL: prefect-2.7.0-py3-none-any.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for prefect-2.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 075a743fa6178c8c25d4bc969bd41e8beca286806f1d9a4d30235fcf852ef720
MD5 c89996ec0ae1c10e50d1ef07c384303d
BLAKE2b-256 9990a65447dfac8e33832f867ce9ffce18b1e59c41a1e8591de2418e106805a9

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