Es gibt keinen einzigen Befehl, um die Hbase-Tabelle zu löschen, aber Sie können zwei Problemumgehungen verwenden: Deaktivieren, Löschen, Tabelle erstellen oder alle Datensätze durchsuchen und alle löschen.
Die Deaktivierung, das Löschen und das erneute Erstellen der Tabelle dauert etwa 4 Sekunden.
%Vor%Wenn in der Tabelle nicht viele Daten vorhanden sind - scannen Sie alle Zeilen und löschen Sie sie viel schneller.
%Vor%In diesem Fall werden die Daten nicht physisch gelöscht, sondern tatsächlich als "gelöscht" markiert und verbleiben in der Tabelle bis zum nächsten großen Komprimierungspaket.
Wenn Sie dies in der HBase-Shell ausführen:
%Vor%Dann wird HBase diese Operationen für 'yourTableName' ausführen:
%Vor%Eine weitere effiziente Option besteht darin, die Tabelle tatsächlich zu löschen und dann eine andere mit den gleichen Einstellungen wie die vorherige zu rekonstruieren.
Ich weiß nicht, wie man das in PHP macht, aber ich weiß, wie man es in Java macht. Die entsprechenden Aktionen in PHP sollten ähnlich sein, Sie müssen nur überprüfen, wie die API aussieht.
In Java mit HBase 0.90.4:
%Vor%HBase-Sparsamkeits-API (was php verwendet) bietet keinen truncate-Befehl nur deleteTable und createTable-Funktionalität (was ist das diff aus Ihrer Sicht?)
Andernfalls müssen Sie scannen, um alle Schlüssel und deleteAllRow für jeden Schlüssel zu bekommen - was keine sehr effiziente Option ist