Hi Jan,

> On Aug 30, 2016, at 7:44 PM, Jan Kunigk <[email protected]> wrote:
> 
> Hi, I am trying to find out how exactly Kudu accesses storage.
> 
> Does Kudu use mmap to access file content or does rather rely on regular
> open/read/seek/write?
> 

Since mmap had some scalability limitations, kudu employs open/read/write - 
also  log_block_manager.h
in the source tree can give some more idea about how kudu addresses some 
limitations which may arise 
because of this choice.
https://github.com/apache/kudu/blob/master/src/kudu/fs/log_block_manager.h 
<https://github.com/apache/kudu/blob/master/src/kudu/fs/log_block_manager.h>

> Also, does Kudu offer any kind of consistency operations to clients, to
> ensure that data is persisted on-disk, or transferred to additional replica
> nodes? (hsync/hflush equivalent)
> 

Kudu paper mentions about ‘consistency model’ from a client point of view. On 
the
server side replicas follow eventual consistency model.  kudu is not a 
filesystem per-se 
so not sure if there is an equivalent of hsync/hflush, but one can configure the
kudu servers with --fsync options enabled. 

http://kudu.apache.org/docs/configuration_reference.html 
<http://kudu.apache.org/docs/configuration_reference.html>

> Any explanation / pointer to the relevant source files is much appreciated.
> 

For both of above, kudu paper is an excellent resource.

> Best, Jan

Reply via email to