0
votes

I do have existing hbase table & for SQL support I am trying to explore if I can create apache phoenix table.

I would like to know if I create phoenix table on existing hbase table, does it replicate (or copy) data present in hbase table, or phoenix table just links to existing data present in hbase?

My phoenix version is <4.12.0 so this error still applies on my version & hence can't create View on top of existing hbase table.

1
Phoenix table links to the hbase table. If you are new with Phoenix, make sure you name the tables with similar case, to ensure everything works perfectly ( I would suggest uppercase names)Anish Nair
@AnishNair - do you have any link to documentation which states that phoenix table links to hbase table? I need to go through that particular details.Ashish Patil
phoenix.apache.org/…. Hope this helps. I currently create tables instead of creating views, and use version 4.7Anish Nair

1 Answers

1
votes

We can create a Phoenix table on top of the existing Hbase table. It internally uses Phoenix co-processor to link with the phoenix table.

Yes, Data would be replicated.

See below steps to do the same :

create 'DEV_HBASE:TestPhoneixIntegration','cf'
describe 'HBASE_PAS:TestPhoneixIntegration'

  Table HBASE_PAS:TestPhoneixIntegration is ENABLED                                                                                                                                                           
  HBASE_PAS:TestPhoneixIntegration                                                                                                                                                                            
  COLUMN FAMILIES DESCRIPTION                                                                                                                                                                                     
  {NAME => 'cf', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCAC
  HE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}                                                                                                                                                   
  1 row(s) in 0.0630 seconds

------------------------------------------------------

create table "DEV_HBASE"."TestPhoneixIntegration"(ROWKEY VARCHAR PRIMARY KEY , "cf"."name" VARCHAR);

SELECT * FROM "DEV_HBASE"."TestPhoneixIntegration";
+----------+-------+
|  ROWKEY  | name  |
+----------+-------+
| rowkey1  | John  |
+----------+-------+

--------------------------------------------------------
describe 'DEV_HBASE:TestPhoneixIntegration'
Table DEV_HBASE:TestPhoneixIntegration is ENABLED                                                                                                                                                           
    DEV_HBASE:TestPhoneixIntegration, {TABLE_ATTRIBUTES => {coprocessor$1 => '|org.apache.phoenix.coprocessor.ScanRegionObserver|805306366|', coprocessor$2 => '|org.apache.phoenix.coprocessor.UngroupedAggrega
    teRegionObserver|805306366|', coprocessor$3 => '|org.apache.phoenix.coprocessor.GroupedAggregateRegionObserver|805306366|', coprocessor$4 => '|org.apache.phoenix.coprocessor.ServerCachingEndpointImpl|80530636
    6|', coprocessor$5 => '|org.apache.phoenix.hbase.index.Indexer|805306366|org.apache.hadoop.hbase.index.codec.class=org.apache.phoenix.index.PhoenixIndexCodec,index.builder=org.apache.phoenix.index.PhoenixInde
    xBuilder'}                                                                                                                                                                                                      
COLUMN FAMILIES DESCRIPTION                                                                                                                                                                                     
{NAME => 'cf', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCAC
HE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}                                                                                                                                                   
1 row(s) in 0.0580 seconds