You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by schausson <sc...@softera.fr> on 2017/04/25 08:49:33 UTC

Unlimited number of versions for a column family ?

Hi,

I just spent a couple of hours reading documentation about versioning
management. 

I understood that there is no theorietical limit to the number of versions
that hbase can store (even if I perfectly understood from this forum that
this is not a good design to keep thousands of versions for a given cell !),
but couldn't figure out how to specify at creation time that I want to store
an unbounded number of versions...

From hbase shell perspective, it could be something similar to :

...
Is this possible or must I necessarily specify a predefined upper limit
(100, 1000, whatever...) ?

Thanks for your help

Sebastien



--
View this message in context: http://apache-hbase.679495.n3.nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673.html
Sent from the HBase User mailing list archive at Nabble.com.

Re: Unlimited number of versions for a column family ?

Posted by Anoop John <an...@gmail.com>.
This will result in a big sized region..  A row can not be split
across 2 regions.  So that region can not get split

-Anoop-

On Tue, Apr 25, 2017 at 2:58 PM, schausson <sc...@softera.fr> wrote:
> OK, so this is not supported for now...
>
> Additional questions related to region size :
>
> If I set "versions" to high value (several millions for instance), the size
> of a row may exceed the region size...What will happen in such case ?
>
> And if I consider another design, like saving versions in additional
> colmumns (column id could be concatenated with history timestamp), the same
> question raises up : if we save millions of columns, what is the behavior
> when row size exceeds the region size ?
>
> Thanks again for your help
>
>
>
>
>
> --
> View this message in context: http://apache-hbase.679495.n3.nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673p4087677.html
> Sent from the HBase User mailing list archive at Nabble.com.

Re: Unlimited number of versions for a column family ?

Posted by Ted Yu <yu...@gmail.com>.
When row size exceeds region size, the row would stay in one region. 

Cheers

> On Apr 25, 2017, at 2:28 AM, schausson <sc...@softera.fr> wrote:
> 
> OK, so this is not supported for now...
> 
> Additional questions related to region size : 
> 
> If I set "versions" to high value (several millions for instance), the size
> of a row may exceed the region size...What will happen in such case ?
> 
> And if I consider another design, like saving versions in additional
> colmumns (column id could be concatenated with history timestamp), the same
> question raises up : if we save millions of columns, what is the behavior
> when row size exceeds the region size ?
> 
> Thanks again for your help
> 
> 
> 
> 
> 
> --
> View this message in context: http://apache-hbase.679495.n3.nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673p4087677.html
> Sent from the HBase User mailing list archive at Nabble.com.

Re: Unlimited number of versions for a column family ?

Posted by schausson <sc...@softera.fr>.
OK, so this is not supported for now...

Additional questions related to region size : 

If I set "versions" to high value (several millions for instance), the size
of a row may exceed the region size...What will happen in such case ?

And if I consider another design, like saving versions in additional
colmumns (column id could be concatenated with history timestamp), the same
question raises up : if we save millions of columns, what is the behavior
when row size exceeds the region size ?

Thanks again for your help





--
View this message in context: http://apache-hbase.679495.n3.nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673p4087677.html
Sent from the HBase User mailing list archive at Nabble.com.

Re: Unlimited number of versions for a column family ?

Posted by Ted Yu <yu...@gmail.com>.
w.r.t. using negative value for max versions, see the following:

  public HColumnDescriptor setMaxVersions(int maxVersions) {

    if (maxVersions <= 0) {

      // TODO: Allow maxVersion of 0 to be the way you say "Keep all
versions".

      // Until there is support, consider 0 or < 0 -- a configuration error.

      throw new IllegalArgumentException("Maximum versions must be positive"
);


BTW MAX_INT is not unlimited :-)



On Tue, Apr 25, 2017 at 2:08 AM, schausson <sc...@softera.fr> wrote:

> Hi Ted,
>
> Thanks for your help...Formatting issue I guess : here is what I asked
> about
> hbase shell :
> Is it possible to invoke somethign like :
>
> create 'table', {NAME => 'cf', VERSIONS => -1 }
> create 'table', {NAME => 'cf', VERSIONS => MAX_INT }
>
> in order to support unlimited number of versions for the 'cf' column family
> ?
>
>
>
>
> --
> View this message in context: http://apache-hbase.679495.n3.
> nabble.com/Unlimited-number-of-versions-for-a-column-
> family-tp4087673p4087675.html
> Sent from the HBase User mailing list archive at Nabble.com.
>

Re: Unlimited number of versions for a column family ?

Posted by schausson <sc...@softera.fr>.
Hi Ted,

Thanks for your help...Formatting issue I guess : here is what I asked about
hbase shell : 
Is it possible to invoke somethign like :

create 'table', {NAME => 'cf', VERSIONS => -1 }
create 'table', {NAME => 'cf', VERSIONS => MAX_INT }

in order to support unlimited number of versions for the 'cf' column family
?




--
View this message in context: http://apache-hbase.679495.n3.nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673p4087675.html
Sent from the HBase User mailing list archive at Nabble.com.

Re: Unlimited number of versions for a column family ?

Posted by Ted Yu <yu...@gmail.com>.
I only see '...' when you talked about shell.

Please take a look at:
HColumnDescriptor.setMaxVersions(int versions)

On Tue, Apr 25, 2017 at 1:49 AM, schausson <sc...@softera.fr> wrote:

> Hi,
>
> I just spent a couple of hours reading documentation about versioning
> management.
>
> I understood that there is no theorietical limit to the number of versions
> that hbase can store (even if I perfectly understood from this forum that
> this is not a good design to keep thousands of versions for a given cell
> !),
> but couldn't figure out how to specify at creation time that I want to
> store
> an unbounded number of versions...
>
> From hbase shell perspective, it could be something similar to :
>
> ...
> Is this possible or must I necessarily specify a predefined upper limit
> (100, 1000, whatever...) ?
>
> Thanks for your help
>
> Sebastien
>
>
>
> --
> View this message in context: http://apache-hbase.679495.n3.
> nabble.com/Unlimited-number-of-versions-for-a-column-family-tp4087673.html
> Sent from the HBase User mailing list archive at Nabble.com.
>