[ https://issues.apache.org/jira/browse/YARN-3166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14321090#comment-14321090 ]
Li Lu commented on YARN-3166: ----------------------------- Sent the message by mistake before I finish. Here's the rest part: *Under hadoop-yarn-client* {{o.a.h.yarn.client.api}}: TimelineClient for ATS v1, moved from o.a.h.yarn.client.api (common). Consistent with Yarn/NM/AHS/AMRM clients. We may want to mark this class as deprecated. * TimelineClient {{o.a.h.yarn.client.api.impl: TimelineClientImpl}} for ATS v1, moved from {{o.a.h.yarn.client.api.impl}} (in common). Consistent with Yarn/NM/AHS/AMRM clients. * TimelineClientImpl Note that currently we do not have plan to extend the v1 client to have async APIs. *Under hadoop-yarn-server* {{o.a.h.yarn.server.timelineservice.aggregator}}: timeline service v2 aggregator implementation (already checked in) * BaseAggregatorService * AppLevelAggregatorService * AppLevelServiceManager (Singleton) * AppLevelServiceProvider * PerNodeAggregatorServer * PerNodeAggregatorWebService We may further refactor these classes, mainly some name changes. However, the basic structure is well-built here. {{o.a.h.yarn.server.timelineservice.reader}}: timeline service v2 reader implementation * Reader * ReaderManager (Singleton) * ReaderManagerProvider {{o.a.h.yarn.server.timelineservice.storage}}: basic storage layer implementations for both aggregators and readers TimelineStorage: storage adapter for aggregators/readers, load storage impls dynamically * StorageImpl: shared interface for all timeline storages * HBaseStorageImpl * PhoenixStorageImpl * InMemStorageImpl Pluggable, so more storage implementations are possible. Each storage implement may create its own package to further organize itself. *Under hadoop-yarn-common* For common YARN libraries. Modules/libraries added into this directory need to be decided on a case-by-case basis. > [Source organization] Decide detailed package structures for timeline service > v2 components > ------------------------------------------------------------------------------------------- > > Key: YARN-3166 > URL: https://issues.apache.org/jira/browse/YARN-3166 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Li Lu > Assignee: Li Lu > > Open this JIRA to track all discussions on detailed package structures for > timeline services v2. This JIRA is for discussion only. > For our current timeline service v2 design, aggregator (previously called > "writer") implementation is in hadoop-yarn-server's: > {{org.apache.hadoop.yarn.server.timelineservice.aggregator}} > In YARN-2928's design, the next gen ATS reader is also a server. Maybe we > want to put reader related implementations into hadoop-yarn-server's: > {{org.apache.hadoop.yarn.server.timelineservice.reader}} > Both readers and aggregators will expose features that may be used by YARN > and other 3rd party components, such as aggregator/reader APIs. For those > features, maybe we would like to expose their interfaces to > hadoop-yarn-common's {{org.apache.hadoop.yarn.timelineservice}}? > Let's use this JIRA as a centralized place to track all related discussions. -- This message was sent by Atlassian JIRA (v6.3.4#6332)