Likelihood to Recommend For a quick job scanning of status and deep-diving into job issues, details, and flows, AirFlow does a good job. No fuss, no muss. The low learning curve as the UI is very straightforward, and navigating it will be familiar after spending some time using it. Our requirements are pretty simple. Job scheduler, workflows, and monitoring. The jobs we run are >100, but still is a lot to review and troubleshoot when jobs don't run. So when managing large jobs, AirFlow dated UI can be a bit of a drawback.
Read full review K8s should be avoided - If your application works well without being converted into microservices-based architecture & fits correctly in a VM, needs less scaling, have a fixed traffic pattern then it is better to keep away from Kubernetes. Otherwise, the operational challenges & technical expertise will add a lot to the OPEX. Also, if you're the one who thinks that containers consume fewer resources as compared to VMs then this is not true. As soon as you convert your application to a microservice-based architecture, a lot of components will add up, shooting your resource consumption even higher than VMs so, please beware. Kubernetes is a good choice - When the application needs quick scaling, is already in microservice-based architecture, has no fixed traffic pattern, most of the employees already have desired skills.
Read full review Pros In charge of the ETL processes. As there is no incoming or outgoing data, we may handle the scheduling of tasks as code and avoid the requirement for monitoring. Read full review Complex cluster management can be done with simple commands with strong authentication and authorization schemes Exhaustive documentation and open community smoothens the learning process As a user a few concepts like pod, deployment and service are sufficient to go a long way Read full review Cons they should bring in some time based scheduling too not only event based they do not store the metadata due to which we are not able to analyze the workflows they only support python as of now for scripted pipeline writing Read full review Local development, Kubernetes does tend to be a bit complicated and unnecessary in environments where all development is done locally. The need for add-ons, Helm is almost required when running Kubernetes. This brings a whole new tool to manage and learn before a developer can really start to use Kubernetes effectively. Finicy configmap schemes. Kubernetes configmaps often have environment breaking hangups. The fail safes surrounding configmaps are sadly lacking. Read full review Alternatives Considered There are a number of reasons to choose Apache Airflow over other similar platforms- Integrations—ready-to-use operators allow you to integrate Airflow with cloud platforms (Google, AWS, Azure, etc) Apache Airflow helps with backups and other DevOps tasks, such as submitting a Spark job and storing the resulting data on a Hadoop cluster It has machine learning model training, such as triggering a Sage maker job.
Read full review Most of the required features for any orchestration tool or framework, which is provided by Kubernetes. After understanding all modules and features of the K8S, it is the best fit for us as compared with others out there.
Read full review Return on Investment A lot of helpful features out-of-the-box, such as the DAG visualizations and task trees Allowed us to implement complex data pipelines easily and at a relatively low cost Read full review Because of microservices, Kubernetes makes it easy to find the cost of each application easily. Like every new technology, initially, it took more resources to educate ourselves but over a period of time, I believe it's going to be worth it. Read full review ScreenShots