Kadir Ozdemir created PHOENIX-7214:
--------------------------------------

             Summary: Purging expired rows during minor compaction for 
immutable tables
                 Key: PHOENIX-7214
                 URL: https://issues.apache.org/jira/browse/PHOENIX-7214
             Project: Phoenix
          Issue Type: New Feature
            Reporter: Kadir Ozdemir


HBase minor compaction does not remove deleted or expired cells since the minor 
compaction works on a subset of HFiles. However, it is safe to remove expired 
rows for immutable tables without delete markers. For immutable tables, rows 
are inserted but not updated. This means a given row will have only one 
version. If these are are not deleted by using delete markers but purged with 
TTL then, we can safely remove expired rows during minor compaction using 
CompactionScanner in Phoenix.

CompactionScanner currently runs only for major compaction. We can introduce an 
new table attribute called MINOR_COMPACT_TTL.  Phoenix can run 
CompactionScanner for minor compaction too for the tables with 
MINOR_COMPACT_TTL = TRUE. By doing so, the expired rows will be purged during 
minor compaction for these tables. This will be useful when TTL is less than 7 
days, say 2 days, as major compaction typically runs only once a week. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to