[ https://issues.apache.org/jira/browse/HBASE-15314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15837087#comment-15837087 ]
chunhui shen commented on HBASE-15314: -------------------------------------- bq.but at least we can guarantee that every allocation will reside in its own file I also have considered this scene, but seems not meaningful : 1. It will take an extra IO if an allocation cross files, but the probability is about 32KB/320GB ≈ 1/10M ( example for block size 32KB, one file capacity 320GB). So, I think it's no effect for perfomance 2. With crossing files allocation, no extra logic is needed if a single file fails due to an IO error. We will free the whole alloction if failed ( see this logic from BucketCahe#writeToCache). In addition, it seems introducing an odd stuff which is not understandable easily for user , from the release notes: {quote} The first block is wasted (it is marked allocated). The worst case is 1 'largest block' per file. If an allocation fails for any reason, all/any allocated blocks (including wasted ones) are freed again for subsequent allocation requests. This is very similar to a 'JBOD' configuration (there is no striping of any kind). {quote} > Allow more than one backing file in bucketcache > ----------------------------------------------- > > Key: HBASE-15314 > URL: https://issues.apache.org/jira/browse/HBASE-15314 > Project: HBase > Issue Type: Sub-task > Components: BucketCache > Reporter: stack > Assignee: Aaron Tokhy > Attachments: FileIOEngine.java, HBASE-15314.master.001.patch, > HBASE-15314.master.001.patch, HBASE-15314.patch, HBASE-15314-v2.patch, > HBASE-15314-v3.patch > > > Allow bucketcache use more than just one backing file: e.g. chassis has more > than one SSD in it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)