nextflow
huey
nextflow | huey | |
---|---|---|
9 | 10 | |
2,551 | 4,915 | |
1.4% | - | |
9.7 | 6.6 | |
7 days ago | about 1 month ago | |
Groovy | Python | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nextflow
-
Nextflow: Data-Driven Computational Pipelines
> It's been a while since you can rerun/resume Nextflow pipelines
Yes, you can resume, but you need your whole upstream DAG to be present. Snakemake can rerun a job when only the dependencies of that job are present, which allows to neatly manage the disk usage, or archive an intermediate state of a project and rerun things from there.
> and yes, you can have dry runs in Nextflow
You have stubs, which really isn't the same thing.
> I have no idea what you're referring to with the 'arbitrary limit of 1000 parallel jobs' though
I was referring to this issue: https://github.com/nextflow-io/nextflow/issues/1871. Except, the discussion doesn't give the issue a full justice. Nextflow spans each job in a separate thread, and when it tries to span 1000+ condor jobs it die with a cryptic error message. The option of -Dnxf.pool.type=sync and -Dnxf.pool.maxThreads=N prevents the ability to resume and attempts to rerun the pipeline.
> As for deleting temporary files, there are features that allow you to do a few things related to that, and other features being implemented.
There are some hacks for this - but nothing I would feel safe to integrate into a production tool. They are implementing something - you're right - and it's been the case for several years now, so we'll see.
Snakemake has all that out of the box.
-
Alternatives to nextflow?
For now, I think that the best place to track this / get your voice heard is this GitHub Discussions post (which covers many things - error reporting is one of them). https://github.com/nextflow-io/nextflow/discussions/3107
- HyperQueue: ergonomic HPC task executor written in Rust
-
Nextflow vs Snakemake
We could spend the day pointing to things we wish were different, but that doesn't change the fact that Nextflow is the leader when it comes to workflow orchestration. And feel free to create a new issue in the GitHub repository if you wish to request a feature :)
-
Feel very hard writing nextflow pipeline.
The nextflow devs have been talking about this for a while on GitHub. Looks like they're implementing something along these lines using schema like they do for nf-core. GitHub discussion.
-
Need a statically typed Python replacement
Groovy definitely scales up just fine I think but I never used it myself outside of little snippets embedded in my DSL, I know its considered by some to be "dead" so its interesting to see what other JVM-ecosystem users think of it.
huey
-
Nextflow: Data-Driven Computational Pipelines
I've considered using Nextflow for bioinformatics pipelines but have yet to take the plunge. At work, I develop a proteomics pipeline that is composed of huey¹ tasks (Python library; simple alternative to Celery) which either use subprocess to call out to some external tool, or are just pure python. It runs in a worker container which is created by docker swarm, and all containers pull jobs from redis. For our scale, it works great. However, I don't have control over the resource utilization of individual steps, and in the past I've had issues with the pipeline blocking as a result of how I was chaining tasks together. I think something like Nextflow would remove these limitations, but one thing I think I would miss is the ability to debug individual pipeline steps locally with an interactive debugger. As far as I can tell, Nextflow has logging/tracing facilities but nothing quite like an interactive debugger. I'd be happy to be told I'm wrong, or even that I'm doing it wrong.
____
¹ https://github.com/coleifer/huey/
-
Background jobs with Django
Other options are DjangoQ and Huey, which tend to work ok. Of the two I prefer DjangoQ. Database backed, don't require the Redis/Celery rigmarole.
-
What's the best thing you've learned about Django this year?
Funny, just this moment i finally switched from Celery to huey. And so far I don't regret. huey looks very promising, has good documentation and is well integrated into DJango. You should give it a try: https://github.com/coleifer/huey
-
This Week in Python
huey – a little task queue for python
-
What is your favourite task queuing framework?
Huey -> Same again?
-
5 background scheduling libraries in Python you must know
Huey: https://github.com/coleifer/huey
- Celery in production: Three more years of fixing bugs
-
Not sure if I should use celery or asyncio
I just want to add that a couple celery alternatives worth looking at include huey and dramatiq.
-
What is the best option for a (Python 3) task queue on Windows now that Celery 4 has dropped Windows support?
huey
-
Django 4.0 released
same, I ran into an issue cos of django-background-tasks. I am thinking to replace it with huey
What are some alternatives?
galaxy - Data intensive science for everyone.
celery - Distributed Task Queue (development branch)
argo - Workflow Engine for Kubernetes
rq - Simple job queues for Python
ploomber - The fastest ⚡️ way to build data pipelines. Develop iteratively, deploy anywhere. ☁️
dramatiq - A fast and reliable background task processing library for Python 3.
singularity - Singularity has been renamed to Apptainer as part of us moving the project to the Linux Foundation. This repo has been persisted as a snapshot right before the changes.
RabbitMQ - Open source RabbitMQ: core server and tier 1 (built-in) plugins
Airflow - Apache Airflow - A platform to programmatically author, schedule, and monitor workflows
mrq - Mr. Queue - A distributed worker task queue in Python using Redis & gevent
devops-resources - DevOps resources - Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP
KQ - Kafka-based Job Queue for Python