You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Mikael Sitruk <mi...@gmail.com> on 2011/10/27 09:19:51 UTC

Adding a column family restriction

Hi

I have table in which I need to add column family. Nevertheless while trying
todo this via API or from shell this operation cannot be complete without
disabling the table first. From the business point of view i cannot affort
disabling the table.

So my questions are:
Why such restriction exist? I can understand for deleting a column family by
why for creating a new one?
Is there a plan to enable this in the future?
I have noticed that disabling/enabling table time is different from table to
table, what is the factor affecting the disable/enable time (number of
regions/volume of the table...)?

I also suggest to update the Javadoc to reflect this restriction on the
operation (currently no trace of this restriction in the javadoc)

Thanks
Regards,
Mikael.S

Re: Adding a column family restriction

Posted by Ted Yu <yu...@gmail.com>.
Subbu and I are working on 4213. 
It is distributed and supports master failover. 

During his test, Subbu found 4213 to be significantly faster than 1730. 

Stay tuned. 



On Oct 28, 2011, at 2:33 AM, Mikael Sitruk <mi...@gmail.com> wrote:

> Hi Doug
> The architecture chapter is not really clear on this feature (unless i
> missed something), nevertheless i can understand from your answer that the
> time of the operation is related to the number of region.
> 
> I found for the 0.92 release
> https://issues.apache.org/jira/browse/HBASE-4213 (which is not resolved yet)
> https://issues.apache.org/jira/browse/HBASE-1730 (resolved)
> 1730 is the generic answer for the above (perhaps 4213 should be also marked
> as resolved?)
> Do you know when the 0.92 is planed to be released?
> 
> Thanks
> Mikael.S
> 
> On Thu, Oct 27, 2011 at 3:34 PM, Doug Meil <do...@explorysmedical.com>wrote:
> 
>> Online table changes is a feature on TRUNK/.92 (dev-list, please comment).
>> However, for .90 and before you need to disable.  Long story short, this
>> has to do with the fact that the CFs metadata needs to be propagated to all
>> the regions.
>> 
>> For background, see:  http://hbase.apache.org/book.html#architecture
>> 
>> 
>> ________________________________________
>> From: Mikael Sitruk [mikael.sitruk@gmail.com]
>> Sent: Thursday, October 27, 2011 3:19 AM
>> To: dev@hbase.apache.org
>> Subject: Adding a column family restriction
>> 
>> Hi
>> 
>> I have table in which I need to add column family. Nevertheless while
>> trying
>> todo this via API or from shell this operation cannot be complete without
>> disabling the table first. From the business point of view i cannot affort
>> disabling the table.
>> 
>> So my questions are:
>> Why such restriction exist? I can understand for deleting a column family
>> by
>> why for creating a new one?
>> Is there a plan to enable this in the future?
>> I have noticed that disabling/enabling table time is different from table
>> to
>> table, what is the factor affecting the disable/enable time (number of
>> regions/volume of the table...)?
>> 
>> I also suggest to update the Javadoc to reflect this restriction on the
>> operation (currently no trace of this restriction in the javadoc)
>> 
>> Thanks
>> Regards,
>> Mikael.S
>> 
>> 
> 
> 
> -- 
> Mikael Sitruk

Re: Adding a column family restriction

Posted by Doug Meil <do...@explorysmedical.com>.
Hi Mikael-

Specifically here...

http://hbase.apache.org/book.html#arch.catalog.meta

... and in the rest of Arch where it describes Regions/CF/StoreFile
writing.

Also, take a look at this...

http://hbase.apache.org/book.html#trouble.namenode.hbase.objects


.. For a description of what the file-hierarchy looks like on HDFS.


On 10/28/11 5:33 AM, "Mikael Sitruk" <mi...@gmail.com> wrote:

>Hi Doug
>The architecture chapter is not really clear on this feature (unless i
>missed something), nevertheless i can understand from your answer that the
>time of the operation is related to the number of region.
>
>I found for the 0.92 release
>https://issues.apache.org/jira/browse/HBASE-4213 (which is not resolved
>yet)
>https://issues.apache.org/jira/browse/HBASE-1730 (resolved)
>1730 is the generic answer for the above (perhaps 4213 should be also
>marked
>as resolved?)
>Do you know when the 0.92 is planed to be released?
>
>Thanks
>Mikael.S
>
>On Thu, Oct 27, 2011 at 3:34 PM, Doug Meil
><do...@explorysmedical.com>wrote:
>
>> Online table changes is a feature on TRUNK/.92 (dev-list, please
>>comment).
>>  However, for .90 and before you need to disable.  Long story short,
>>this
>> has to do with the fact that the CFs metadata needs to be propagated to
>>all
>> the regions.
>>
>> For background, see:  http://hbase.apache.org/book.html#architecture
>>
>>
>> ________________________________________
>> From: Mikael Sitruk [mikael.sitruk@gmail.com]
>> Sent: Thursday, October 27, 2011 3:19 AM
>> To: dev@hbase.apache.org
>> Subject: Adding a column family restriction
>>
>> Hi
>>
>> I have table in which I need to add column family. Nevertheless while
>> trying
>> todo this via API or from shell this operation cannot be complete
>>without
>> disabling the table first. From the business point of view i cannot
>>affort
>> disabling the table.
>>
>> So my questions are:
>> Why such restriction exist? I can understand for deleting a column
>>family
>> by
>> why for creating a new one?
>> Is there a plan to enable this in the future?
>> I have noticed that disabling/enabling table time is different from
>>table
>> to
>> table, what is the factor affecting the disable/enable time (number of
>> regions/volume of the table...)?
>>
>> I also suggest to update the Javadoc to reflect this restriction on the
>> operation (currently no trace of this restriction in the javadoc)
>>
>> Thanks
>> Regards,
>> Mikael.S
>>
>>
>
>
>-- 
>Mikael Sitruk



Re: Adding a column family restriction

Posted by Mikael Sitruk <mi...@gmail.com>.
Hi Doug
The architecture chapter is not really clear on this feature (unless i
missed something), nevertheless i can understand from your answer that the
time of the operation is related to the number of region.

I found for the 0.92 release
https://issues.apache.org/jira/browse/HBASE-4213 (which is not resolved yet)
https://issues.apache.org/jira/browse/HBASE-1730 (resolved)
1730 is the generic answer for the above (perhaps 4213 should be also marked
as resolved?)
Do you know when the 0.92 is planed to be released?

Thanks
Mikael.S

On Thu, Oct 27, 2011 at 3:34 PM, Doug Meil <do...@explorysmedical.com>wrote:

> Online table changes is a feature on TRUNK/.92 (dev-list, please comment).
>  However, for .90 and before you need to disable.  Long story short, this
> has to do with the fact that the CFs metadata needs to be propagated to all
> the regions.
>
> For background, see:  http://hbase.apache.org/book.html#architecture
>
>
> ________________________________________
> From: Mikael Sitruk [mikael.sitruk@gmail.com]
> Sent: Thursday, October 27, 2011 3:19 AM
> To: dev@hbase.apache.org
> Subject: Adding a column family restriction
>
> Hi
>
> I have table in which I need to add column family. Nevertheless while
> trying
> todo this via API or from shell this operation cannot be complete without
> disabling the table first. From the business point of view i cannot affort
> disabling the table.
>
> So my questions are:
> Why such restriction exist? I can understand for deleting a column family
> by
> why for creating a new one?
> Is there a plan to enable this in the future?
> I have noticed that disabling/enabling table time is different from table
> to
> table, what is the factor affecting the disable/enable time (number of
> regions/volume of the table...)?
>
> I also suggest to update the Javadoc to reflect this restriction on the
> operation (currently no trace of this restriction in the javadoc)
>
> Thanks
> Regards,
> Mikael.S
>
>


-- 
Mikael Sitruk

RE: Adding a column family restriction

Posted by Doug Meil <do...@explorysmedical.com>.
Online table changes is a feature on TRUNK/.92 (dev-list, please comment).  However, for .90 and before you need to disable.  Long story short, this has to do with the fact that the CFs metadata needs to be propagated to all the regions.   

For background, see:  http://hbase.apache.org/book.html#architecture 


________________________________________
From: Mikael Sitruk [mikael.sitruk@gmail.com]
Sent: Thursday, October 27, 2011 3:19 AM
To: dev@hbase.apache.org
Subject: Adding a column family restriction

Hi

I have table in which I need to add column family. Nevertheless while trying
todo this via API or from shell this operation cannot be complete without
disabling the table first. From the business point of view i cannot affort
disabling the table.

So my questions are:
Why such restriction exist? I can understand for deleting a column family by
why for creating a new one?
Is there a plan to enable this in the future?
I have noticed that disabling/enabling table time is different from table to
table, what is the factor affecting the disable/enable time (number of
regions/volume of the table...)?

I also suggest to update the Javadoc to reflect this restriction on the
operation (currently no trace of this restriction in the javadoc)

Thanks
Regards,
Mikael.S