[
https://issues.apache.org/jira/browse/HBASE-6942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13475522#comment-13475522
]
Ted Yu commented on HBASE-6942:
-------------------------------
{code}
+public class BulkDeleteEndpoint extends BaseEndpointCoprocessor implements
BulkDeleteProtocol {
{code}
Please add annotation for audience and stability.
{code}
+ List<byte[]> deleteRowKeys = new ArrayList<byte[]>(rowBatchSize);
{code}
Should a Set be used ? The use case is for deleting entire rows. We just need
to collect unique row keys.
{code}
+ if (scan.getFilter() == null) {
+ // What we need is just the rowkeys. So only 1st KV from any row is
enough.
+ scan.setFilter(new FirstKeyOnlyFilter());
+ }
{code}
If user has specified Filter already but the Filter would return many KeyValues
from one row, should we introduce FirstKeyOnlyFilter through FilterList ?
> Endpoint implementation for bulk delete rows
> --------------------------------------------
>
> Key: HBASE-6942
> URL: https://issues.apache.org/jira/browse/HBASE-6942
> Project: HBase
> Issue Type: Improvement
> Components: Coprocessors, Performance
> Reporter: Anoop Sam John
> Assignee: Anoop Sam John
> Fix For: 0.94.3, 0.96.0
>
> Attachments: HBASE-6942.patch, HBASE-6942_V2.patch,
> HBASE-6942_V3.patch
>
>
> We can provide an end point implementation for doing a bulk deletion of
> rows(based on a scan) at the server side. This can reduce the time taken for
> such an operation as right now it need to do a scan to client and issue
> delete(s) using rowkeys.
> Query like delete from table1 where...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira