csun5285 opened a new pull request, #22461:
URL: https://github.com/apache/doris/pull/22461

   ## Proposed changes
   
   There were two global compaction policies available: "size_based" and 
"time_series". Now, the compaction policy can be specified during table 
creation.
   
   ``` 
   CREATE TABLE IF NOT EXISTS example_db.example_tbl
   (
       `user_id` LARGEINT NOT NULL,
       `date` DATE NOT NULL,
       `city` VARCHAR(20),
       `age` SMALLINT,
   )
   DUPLICATE KEY(`user_id`)
   DISTRIBUTED BY HASH(`user_id`) BUCKETS 1
   PROPERTIES (
   "replication_allocation" = "tag.location.default: 1"
   "compaction_policy"="time_series",
   "time_series_compaction_goal_size_mbyte"="1024"
   );
   
   ```
   
   I have added four properties to the table:
   
   - `compaction_policy`: Defines the compaction policy used for the table. It 
could be time-series or size-based.
   
   - `time_series_compaction_goal_size_mbytes`: Sets the target size in 
megabytes for time series compaction. When the total size of the segment files 
for time series data reaches this threshold, compaction will be triggered.
   
   - `time_series_compaction_file_count_threshold`: Specifies the file count 
threshold for time series compaction. When the number of segment files for time 
series data exceeds this value, compaction will be triggered.
   
   - `time_series_compaction_time_threshold_seconds`: Sets the time threshold 
in seconds for time series compaction. When the time elapsed since the last 
compaction operation on time series data exceeds this threshold, the next 
compaction will be performed.
   
   If you don't specify these compaction-related properties during table 
creation, the database will use default values for them.
   
   Besides specifying these properties during table creation, you can also use 
the ALTER statement to modify them later. 
   
   ```
   alter table table_name set 
("time_series_compaction_file_count_threshold"="1000");
   ```
   
   Issue Number: close #xxx
   
   <!--Describe your changes.-->
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at 
[[email protected]](mailto:[email protected]) by explaining why you 
chose the solution you did and what alternatives you considered, etc...
   
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to