[
https://issues.apache.org/jira/browse/HADOOP-14478?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rajesh Balamohan updated HADOOP-14478:
--------------------------------------
Attachment: HADOOP-14478.002.patch
Attaching .2 version with fixes in seek(). Also attaching test results from
hadoop-azure module.
My azure machine and endpoints are hosted in "Japan West region"
{noformat}
hdiuser@hn0:~/hadoop/hadoop-tools/hadoop-azureā« mvn test
...
..
Tests run: 16, Failures: 0, Errors: 0, Skipped: 16, Time elapsed: 0.421 sec -
in org.apache.hadoop.fs.azure.TestFileSystemOperationExceptionHandling
Running org.apache.hadoop.fs.azure.TestAzureConcurrentOutOfBandIo
Tests run: 1, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.361 sec - in
org.apache.hadoop.fs.azure.TestAzureConcurrentOutOfBandIo
Running org.apache.hadoop.fs.azure.TestAzureFileSystemErrorConditions
Tests run: 6, Failures: 0, Errors: 0, Skipped: 3, Time elapsed: 0.939 sec - in
org.apache.hadoop.fs.azure.TestAzureFileSystemErrorConditions
Results :
Tests run: 703, Failures: 0, Errors: 0, Skipped: 436
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:50 min
[INFO] Finished at: 2017-06-02T13:08:42+00:00
[INFO] Final Memory: 29M/1574M
[INFO] ------------------------------------------------------------------------
{noformat}
> 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
> Attachments: HADOOP-14478.001.patch, HADOOP-14478.002.patch
>
>
> 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 addressed in
> this JIRA.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]