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 "Steve Loughran (Jira)" <ji...@apache.org> on 2020/07/03 16:48:00 UTC

[jira] [Commented] (HADOOP-16830) Add public IOStatistics API; S3A to support

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

Steve Loughran commented on HADOOP-16830:
-----------------------------------------

[~lucacanali] can you look at the latest PR? https://github.com/apache/hadoop/pull/2069

I can use it to collect/aggregate stats across workers, marshall as JSON and save in the _SUCCESS file.

The big limitation is that without thread local stats contexts, we don't get as much information as we can about performance, especially reading/seeking/network throttling &c. Somehow we are going to need to do that. But not yet. At least here we can start, especially if the ORC/Parquet readers collect their stats from all the streams they read, *and* something collects those.

I promise I will collect stats on IO work performed across multiple threads on behalf of a caller, if people commit to writing the wiring up to retrieve and aggregate that 

> Add public IOStatistics API; S3A to support
> -------------------------------------------
>
>                 Key: HADOOP-16830
>                 URL: https://issues.apache.org/jira/browse/HADOOP-16830
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs, fs/s3
>    Affects Versions: 3.3.0
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>            Priority: Major
>
> Applications like to collect the statistics which specific operations take, by collecting exactly those operations done during the execution of FS API calls by their individual worker threads, and returning these to their job driver
> * S3A has a statistics API for some streams, but it's a non-standard one; Impala &c can't use it
> * FileSystem storage statistics are public, but as they aren't cross-thread, they don't aggregate properly
> Proposed
> # A new IOStatistics interface to serve up statistics
> # S3A to implement
> # other stores to follow
> # Pass-through from the usual wrapper classes (FS data input/output streams)
> It's hard to think about how best to offer an API for operation context stats, and how to actually implement.
> ThreadLocal isn't enough because the helper threads need to update on the thread local value of the instigator
> My Initial PoC doesn't address that issue, but it shows what I'm thinking of



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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