You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Rajesh Balamohan (JIRA)" <ji...@apache.org> on 2017/06/02 06:30:05 UTC

[jira] [Created] (HADOOP-14478) Optimize NativeAzureFsInputStream for positional reads

Rajesh Balamohan created HADOOP-14478:
-----------------------------------------

             Summary: Optimize NativeAzureFsInputStream for positional reads
                 Key: HADOOP-14478
                 URL: https://issues.apache.org/jira/browse/HADOOP-14478
             Project: Hadoop Common
          Issue Type: Bug
          Components: fs/azure
            Reporter: Rajesh Balamohan


Azure's {{BlobbInputStream}} internally buffers 4 MB of data irrespective of the data length requested for. This would be beneficial for sequential reads. However, for positional reads (seek to specific location, read x number of bytes, seek back to original location) this may not be beneficial and might even download lot more data which are not used later.

It would be good to override {{readFully(long position, byte[] buffer, int offset, int length)}} for {{NativeAzureFsInputStream}} and make use of {{mark(readLimit)}} as a hint to Azure's BlobInputStream.

BlobInputStream reference: https://github.com/Azure/azure-storage-java/blob/master/microsoft-azure-storage/src/com/microsoft/azure/storage/blob/BlobInputStream.java#L448

BlobInputStream can consider this as a hint later to determine the amount of data to be read ahead. Changes to BlobInputStream would not be apart of this JIRA.






--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org