You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Wangda Tan (JIRA)" <ji...@apache.org> on 2017/05/17 21:04:04 UTC
[jira] [Commented] (YARN-6593) [API] Introduce Placement Constraint
object
[ https://issues.apache.org/jira/browse/YARN-6593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16014767#comment-16014767 ]
Wangda Tan commented on YARN-6593:
----------------------------------
[~kkaranasos], thanks for updating the patch, some suggestions:
1) PlacementConstraint should be parent class of CompoundPlacementConstraint/SimplePlacementConstraint. Now it added one additional hierarchy to each node in the tree.
2) Suggest to move delay DelayUnit/delayValue from CompoundPlacementConstraint to a separate class such as DelayCriterion.
3) Suggest to introduce Builder to CompoundPlacementConstraint, with that, YARN app can call:
{code}
CompoundPlacementConstraint.newBuilder().and/or(<constraint-1>, <constraint-2>, ...)
CompoundPlacementConstraint.newBuilder().and/or(<constraint-1>, <constraint-2>, ...)
CompoundPlacementConstraint.newBuilder().and/or(List<DelayCriterion>, <constraint-1>, <constraint-2>, ...)
{code}
4) SimplePlacementConstraint:
Suggest to follow what we defined in doc, add two separate classes TargetConstraint​/CardinalityConstraint​, both extends PlacementConstraint. Limit to use 2 out of 3 fields is hard for app developer to understand/use.
5) Similarily, PlacementConstraintTarget. Suggest to introduce a Builder, which we can support following creations modes:
{code}
- toNodeAttributes(op, nodeAttributeKey, List<nodeAttibuteValue)
- toAllocationTags(op, List<allocationTags>)
{code}
To your question:
bq. // TODO: Should this be checked here or should it be part of a validation?
I suggest treat allocationTags as value, and key of allocationTags is always empty.
6) Test: should add all PB classes to {{TestPBRecordImpl}}.
> [API] Introduce Placement Constraint object
> -------------------------------------------
>
> Key: YARN-6593
> URL: https://issues.apache.org/jira/browse/YARN-6593
> Project: Hadoop YARN
> Issue Type: Sub-task
> Reporter: Konstantinos Karanasos
> Assignee: Konstantinos Karanasos
> Attachments: YARN-6593.001.patch
>
>
> This JIRA introduces an object for defining placement constraints.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org