Во-первых, до точки удаления диапазона в HBase, AFAIK, еще нет удаления диапазона.Но есть способ удалить более одной строки за раз в HTableInterface API .Для этого просто сформируйте объект Delete с ключами строки из сканирования и поместите их в список и используйте API, готово!Чтобы ускорить сканирование, не включайте семейство столбцов в результат сканирования, поскольку все, что вам нужно, это ключ строки для удаления целых строк.
Во-вторых, о дизайне.Во-первых, мое понимание требования состоит в том, что есть содержимое с идентификатором контента, и у каждого контента есть графики, сгенерированные для них, и эти данные хранятся;может быть несколько диаграмм для контента через даты и зависит от ранга.Кроме того, мы хотим, чтобы график последнего сгенерированного контента отображался в верхней части таблицы.
Для моего предположения о требовании я бы предложил использовать три таблицы - auto_id, content_charts и generate_order.Ключом строки для content_charts будет его идентификатор содержимого, а ключом строки для generate_order будет long, который будет с автоматическим уменьшением с использованием HTableInterface API .Для уменьшения используйте «-1» в качестве суммы для смещения и инициализации значения Long.MAX_VALUE в таблице auto_id при первом запуске приложения или вручную.Так что теперь, если вы хотите удалить данные диаграммы, просто очистите семейство столбцов, используя delete , затем верните новые данные и затем поместите их в таблицу generate_order.Таким образом, последняя вставка будет также в верхней части таблицы последней вставки, которая будет содержать идентификатор содержимого в качестве значения ячейки.Если вы хотите убедиться, что в Generated_order есть только одна запись для каждого содержимого, сначала сохраните идентификатор generate_order, возьмите значение и сохраните его в content_charts при установке и перед удалением семейства столбцов, сначала удалите строку из созданного заказа.Таким образом, вы можете искать и составлять графики для контента, используя максимум 2, и для графиков не требуется сканирование.
Надеюсь, это полезно.