sijie commented on issue #774: Open should run recovery by default
URL: https://github.com/apache/bookkeeper/pull/774#issuecomment-346891627
 
 
   @ivankelly 
   
   as I said in my previous comment, I am -0 for this. that means I wouldn't 
block the change making recovery as default. I don't like splitting the builder 
into two.
   
   the different views on LAC exactly reflects the views on how bookkeeper 
would look like and can be used for. LAC is not an optimization (it might be an 
optimization when you guys initially developed it for hdfs namenode). However, 
LAC is the most beautifully thing when you comes from streaming and tailing 
world. And it is the key differentiator how bookkeeper is different from a 
traditional storage system like filesystem, blobstore.  LAC is the mechanism 
for propagating how your length of a stream grow and provides the consistency 
boundary for simple repeatable read consistency. while fencing and recovery 
can't. fencing and recovery are the mechanism for preventing split brain, which 
is more on writer side.
   
   Many other storage systems have fencing and recovery mechanism. It is just a 
way to prevent split brain. They might do it in many different ways. However in 
a bytes-orient storage system, like blob store, filesystem, you can't have LAC. 
LAC is unique to bookkeeper, because it is record-orient storage system. LAC 
makes bookkeeper so unique for streaming and tailing. That is something I would 
like us to emphasize and educate people to use bookkeeper.
   
   The reason why do you think fencing and recovery is cool in bookkeeper, is 
exactly because the way how you use bookkeeper. Most of the use cases like hdfs 
namenode, hedwig, pulsar are only use bookkeeper for writes. You need fencing 
and recovery to prevent split brain when ownership or leadership change. But 
this category of use cases is so limited.
   
   in distributedlog, at Twitter, we use bookkeeper in a lot of streaming and 
tailing use cases, where LAC is the soul. It guarantees TOAB and simple 
repeatable consistency while you do streaming and tailing. That's where 
bookkeeper is so unique from other storage systems. If we want bookkeeper to 
grow into a large community, we have to educate people in a way that people 
will realize this uniqueness. 
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to