And it looks like you already figured that out :) On Tue, Jan 6, 2015, 9:43 AM Jesse Yates <[email protected]> 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 <[email protected]> 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 <[email protected]> wrote: ----- >> To: [email protected] >> From: Nicolas Maillard <[email protected]> >> 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 <[email protected]> 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*@hortonworks.com* <[email protected]> >> Website: http://www.hortonworks.com >> >> >> >> CONFIDENTIALITY NOTICE >> 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. >> >
