The cells in a given row have versions that range from 1000 to 2000. You execute a delete
specifying the value 3000 for the version. What is the outcome?
The delete fails with an error.
Only cells equal to the Specified version are deleted.
The entire row is deleted.
Nothing in the row is deleted.
When performing a delete operation in HBase, there are two ways to specify the
versions to be deleted
Delete all versions older than a certain timestamp
Delete the version at a specific timestamp
A delete can apply to a complete row, a complete column family, or to just one column. It is only in
the last case that you can delete explicit versions. For the deletion of a row or all the columns
within a family, it always works by deleting all cells older than a certain version.
Deletes work by creating tombstone markers. For example, let’s suppose we want to delete a row.
For this you can specify a version, or else by default the currentTimeMillis is used. What this
means is “delete all cells where the version is less than or equal to this version”. HBase never
modifies data in place, so for example a delete will not immediately delete (or mark as deleted) the
entries in the storage file that correspond to the delete condition. Rather, a so-called tombstone is
written, which will mask the deleted values. If the version you specified when deleting a row is
larger than the version of any value in the row, then you can consider the complete row to be
Reference: Apache HBase, Delete
http://archive.cloudera.com/cdh4/cdh/4/hbase/book.html#delete(scroll below and see 220.127.116.11.
Delete topic, read the last paragraph)