[ https://issues.apache.org/jira/browse/HBASE-22005?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16787053#comment-16787053 ]
Steve Loughran commented on HBASE-22005: ---------------------------------------- I think you'll need a plan to continue to work with stores which don't support BB; that includes object stores which ship with HBase support today (hello Azure!) and whose users will be unhappy when things not working. bq. I still think those basic fs, such as LocalFileSystem/DistributedFileSystem need the ByteBuffer read/pread method, it's so common to use I see the world moving away from Posix in two directions * near-RAM-speed solid state storage. Here memory access operations make a lot more sense than the stream API, because in hardware these can be part of the memory space of the application. Why copy it into process memory at all, when it can just be memory mapped? * object storage. Here we go the other way - high latency IO where the cost of a seek() is such that you can see the logs pause and you'll know "hey! it's a GET". There we're looking at async IO APIs, vectored IO ops etc. I don't expect stores to implement ByteBufferReadable; async vector reads where you provide a list of <offset, len, dest[]) operations, the client farms then out as a series of ranged (possibly coalesced) GETs on a pooled HTTPS connections and you get them back in the order the store feels like. I think both are valid stores of data. InputStream is one which kind-of-works, but its not ideal for both. Having it in localFS (which implies, checksumfs as well as RawLocalFS), would be handy for testing, but for that kind of testing: best to create a static miniHDFS cluster and play with that. Please: don't make the leap to ByteBufferReadable and expect all filesystems to follow. There's more out there than even ships in hadoop's own JARs > Use ByteBuff's refcnt to track the life cycle of data block > ----------------------------------------------------------- > > Key: HBASE-22005 > URL: https://issues.apache.org/jira/browse/HBASE-22005 > Project: HBase > Issue Type: Sub-task > Reporter: Zheng Hu > Assignee: Zheng Hu > Priority: Major > Attachments: HBASE-22005.HBASE-21879.v1.patch > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)