hanahmily opened a new issue, #13182:
URL: https://github.com/apache/skywalking/issues/13182

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/skywalking/issues?q=is%3Aissue) and found no 
similar issues.
   
   
   ### Apache SkyWalking Component
   
   BanyanDB (apache/skywalking-banyandb)
   
   ### What happened
   
   Currently, the embedded etcd server in BanyanDB does not expose 
configuration options for `AutoCompactionMode` and `AutoCompactionRetention` 
through command-line flags or configuration files. These settings are critical 
for controlling the key space of etcd by managing how historical data (old 
revisions) is compacted. Exposing these parameters will allow users to 
customize the compaction behavior based on their workload and storage 
requirements.
   
   #### Background:
   - `AutoCompactionMode`: Determines the mode of automatic compaction (e.g., 
`periodic` or `revision`).
   - `AutoCompactionRetention`: Specifies the retention policy for old 
revisions (e.g., time duration for periodic mode or number of revisions for 
revision mode).
   
   Without the ability to configure these parameters, users have limited 
control over etcd's storage growth and may face issues with excessive disk 
usage or performance degradation due to unoptimized compaction settings.
   
   #### Proposal:
   Add command-line flags (or configuration options) to BanyanDB to allow users 
to set `AutoCompactionMode` and `AutoCompactionRetention` for the embedded etcd 
server. For example:
   - `--etcd-auto-compaction-mode`: To set the compaction mode (e.g., 
`periodic` or `revision`). default to `periodic`
   - `--etcd-auto-compaction-retention`: To set the retention value (e.g., `1h` 
for periodic mode or `1000` for revision mode). default to `1h`
   
   #### Example Usage:
   ```bash
   banyandb --etcd-auto-compaction-mode=periodic 
--etcd-auto-compaction-retention=1h
   ```
   This would configure etcd to compact old revisions periodically, retaining 
data for the last 1 hour.
   
   ```bash
   banyandb --etcd-auto-compaction-mode=revision 
--etcd-auto-compaction-retention=1000
   ```
   This would configure etcd to compact based on revision numbers, retaining 
the last 1000 revisions.
   
   
   
   ### What you expected to happen
   
   Nan
   
   ### How to reproduce
   
   Nan
   
   ### Anything else
   
   _No response_
   
   ### Are you willing to submit a pull request to fix on your own?
   
   - [ ] Yes I am willing to submit a pull request on my own!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: 
notifications-unsubscr...@skywalking.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to