why would one consider this over something more established such as Temporal, also I see Maestro is written in Java vs Temporal's Go
Temporal's go is... something. They used to use Java (I think), then they switched to Go, and the Go is very Java-like. Or maybe I just don't know Fx. https://github.com/temporalio/temporal/blob/main/service/mat... The issue we hit with Temporal - again and again - is that it's very under-documented, and it's something you install at the core of your business, yet it's really hard to understand what is going on, thro…
Maestro: Netflix's Workflow Orchestrator
151–160 of 165 posts
Re: Maestro: Netflix's Workflow Orchestrator
#152Seems like they re-engineered Temporal: https://temporal.io/
They did use Temporal at Netflix, they gave a couple presentations 2 years ago. I think this is very much not-Temporal because it relies on a DSL instead of workflow as code. I don't know if it's a scale-thing, I'm not a workflow expert but this seems more in line with the map-reduce of yore, as in you get some big fat steps and you coordinate them, although you could have coarse-grained activities in Temporal workfl…
> I think this is very much not-Temporal because it relies on a DSL instead of workflow as code.
yup you get it. maestro defines things as json, which just inherently limits how you can write and test it with your normal app code
Re: Maestro: Netflix's Workflow Orchestrator
#153I used to be impressed with these corporate techblogs and their internal proprietary systems, but not so much anymore. Because code is a liability. I would rather use off-the-shelf open source stuff with long history of maintenance and improvement, rather than reinvent the cron/celery/airflow/whatever, because code is a liability. Somebody needs to maintain it, fix bugs, add new features. Unless I get +1 grade promot…
Where do you think this "off-the-shelf open source stuff" comes from exactly?
Re: Maestro: Netflix's Workflow Orchestrator
#154Earlier quoted context omitted.
So Netflix expects open source community to pick up the maintenance tab ? I understand how open source proejcts are born, but I struggle to see what is novelty of this project. Just another Java CRUD app with some questionable design choices that are only applicable to netflix: 1. They claim it is distributed system, but it is just a regular Java crud with SQL backend 2. Java-like DSL with parser and classloader (why…
People want an alternative to things like Temporal, and don't want to handle DAGs with Kafka Streams.
Re: Maestro: Netflix's Workflow Orchestrator
#155Earlier quoted context omitted.
Usually the corporate needs differ too much and they end up keeping their own fork anyway. Netflix has the resources to maintain this. It's probably more a PR move for their hiring division.
Indeed, this is not open-source: this is public-source. They don't really open the project to external contribution, they just publish their code and continue the project as their tool. They will not have incentive to add features that are not useful to their business even if it useful to the community (if provided by a PR for example), because all the developers of the project are employed by the same company and th…
Re: Maestro: Netflix's Workflow Orchestrator
#156Earlier quoted context omitted.
People want an alternative to things like Temporal, and don't want to handle DAGs with Kafka Streams.
An alternative for a code based workflow like Temporal are Dapr workflows ( https://docs.dapr.io/developing-applications/building-blocks... ), where you write a set of code based activities into a graph and these can have fan-in, fan-out, sequential patterns etc. Its all code in several supported languages and because Dapr also has building block APIs for pub/sub, service invocation, secrets as well as connecting to…
Re: Maestro: Netflix's Workflow Orchestrator
#157Earlier quoted context omitted.
Temporal's go is... something. They used to use Java (I think), then they switched to Go, and the Go is very Java-like. Or maybe I just don't know Fx. https://github.com/temporalio/temporal/blob/main/service/mat... The issue we hit with Temporal - again and again - is that it's very under-documented, and it's something you install at the core of your business, yet it's really hard to understand what is going on, thro…
no just the SDK is Java. temporal is 99% Golang, even at Uber https://github.com/uber/cadence
Re: Maestro: Netflix's Workflow Orchestrator
#158Founder of https://windmill.dev here which share many similarities with Maestro. > Maestro is a general-purpose, horizontally scalable workflow orchestrator designed to manage large-scale workflows such as data pipelines and machine learning model training pipelines. It oversees the entire lifecycle of a workflow, from start to finish, including retries, queuing, task distribution to compute engines, etc.. Users can…
https://www.windmill.dev/docs/advanced/local_development.
Why do I need to "sync" with windmill? Why is there an IDE built into windmill? Why is this so convoluted? It's like it's starting with the goal of lock-in before even developing a good product or finding market fit.
Re: Maestro: Netflix's Workflow Orchestrator
#159Earlier quoted context omitted.
Agreed. To be fair, I doubt Maestro will take off like Airflow did. Airflow filled a void of an easier orchestrator for Big Data with a prettier UI than the competitors of the time (Oozie, Luigi), implementing some UX patterns which had been tested at scale at Facebook with data swarm. The field is quite a bit more crowded now.
Seems like you have some experience with the orchestrator offerings. Airflow still the way to go, or would you recommend something else for someone just starting down the path of selecting and implementing a data orchestrator?