dagucloud / dagucloud/dagu

About database supported

Open
#539 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
4k
Forks
332
Avg merge
19h 9m
Merged PRs (30d)
137

Description

After understanding the basic usage of dagu, I have a curious question. Why did Dagu choose disk as the storage? Is there any possible that we have plans to support database access? Usually, as we are familiar with, a physical node, regardless of its storage space, still carries the risk of being fully occupied. At the same time, some local files may also be unexpectedly deleted due to unforeseen failures. Therefore, when we start the dagu service using the command line, do we also face the aforementioned risks?
And I noticed that when Dagu scheduler scheduled tasks, the scheduler uses a "watch mechanism" to detect the update status of various files in the current Dags directory. I feel that this is somewhat similar to ETCD. Of course, Redis and MySQL may also have some "watch mechanisms". So, does it provide a possibility to watch through a database? And, when using Dagu, we submitted a yaml file through the web UI, which describes the overall structure of the task, which actually has similarities with the declarative form of k8s. Therefore, if Dagu's k8s deployment is supported in the future, its access to ETCD or other distributed databases may also be more suitable.

Contributor guide

Open the contributing guide

Research direction

Start with Dagu's command-line service startup, scheduler watch mechanism for the current Dags directory, and web UI YAML submission flow. The issue does not identify files, tests, a specific database target, or acceptance criteria, so first determine the intended storage and watch design and define what database-backed operation should be considered complete.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, mysql, redis
Domain
backend, databases, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.