phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anil <anilk...@gmail.com>
Subject Re: Extracting column values from Phoenix composite primary key
Date Fri, 26 Aug 2016 02:08:05 GMT
HI Michael,

Following the table create and upsert query -

CREATE TABLE SAMPLE(TYPE VARCHAR NOT NULL, SOURCE VARCHAR NOT NULL, LABEL
VARCHAR NOT NULL, DIRECTION VARCHAR(10) NOT NULL, REVERSETIME UNSIGNED_LONG
NOT NULL, TARGET VARCHAR,"cf".ID VARCHAR, CONSTRAINT pk PRIMARY
KEY(TYPE,SOURCE, LABEL, DIRECTION, REVERSETIME, TARGET)) COMPRESSION =
'SNAPPY';

upsert into SAMPLE(TYPE, SOURCE, LABEL, DIRECTION, REVERSETIME, TARGET, ID)
values('test', 'src', 'label', 'direction', 134424245, 'target', 'id');
.
Thanks


On 25 August 2016 at 20:50, Michael McAllister <mmcallister@homeaway.com>
wrote:

> Can you please provide the sample rowkey? It is blank in your email below.
> Alternatively, an UPSERT VALUES statement I can use to insert a row that I
> can work with myself.
>
>
>
> Michael McAllister
>
> Staff Data Warehouse Engineer | Decision Systems
>
> mmcallister@HomeAway.com | C: 512.423.7447 | skype: michael.mcallister.ha
> <zimmkate@hotmail.com> | webex: https://h.a/mikewebex
>
> This electronic communication (including any attachment) is confidential.
> If you are not an intended recipient of this communication, please be
> advised that any disclosure, dissemination, distribution, copying or other
> use of this communication or any attachment is strictly prohibited.  If you
> have received this communication in error, please notify the sender
> immediately by reply e-mail and promptly destroy all electronic and printed
> copies of this communication and any attachment.
>
>
>
> *From: *Anil <anilklce@gmail.com>
> *Reply-To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Date: *Thursday, August 25, 2016 at 10:08 AM
> *To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Subject: *Re: Extracting column values from Phoenix composite primary key
>
>
>
> HI Michael,
>
>
>
> Table create statement :
>
>
>
> CREATE TABLE SAMPLE(TYPE VARCHAR NOT NULL, SOURCE VARCHAR NOT NULL, LABEL
> VARCHAR NOT NULL, DIRECTION VARCHAR(10) NOT NULL, REVERSETIME UNSIGNED_LONG
> NOT NULL, TARGET VARCHAR,"CF".ID VARCHAR,CONSTRAINT PK PRIMARY
> KEY(TYPE,,SOURCE, LABEL, DIRECTION, REVERSETIME, TARGET)) COMPRESSION =
> 'SNAPPY'
>
>
>
> No salt buckets defined.
>
>
>
> Smaple table row key -
>
>
>
> byte[] startRow = ByteUtil.concat(PVarchar.INSTANCE.toBytes("test"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("src"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("label"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("direction"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PUnsignedLong.INSTANCE.toBytes(1235464603853L),
>
> PVarchar.INSTANCE.toBytes("target"));
>
>
>
> i am trying to extract TARGET column. Thanks.
>
>
>
> Regards,
>
> Anil
>
>
>
> On 25 August 2016 at 19:29, Michael McAllister <mmcallister@homeaway.com>
> wrote:
>
> Can you provide an example of one of the rowkeys, the values you are
> expecting out of it, and the full table definition? Of importance in the
> table definition will be whether you have salt buckets defined.
>
>
>
> Michael McAllister
>
> Staff Data Warehouse Engineer | Decision Systems
>
> mmcallister@HomeAway.com | C: 512.423.7447 | skype: michael.mcallister.ha
> <zimmkate@hotmail.com> | webex: https://h.a/mikewebex
>
> This electronic communication (including any attachment) is confidential.
> If you are not an intended recipient of this communication, please be
> advised that any disclosure, dissemination, distribution, copying or other
> use of this communication or any attachment is strictly prohibited.  If you
> have received this communication in error, please notify the sender
> immediately by reply e-mail and promptly destroy all electronic and printed
> copies of this communication and any attachment.
>
>
>
> *From: *Anil <anilklce@gmail.com>
> *Reply-To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Date: *Thursday, August 25, 2016 at 1:09 AM
> *To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Subject: *Re: Extracting column values from Phoenix composite primary key
>
>
>
> HI Michael,
>
>
>
> Thank you for the response.
>
>
>
> Unfortunately, that is not working.
>
>
>
> Following is the snippet. one of the column is unsigned long and trying to
> extract the last column (with value target in the below code).
>
> please correct me if i am doing wrong.
>
>
>
>        byte SEPARATOR_BYTE = 0;
>
>     byte[] SEPARATOR_BYTE_ARRAY = { 0 };
>
>     byte[] startRow = ByteUtil.concat(
>
> PVarchar.INSTANCE.toBytes("test"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("src"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("label"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PVarchar.INSTANCE.toBytes("direction"),
>
> QueryConstants.SEPARATOR_BYTE_ARRAY,
>
> PUnsignedLong.INSTANCE.toBytes(1235464603853L),
>
> PVarchar.INSTANCE.toBytes("target"));
>
>
>
>
>
> List<String> cols = new ArrayList<String>();
>
>     int j = 0;
>
>     for (int i= 0 ; i < startRow.length ; i++){
>
>     if (startRow[i] == SEPARATOR_BYTE){
>
>     cols.add(Bytes.toString(startRow, j, i-j));
>
>     j = i+1;
>
>     }
>
>     }
>
>
>
>     cols.add(Bytes.toString(startRow, j, startRow.length - j));
>
>
>
> System.out.println(cols.size());
>
>
>
> String rowKey = Bytes.toString(startRow);
>
> String[] columns = rowKey.split("\u0000");
>
>
>
> System.out.println(columns.length);
>
>
>
> last entry in the array has special character too along with actual value.
>
>
>
> Can you point out the bug in the above code if any. Thanks.
>
>
>
> Regards,
>
> Anil
>
>
>
>
>
> On 25 August 2016 at 02:32, Michael McAllister <mmcallister@homeaway.com>
> wrote:
>
> Anil
>
>
>
> If you split the rowkey on the zero byte character, you should end up with
> the individual columns that made up your primary key. Details are here:-
>
>
>
> https://phoenix.apache.org/faq.html#How_I_map_Phoenix_
> table_to_an_existing_HBase_table
>
>
>
> Michael McAllister
>
> Staff Data Warehouse Engineer | Decision Systems
>
> mmcallister@HomeAway.com | C: 512.423.7447 | skype: michael.mcallister.ha
> <zimmkate@hotmail.com> | webex: https://h.a/mikewebex
>
> This electronic communication (including any attachment) is confidential.
> If you are not an intended recipient of this communication, please be
> advised that any disclosure, dissemination, distribution, copying or other
> use of this communication or any attachment is strictly prohibited.  If you
> have received this communication in error, please notify the sender
> immediately by reply e-mail and promptly destroy all electronic and printed
> copies of this communication and any attachment.
>
>
>
> *From: *Anil <anilklce@gmail.com>
> *Reply-To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Date: *Wednesday, August 24, 2016 at 4:10 AM
> *To: *"user@phoenix.apache.org" <user@phoenix.apache.org>
> *Subject: *Re: Extracting column values from Phoenix composite primary key
>
>
>
> Any inputs ? Thanks.
>
>
>
> On 24 August 2016 at 11:13, Anil <anilklce@gmail.com> wrote:
>
> Hi,
>
>
>
> I have created primary key with columns in phoenix.
>
> is there any way to extract the column values from hbase row key ? Please
> help.
>
>
>
> Thanks,
>
> Anil
>
>
>
>
>
>
>

Mime
View raw message