phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Serega Sheypak <>
Subject Re: select all dynamic columns by primary key if columns names are unknown
Date Tue, 02 Feb 2016 22:30:43 GMT
It's not my usecase unfortunately...
I have to log links between identities. Link presented as:
id1, source1, id2, source2 means
id1 came from source1 and id2 came from source2 and these ids are linked (a
kind cross-site auth)
the problem is that I set (id1, source1) as composite primary key and write
a table

id1, source1, id2, source2
id2, source2, id1, source1
I can pull all linked ids and "source" part of key gives me a chance to
avoid id collisions that come from different sources.

query select from ... where id = id1 involves scan that takes "forever"
I want to eliminate scan and apply access by key.

I would keeps my data is:
id - the single predefined PK column
all other columns are dynamic, where column name = source and value =
I can get all links at once using single key access.

I can easilly implement in HBase, but Phoenix doesn't allow me to select
all "columns" from column familiy

2016-02-02 23:11 GMT+01:00 James Taylor <>:

> I encourage you to use views[1] instead. You can dynamically add/remove
> columns from a view and this way Phoenix keeps track of it for you and you
> get all the other standard features.
> Thanks,
> James
> [1]
> On Tue, Feb 2, 2016 at 1:42 PM, Serega Sheypak <>
> wrote:
>> It super overhead, you have to query twice...
>> 2016-02-02 22:34 GMT+01:00 Steve Terrell <>:
>>> I would like to know as well.  Today when I upsert and create dynamic
>>> columns, I have to also create a second table to keep track of the dynamic
>>> field names and data types that were upserted so that the person writing
>>> queries for the first table can know what's fields are available.
>>> Also would like to know if there is a way to do bulk upserting with
>>> dynamic fields.
>>> On Tue, Feb 2, 2016 at 3:27 PM, Serega Sheypak <
>>> > wrote:
>>>> Hi, is it possible to select all dynamic columns if you don't know
>>>> their names in advance?
>>>> Example:
>>>> I have a table with single defined column named PK, which is a primary
>>>> key
>>>> Someone runs query:
>>>> UNSERT INTO MY_TBL(PK, C1, C2, C3) VALUES('x', '1', '2', '3')
>>>> where C1, C2, C3 are dynamic columns
>>>> then I want to select all columns using query:
>>>> select * from MY_TBL where PK = 'x'
>>>> But this query won't return C1, C2, C3 columns.

View raw message