hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "nileema shingte (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-1730) Near-instantaneous online schema and table state updates
Date Fri, 12 Aug 2011 03:14:27 GMT

    [ https://issues.apache.org/jira/browse/HBASE-1730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13083886#comment-13083886
] 

nileema shingte commented on HBASE-1730:
----------------------------------------

The attached patch (HBASE-1730.patch) does the following: 

When the master receives an alter table call (addColumn, modifyColumn, deleteColumn, modifyTable),
it updates the .tableinfo and then closes all the regions of that table. The patch includes:


1. Changes to reopen the regions when any of the above operations are performed. 
2. Best effort is made to preserve the locality of regions by assigning it a region plan before
closing it. 
3. Throttling logic that ensures that only a configurable number of regions are closed per
region server at a time. 
4. alter command in the hbase shell will block until all the regions are updated, providing
a status "x/y regions updated" every second. 
5. alter_async command that works exactly like alter, except that it does not block for completion
or provide the status. 
6. alter_status <table_name> which is a sync call and blocks to provide the "x/y regions
updated" status per second until all regions are updated. 
7. modification in the unit test for enabling alter without disabling the table. 


Number of regions that are closed at a time (per region server) is configurable. 

> Near-instantaneous online schema and table state updates
> --------------------------------------------------------
>
>                 Key: HBASE-1730
>                 URL: https://issues.apache.org/jira/browse/HBASE-1730
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>            Assignee: stack
>            Priority: Critical
>             Fix For: 0.92.0
>
>         Attachments: 1730-v2.patch, 1730-v3.patch, 1730.patch, HBASE-1730.patch
>
>
> We should not need to take a table offline to update HCD or HTD. 
> One option for that is putting HTDs and HCDs up into ZK, with mirror on disk catalog
tables to be used only for cold init scenarios, as discussed on IRC. In this scheme, regionservers
hosting regions of a table would watch permanent nodes in ZK associated with that table for
schema updates and take appropriate actions out of the watcher. In effect, schema updates
become another item in the ToDo list.
> {{/hbase/tables/<table-name>/schema}}
> Must be associated with a write locking scheme also handled with ZK primitives to avoid
situations where one concurrent update clobbers another. 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message