Have you tried the "deleteRows" API? http://static.javadoc.io/org.apache.accumulo/accumulo-core/1.9.2/org/apache/accumulo/core/client/admin/TableOperations.html#deleteRows-java.lang.String-org.apache.hadoop.io.Text-org.apache.hadoop.io.Text-
If I remember correctly, it will efficiently delete all the data in the range by splitting on the end points of the range specified, and simply dropping the tablets in the middle, stitching the endpoints back together with a merge. On Thu, Feb 14, 2019 at 7:59 AM Krzysztof Martyn <[email protected]> wrote: > > Hi Accumulo, > > I want to make a system that will store data for a certain period of time, > say 2 days, after that time the data should be deleted. > All time there are ingestion with big amount of new data. > The key is the time of arrival, and splits are generated every 1s so that > data from 1s have a separate tablet. > Is there any possibility to remove a range of tablets without having to run > major compact and merge? > > I have tested AgeOffFilter, however, it requires manual launch of the major > compact which almost makes it impossible to scan the database. > I also have tested BatchDeleter, and deleteRows from tableOperations, > however, they are even worse than AgeOffFilter. > > Krzysztof > > > > -- > Sent from: http://apache-accumulo.1065345.n5.nabble.com/Developers-f3.html
