I was at PyCon last month and met some folks from ...
# data-tricks-and-tips
I was at PyCon last month and met some folks from Temporal (https://temporal.io/) who work on workflows similar to Prefect. I looked at their documentation but could use help deciphering their advantage over Prefect. Does anyone know the pros/cons of Temporal vs. Prefect? I ask because we're using Prefect to automate our data pipelines and even some of our application data refreshes (replacing celery workers). I'm wondering what advantage Temporal would provide over Prefect in this regard.
👀 3
Although you can use Temporal for general purpose orchestration and cron jobs, I think it solves a more specific problem. It’s about running a flow which is centered around a specific user, and maintaining state. For example think about a flow called “order a meal”. The flow has multiple steps, and between the steps it sits (and maintains state) and listens to outside events, in order to advance to the next step in the flow. The “order a meal” flow might have steps like payment started, payment finished, food picked, food delivered, user sent review… And you have millions of flows like this, a flow for each user, with robust state management, that knows exactly what is the current state. Prefect doesn’t have the concept of saving state.
🙂 I am not a Temporal expert. Would like to be corrected.
👍 1
I am not Temporal expert too, but one single thing that a saw reading documentation of Temporal is the possibility to work with signals. For my use case, this is great for me because I need a workflow manager that could link every Flow that has a downstream with its downstream flow with a signal, not tasks. This way I have independent flows for each source of data that can call subsequent flows. I could not saw this feature in Prefect without additional programming.
👍 1