队列跳跃 - MediaConvert
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

队列跳跃

在您提交作业的队列有可用资源之前,作业会一直处于 SUBMITTED 状态,等待处理。为防止等待时间过长,您可以将作业配置为在设定的时间后自动移至另一个队列。这叫做队列跳跃

关于队列跳转,请牢记以下定义。

提交队列

您最初将作业提交到的队列是其提交 队列。

目标队列

作业在跳跃队列时转移到的队列是其目标队列。

Wait (等待) 时间

您的作业在提交队列中等待跳跃到目标队列的时间。

跳跃

等待时间过后,作业从提交队列移动到目标队列时会跳跃。移动队列的作业也称为跳跃作业

队列跳跃的一个常见用例是在使用高峰期间将作业从预留队列移动到按需队列。例如,您可以自动移动处于 SUBMITTED 状态超过 10 分钟的作业。

注意

当您设置从预留队列跳到按需队列时,MediaConvert 会根据您的作业最终运行的队列类型向您收费。如果您的作业在预留队列中运行,MediaConvert 不会单独向您收取该作业的费用,因为您为预留队列支付的费用已经包含了该费用。如果您的作业在按需队列中运行,MediaConvert 会根据按需费率向您收取作业费用。

设置队列跳跃

在设置队列跳跃时,您可以指定提交队列等待时间目标队列。通常,提交队列是预留队列,而目标队列是按需队列。以下选项卡显示了设置队列跳跃的不同选项。

Console

要在 MediaConvert 控制台中设置队列跳跃,请执行以下操作:

  1. 创建作业页面上,选择作业管理

  2. 启用队列跳跃

  3. 使用等待分钟数输入作业可以跳跃之前所需的时间。

  4. 对于目标队列,如果作业在提交队列中的停留时间超过其等待时间,请选择您希望作业跳跃到的队列。

  5. 或者,如果您的作业跳跃到其目标队列,请指定新的作业优先级。有关更多信息,请参阅为跳跃作业设置作业优先级

API, SDK, or the Amazon CLI

要在 API、SDK 或 Amazon CLI 中设置队列跳跃,请在下 HopDestinations 配置队列跳队的设置。此属性是 Jobs 的直接子级,后者位于 JSON 作业规范的顶级中。

以下是作业设置 JSON 的摘录,该设置在 10 分钟后跳跃到按需队列。

{ "Settings": { "OutputGroups": [...], "Inputs": [...] }, "HopDestinations": [ { "WaitMinutes": 10, "Queue": "arn:aws:mediaconvert:us-west-2:111122223333:queues/ondemandqueue", "Priority": 0 } ] }

有关更多信息,请参阅 MediaConvert API 参考

查看作业历史记录

当作业跳跃队列时,queuepriority 设置的值将保留在您创建作业时设置的值。您可以查看作业的跳跃后目标和队列优先级的值。以下选项卡提供了两个用于查看作业历史记录和队列优先级的选项。

Console

要使用 MediaConvert 控制台查看您的作业是否跳跃队列,请执行以下操作:

  1. 在 MediaConvert 控制台中打开作业页面。

  2. 选择一个作业 ID

  3. 找到队列过渡部分,其中显示了跳跃前后的作业优先级。该部分还显示了作业跳跃时的纪元时间戳源队列目标队列

Amazon CLI

以下 get-job 示例返回一个 JSON 响应,其中包含有关您作业的信息。

aws mediaconvert get-job \ --id 1234567890123-efg456

以下是运行此命令时在 JSON 响应中 QueueTransitions 的摘录。响应会显示您作业的提交队列和目标队列。

"QueueTransitions": [ { "Timestamp": 1672662636, "SourceQueue": arn:aws:mediaconvert:us-west-2:111122223333:queues/submissionqueue, "DestinationQueue": arn:aws:mediaconvert:us-west-2:111122223333:queues/destinationqueue } ]

有关如何使用 get-job 命令的更多信息,请参阅 Amazon CLI 命令参考

跳跃作业的计费标签

如果您在作业上使用计费标签并将其来源设置为队列,则您的作业费用始终列在提交队列的标签下。要跟踪您为跳跃队列的作业支付了多少费用,您可以将计费标签来源设置为作业。有关使用标签对 Amazon 账单排序的更多信息,请参阅通过标记设置 AWS Elemental MediaConvert 资源以进行成本分配

注意

基于队列的成本分配仅适用于在按需队列中运行的作业。当您的提交队列是预留队列,并且您的作业跳跃到按需队列时,该按需作业的费用将显示在成本分配报告中。如果您没有在预留队列上放置标签,则这些费用在报告中将以未排序的方式显示。

列出跳跃作业

当您查看作业时,MediaConvert 会显示您提交作业的队列。例如,如果您将作业提交到 Queue1 并且作业跳跃到 Queue2,则该作业将显示在针对 Queue1 筛选的列表中。它不会出现在为 Queue2 筛选的列表中。

为跳跃作业设置作业优先级

设置作业进行队列跳跃时,您可以为新队列中的作业指定优先级。如果您未指定新的优先级,则作业将保留其提交队列中的优先级编号。

如果使用不同的准则在两个队列之间为 priority 选择值,请务必为目标队列中的作业指定新的优先级值。

有关在提交队列中设置作业优先级的信息,请参阅作业优先级

以下选项卡为设置跳跃作业的优先级提供了不同的选项。

Console

要在 MediaConvert 控制台中设置跳跃作业的优先级,请执行以下操作:

  1. 在 MediaConvert 控制台中打开创建作业页面。

  2. 作业设置菜单中选择作业管理

  3. 启用队列跳跃

  4. 输入作业跳跃到目标队列时的作业优先级

  5. 同时输入等待分钟数目标队列。有关更多信息,请参阅队列跳跃

API, SDK, or the Amazon CLI

您可以使用 API、SDK 或 Amazon CLI 设置跳跃作业新的优先级。要进行设置,请在 HopDestinations 下配置 Priority。此属性是 Jobs 的直接子级,后者位于 JSON 作业规范的顶级中。

以下是作业设置 JSON 的摘录,将跳跃作业的优先级设置为 25。

{ "Settings": { "OutputGroups": [...], "Inputs": [...] }, "HopDestinations": [ { "WaitMinutes": 10, "Queue": "arn:aws:mediaconvert:us-west-2:111122223333:queues/ondemandqueue", "Priority": 25 } ] }

有关更多信息,请参阅 MediaConvert API 参考

为跳跃作业指定加速转码

要缩短某些作业的转码时间,请使用加速转码。在大多数情况下,您可以向按需队列提交加速作业,因为预留队列无法运行加速作业。但是,您可以将加速转码设置为预留队列的首选来提交作业。当您这样做时,如果作业跳跃到按需队列,它将在启用加速的情况下运行。有关加速转码的更多信息,请参阅 MediaConvert 用户指南中的加速转码

以下选项卡为设置加速转码提供了不同选项。

Console

要在 MediaConvert 控制台中将加速设置为首选,请执行以下操作:

  1. 在 MediaConvert 控制台中打开创建作业页面。

  2. 作业设置菜单中选择作业管理

  3. 加速下,使用下拉列表选择首选

API, SDK, or the Amazon CLI

要使用 API、SDK 或 Amazon CLI 指定首选加速,请在 AccelerationSettings 下配置 Mode。此属性是 Jobs 的直接子级,后者位于 JSON 作业规范的顶级中。

以下是作业设置 JSON 的摘录,其中指定了队列跳跃到有加速转码的按需队列。

{ "Settings": { "OutputGroups": [...], "Inputs": [...] }, "AccelerationSettings": { "Mode": "PREFERRED" }, "HopDestinations": [ { "WaitMinutes": 10, "Queue": "arn:aws:mediaconvert:us-west-2:111122223333:queues/ondemandqueue", "Priority": 25 } ] }

有关更多信息,请参阅 MediaConvert API 参考

暂停的队列的队列跳跃行为

当队列处于暂停状态时,作业不会从该队列中跳跃,但作业可以自由地跳跃到暂停的队列。

从暂停的队列跳跃

当队列处于暂停状态时,作业不会从该队列中跳跃。队列跳跃行为取决于队列处于暂停状态的时间。考虑以下两种情况:

您将作业提交到某个队列,暂停该队列的时间超过队列跳跃等待时间,然后重新激活它。

在这种情况下,作业是否跳跃取决于作业在队列中的位置。如果队列中前面有任何作业,则该作业将跳跃到目标队列。如果队列中该作业前面没有任何作业,则 MediaConvert 会处理该作业而不发生跳跃。

例如,假设您将某个作业提交到 Queue1,该队列的等待时间为 15 分钟,目标为 Queue2。在提交作业的五分钟后,您暂停了 Queue1。十分钟后,作业仍保留在 Queue1 中。半小时后,您激活了 Queue1。当时,Queue1 中该作业前面没有任何作业,因此作业将从 Queue1 运行。

您将作业提交到一个队列。您暂停了该队列,然后在等待时间过去之前,重新激活了该队列。

在这种情况下,队列的暂停时间根本不会影响到队列跳跃。

例如,假设您将某个作业提交到 Queue1,该队列的等待时间为 15 分钟,目标为 Queue2。在提交作业的五分钟后,您暂停了 Queue1。一分钟后,您重新激活了 Queue1。九分钟后(提交作业的 15 分钟后),队列中该作业前面仍然有作业。因此,作业跳跃到 Queue2,就好像您没有暂停队列一样。

跳跃到暂停的队列

作业可以自由地从活动队列跳跃到暂停的队列。例如,假设您将某个作业提交到 Queue1,该队列的等待时间为 15 分钟,目标为 Queue2。接着,在提交作业的五分钟后,您暂停了 Queue2。十分钟后(提交作业的 15 分钟后),该作业跳跃到 Queue2,并保留在该队列中,一直等到您激活队列为止。