Community Articles
Find and share helpful community-sourced technical articles.
Labels (2)

PROBLEM: Created a Phoenix Table on top of existing Hbase table, the phoenix table is not working as expected or is not needed now, need to delete Phoenix table but not the existing Hbase table as it has valid data.

CONSTRAINT : Simple dropping of table from Phoenix shell would delete Hbase table too.

SOLUTION :

Step 1: Delete Phoenix table entry from SYSTEM.CATALOG as follows :

delete from SYSTEM.CATALOG where TABLE_NAME='table_name';

Step 2 : Restart the region server which hosts SYSTEM.CATALOG to clear metadata cache which may still not allow creating same named table from Phoenix.

Note : This approach may not work well if there are indexes or views on top of this table as we would end up corrupting catalog table.

You may also try snapshotting existing Hbase table , dropping the table completely from Phoenix and then cloning / restoring the Hbase table from snapshot.

6,499 Views
0 Kudos
Comments
Expert Contributor

Hi @gsharma please reflect the title

How to delete a Phoenix Table (created on Top of Existing Hbase table), Without Dropping HBase Table