phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jesse Yates <>
Subject Re: Select dynamic column content
Date Tue, 06 Jan 2015 17:43:40 GMT
And it looks like you already figured that out :)

On Tue, Jan 6, 2015, 9:43 AM Jesse Yates <> wrote:

> You wouldn't even need another table, just a single VARCHAR[] column to
> keep the column names. Its ideal to keep it in the same row (possibly in
> another cf if you expect it to be large) since you get ACID compliance on
> that row, which you wouldn't get from using another table. You then just
> upsert the names column at the same time you upsert the dynamic columns.
> Phoenix does something similar for tracing where there is an unknown
> number of annotations - we keep a trace annotation count column which then
> can be used to figure out the dynamic annotation column names (which are
> things like annotations.a0, .a1, .a2, etc)
> The downside is that you then need to do two queries to get all the
> columns, but until we implement the cf.* logic for dynamic columns, that's
> the best you can do.
> - jesse
> On Tue, Jan 6, 2015, 9:23 AM Sumanta Gh <> wrote:
>> Thanks Nicolas for replying.
>> I am already managing dynamic column names either putting them in a
>> separate column or keeping the names in cache.
>> But looking at the pace Phoenix is evolving, IMHO this cf.* query pattern
>> would be very much helpful for users.
>> The stock HBase client is capable of doing that.
>> Because my table is extremely sparsed and I allow quite a random schema
>> in every row of the table, getting the content of the dynamic column in a
>> single query will save lot of time.
>> Looking forward to your completion of the work...
>> Regards
>> Sumanta
>> -----Nicolas Maillard <> wrote: -----
>> To:
>> From: Nicolas Maillard <>
>> Date: 01/06/2015 03:08PM
>> Subject: Re: Select dynamic column content
>> Hello Sumanta
>> This is a last bit missing in the select cf.* query pattern that would
>> bring back not only known columns but all dynamic ones also. I never got
>> around to finishing that bit for different reasons. The best way would be
>> to finish that, other than that I do not see an easy way to retrieve
>>  dynamic columns of which you have lost the column name. I guess if there
>> is a logic ti these column names you could try to reconstruct or keep a
>> second table of keys to dynamic column names to find them in the after math.
>> regards
>> On Tue, Jan 6, 2015 at 8:01 AM, Sumanta Gh <> wrote:
>>> Hi,
>>> It has been a puzzle for me to get the content of dynamic columns in a
>>> single SELECT * FROM query.
>>> Challenge is that I do not know the dynamic column names in advance so I
>>> can not mention a dynamic column in the SELECT query.
>>> Is there any way out? Please suggest.
>>> Regards
>>> Sumanta
>>> =====-----=====-----=====
>>> Notice: The information contained in this e-mail
>>> message and/or attachments to it may contain
>>> confidential or privileged information. If you are
>>> not the intended recipient, any dissemination, use,
>>> review, distribution, printing or copying of the
>>> information contained in this e-mail message
>>> and/or attachments to it are strictly prohibited. If
>>> you have received this communication in error,
>>> please notify us by reply e-mail or telephone and
>>> immediately and permanently delete the message
>>> and any attachments. Thank you
>> --
>> Nicolas Maillard Solution Engineer
>> Phone:     +33 (0)6 68 17 66 05
>> Email:      nmaillard** <>
>> Website:
>> NOTICE: This message is intended for the use of the individual or entity
>> to which it is addressed and may contain information that is confidential,
>> privileged and exempt from disclosure under applicable law. If the reader
>> of this message is not the intended recipient, you are hereby notified that
>> any printing, copying, dissemination, distribution, disclosure or
>> forwarding of this communication is strictly prohibited. If you have
>> received this communication in error, please contact the sender immediately
>> and delete it from your system. Thank You.

View raw message