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

ramkrishna.s.vasudevan commented on HBASE-10278:
------------------------------------------------

I read this document.  Looks nice.
Few questions, to clarify if my understanding is right,
when there is log switch happening say edits from 1 ... 10 are in WAL A.  Due 
to switch the edits 11 .. 13 are in WAL B.  
Now if this above mentioned thing is to happen then the log roll for WAL A has 
to be completed by blocking all writes?  Will this be costly ? How costly will 
this be.
If the rollwriter happens and at the same time we start taking writes on WAL B 
the above mentioned scenario happens.  so in that case we may have out of order 
edits during log split if this RS crashes right ?.
Currently the assumption is there are 2 WALs per RS and only one of them is 
active.  So how do you plan to make the interface for this, in the sense do you 
have plans to extend this number 2 to something more than 2 ? If so how many of 
them will be active?
the reason am asking this is, the doc says this implementation will form the 
basis for other multi log implementations.  So if that is true, then if is say 
RS.getLog() how many logs should it return?  currently in testcases and in the 
HRS.rollWriter() the rolling happens only on one HLog.  But with multiWAL this 
may change.
I tried out some interfaces for HBASE-8610 inorder to introduce interfaces for 
multi WAL.  A very general use case would be to have MultiWAL per table.  If 
that model needs to fit in here how easy would it be with these interfaces 
introduced in this JIRA.




> Provide better write predictability
> -----------------------------------
>
>                 Key: HBASE-10278
>                 URL: https://issues.apache.org/jira/browse/HBASE-10278
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Himanshu Vashishtha
>            Assignee: Himanshu Vashishtha
>         Attachments: Multiwaldesigndoc.pdf
>
>
> Currently, HBase has one WAL per region server. 
> Whenever there is any latency in the write pipeline (due to whatever reasons 
> such as n/w blip, a node in the pipeline having a bad disk, etc), the overall 
> write latency suffers. 
> Jonathan Hsieh and I analyzed various approaches to tackle this issue. We 
> also looked at HBASE-5699, which talks about adding concurrent multi WALs. 
> Along with performance numbers, we also focussed on design simplicity, 
> minimum impact on MTTR & Replication, and compatibility with 0.96 and 0.98. 
> Considering all these parameters, we propose a new HLog implementation with 
> WAL Switching functionality.
> Please find attached the design doc for the same. It introduces the WAL 
> Switching feature, and experiments/results of a prototype implementation, 
> showing the benefits of this feature.
> The second goal of this work is to serve as a building block for concurrent 
> multiple WALs feature.
> Please review the doc.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to