批量处理概述

最近更新时间:2019-10-22 18:21:12

COS 批量处理功能可以让您对存储桶内指定的对象列表执行指定的操作。您可以通过清单功能生成一份对象清单作为指定的对象列表,或者将您需要处理的对象依照清单文件的格式记录在一份 CSV 格式的文件中,COS 批量处理功能将根据这份对象清单文件进行批量处理。

如需进一步了解清单功能,请参见 清单功能概述

当前 COS 批量处理功能仅支持以下指定操作:

您可以通过 COS 控制台来使用 COS 批量处理功能,具体可参见 批量处理

原理

当您需要执行批量处理操作时,首先需要建立批量处理任务,在批量处理任务中包含了要对对象列表执行指定操作所需的所有信息,您可以使用清单作为对象列表。

当您提供了对象清单,建立并启动批量处理任务后,批量处理功能将对清单内的对象逐一执行您指定的操作。任务正在执行时,您可以通过 COS 控制台监控该任务的执行状态,同时您也可以指定其在完成任务后输出相应的任务报告。任务报告将详细描述您本次任务中所执行的每一项操作的状态。

注意:

批量处理功能仅对当前存储桶内的对象有效,如您需要批量处理其他存储桶的对象数据,请在相应存储桶内开启批量处理功能。

对象清单

对象清单是一份记录了待处理的所有对象的列表。如您需要创建一项批量处理任务,首先需提供一份对象清单,以告知 COS 您需要处理的对象。您需要将这一份对象清单文件存放在存储桶中,并提供这一份文件的名称、ETag 和 VersionID(如果有)等信息。您可以通过以下两种方式创建对象清单:

  • COS 清单功能:该功能输出 CSV 格式的对象清单。有关对象清单的详细信息,您可以参见 清单功能概述。如您的对象清单中包含对象的版本 ID 信息,那么 COS 在执行批量处理时将处理相应版本 ID 的对象。
  • 配置 CSV 文件:该文件中每一行均必须包含存储桶名称、待处理的对象名称和对象版本 ID(可选)。如您未曾开启过版本控制功能,可忽略对象版本 ID 信息。CSV 文件配置的格式如下:
examplebucket-appid, exampleobject, PZ9ibn9D5lP6p298B7S9_ceqx1n5EJ0p
examplebucket-appid, exampleobject, PZ9ibn9D5lP6p298B7S9_ceqx1n5EJ0p
examplebucket-appid, exampleobject, jbo9_jhdPEyB4RrmOxWS0kU0EoNrU_oI
注意:

  • 如果您的存储桶已开启或者曾经开启过版本控制,您必须在对象清单中提供对象的版本信息。在 COS 执行任务前,会解析您提供的清单,并根据您所提供的清单确定待处理的对象。
  • 您可以在对象清单中包含存储桶内所有对象,但如果需要处理海量对象时,任务可能将会执行较长的时间。
  • 如果您未指定版本 ID,COS 将默认对最新版本的对象进行操作。当您在创建任务之前上传了与待处理对象同名的对象文件,COS 将默认处理最新版本的对象,而不是创建对象清单时的对象。避免此类操作的方式是开通版本控制功能,并在对象清单中指定版本 ID。

批量处理任务

本部分详细描述如何创建批量处理任务,以及当您创建批量处理任务完成后,系统的反馈情况。

创建批量处理任务需要提供以下信息:

  • 操作
    您需要明确对清单中的待处理对象执行何种操作。每一个操作均可以配置相应的参数,COS 将会根据这些操作的配置信息,依次处理清单中的对象。
  • 对象清单
    对象清单是一份记录了待处理的所有对象的文件。您可以通过清单功能创建一份对象清单,详见 清单功能概述。或者您自行将待处理的对象按照清单文件的格式记录在一份 CSV 格式的文件中,并以此作为对象清单。
  • 优先级
    您可以使用优先级来标识当前批量处理任务相对于其他批量处理任务的优先状态。任务优先级并不直接决定您任务完成的先后顺序。如您需要控制多个任务顺序执行,需要您自行检测任务执行状态,在一个任务结束后开始下一个任务。
  • 规则权限
    当您配置批量处理任务后,需要保证您的账号具有相应的 IAM 权限执行批量处理操作。例如,您配置了批量处理任务以批量执行PUT Object-copy操作,此时您应该确保您在源存储桶中具备Get Object的授权,同时也应当确保您在目标存储桶中具备PUT Object的授权。此外,对于任意批量处理任务,您都应当保证您具有读取对象清单和写入任务报告的权限。有关权限配置的详细信息,可参见 权限配置存储桶访问策略
  • 任务报告
    您可以配置在任务完成后输出任务报告。如果您需要输出任务报告,您需要在创建批量处理任务时填写相应的参数,以确保系统能将您的任务报告正确输出至指定存储桶。必填的信息包括存放任务报告的存储桶,任务报告的格式,任务报告是否包含所有任务信息等,任务报告的文件前缀是可选项。
  • 任务描述(可选)
    您可以为您创建的批量处理任务提供256字节的任务描述,帮助您跟踪和监控您的任务。COS 将在您的控制台上展示任务描述的详细信息。您可以根据任务描述方便地排列或者过滤您创建的任务。任务描述可以是重复的内容,您可以为相近的任务配置同一任务描述(例如,每周同步复制日志数据),以实现同类任务的管理。