You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Steve Loughran (Jira)" <ji...@apache.org> on 2020/01/27 20:35:00 UTC

[jira] [Created] (HADOOP-16830) Add public IOStatistics API; S3A to collect and report across threads

Steve Loughran created HADOOP-16830:
---------------------------------------

             Summary: Add public IOStatistics API; S3A to collect and report across threads
                 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


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-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org