hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (HBASE-5954) Allow proper fsync support for HBase
Date Sat, 21 Jul 2012 04:03:35 GMT

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

Lars Hofhansl edited comment on HBASE-5954 at 7/21/12 4:01 AM:
---------------------------------------------------------------

I think the API going multiple ways (these are not mutually exclusive):

# hsync for HFiles (would guard compactions, etc, very lightweight), enabled with a config
option (default on I think)
# hsync all WAL edits (very expensive, but would not require client changes), enabled with
a config option (default off)
# hsync for tables or column families for HFiles (configured in the table/column descriptor)
# hsync for tables or column families for the WAL (configured in the table/column descriptor)
# WAL hsync per Put. Gives control to the application. A batch put would hsync the WAL if
at least one Put in the batch was market with hsync. What about deletes? In 0.94 they are
not batched; could it at the end of operation there.
# WAL hsync per RPC. Could send flag with the RPC from the client. I.e. HTable would have
a Put(List<Put> puts, boolean hsync) method
# HTable.hsync. Client calls this when WAL must be sync'ed. Most flexible, but incurs an extra
RPC to the RegionServer just to force the hsync.

Comments welcome.

Edit: Forgot some options.
                
      was (Author: lhofhansl):
    I think the API going multiple ways (these are not mutually exclusive):

# hsync for HFiles (would guard compactions, etc, very lightweight), enabled with a config
option (default on I think)
# hsync all WAL edits (very expensive, but would not require client changes), enabled with
a config option (default off)
# sync per Put. Gives control to the application. A batch put would hsync the WAL if at least
one Put in the batch was market with hsync. What about deletes? In 0.94 they are not batched;
could it at the end of operation there.
# Per RPC. Could send flag with the RPC from the client. I.e. HTable would have a Put(List<Put>
puts, boolean hsync) method
# HTable.hsync. Client calls this when data must be sync'ed. Most flexible, but incurs an
extra RPC to the RegionServer just to force the hsync.

Comments welcome.

                  
> Allow proper fsync support for HBase
> ------------------------------------
>
>                 Key: HBASE-5954
>                 URL: https://issues.apache.org/jira/browse/HBASE-5954
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Lars Hofhansl
>            Assignee: Lars Hofhansl
>             Fix For: 0.96.0, 0.94.2
>
>         Attachments: 5954-trunk-hdfs-trunk-v2.txt, 5954-trunk-hdfs-trunk-v3.txt, 5954-trunk-hdfs-trunk-v4.txt,
5954-trunk-hdfs-trunk-v5.txt, 5954-trunk-hdfs-trunk-v6.txt, 5954-trunk-hdfs-trunk.txt, hbase-hdfs-744.txt
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message