Ryax versus other similar tools¶
Thank to its flexibility, Ryax can solve many different problems. You may use it to handle a single, simple use case but you may also leverage it to process the entirety of a company’s data treatments and processes.
Thus, several tools on the market can seemingly overlap with the capabilities of our product. In order to better understand what Ryax does, let us compare it to a number of these tools.
Home made tools¶
Lots of companies develop their own tool internally, when they start to need data science automation. It usually starts with a simple script and then evolves into a larger solution. These hand-made approaches are error-prone and become hard to maintain when the needs in automation grow. In fact, going into production requires much more than a simple script: a data science workflow has to be developed, monitored, debugged, and updated.
Ryax is doing exactly this. It allows you to focus on your data science projects while taking care of the whole life-cycle of your pipeline.
Airflow is an open-source platform that can trigger code at some given time window. It is sometimes referred to as the “Cron 2.0”. Airflow is different from Ryax on 3 main aspects:
Airflow’s workflows are dynamic: a workflow step may produce some other steps during runtime, while Ryax workflows are defined beforehand and will not change their own definitions unexpectedly. Even if dynamically-defined workflows give more flexibility, they make it harder to debug and thus robust executions are rare, and achieving it requires to go through steep and time-consuming learning curves.
Airflow’s workflows can only be triggered at given interval times, while Ryax supports any kind of trigger: time based, manual, chat messages, emails, webhooks…
Airflow’s workflows are defined through code. In Ryax, you don’t need to learn some obscure language. We provide an intuitive user interface on which you can start to create right away.
Jenkins, Travis, GitLab CI…
CI/CD tools are made to automate code building, testing, and sometimes application deployment. To do so, most of them allow you to define a list of bash commands in a specification file. These bash scripts might run directly on a machine or into a predefined container. CI/CD pipelines are triggered by a commit on a Git repository, or with time based triggers.
Ryax is different in many aspects. First, Ryax provides much higher abstraction levels because the code you provide is automatically packaged, build and deployed for you. It then can be triggered by any event that you might find useful using a custom source module.
Finally, because Ryax is made to be a data science automation platform, it provides a user interfaces adapted to Data Engineers, Data Scientists, and Data Operators.
Kubernetes, Mesos, docker swarm…
Kubernetes is a general purpose container orchestrator made for any workload that a Data Center might encounter. It attracts a lot of attention, has an army of contributors and is currently becoming an industry standard for running web application and services.
Ryax is a much more specific tool that focuses on Data Science workflows. In fact, Ryax is built on top of Kubernetes and leverages it to manage your workflows’ deployments. So, in a way, Ryax can be considered as a kind of orchestrator, but one that only focuses on running data treatment chains.
Jupyter, Dataiku, Rstudio…
These tools allow you to create data science prototypes easily, and they are good at it. But they where never made to run models in production. They also lack capabilities to reuse your code, and often copy and paste is the way to go. You will need an automation platform that manages the workflows’deployments, monitoring and updates.
In Ryax, you can simply “drop” in production the code you’ve developed within your favorite Data Studio. So it is easy to automate and share ideas within teams or companies.
Automation tools are designed to provide a simple way to automate interactions between separated tools. These event-based platforms have a lot of integrations with external services. Thus, they can trigger the execution of a pipeline from a lot of events.
While Ryax is also able to automate this kind of interactions it provides much more features dedicated to Data analysis.
Putting data analysis in production means automating the execution of your models, but it also means packaging, building, distributing, connecting, orchestrating, and monitoring these analytics. Ryax does all of that for you :-)