OSS URI
在使用 E-MapReduce 时,用户将会使用两种 OSS URI,分别是:
native URI: oss://[accessKeyId:accessKeySecret@]bucket[.endpoint]/object/path
用户在作业中指定输入输出数据源时使用这种 URI,可以类比 hdfs://。用户操作 OSS 数据时,可以将 accessKeyId,accessKeySecret 以及 endpoint 配置到 Configuration 中,也可以在 URI 中直接指定 accessKeyId,accessKeySecret 以及 endpoint。
ref URI: ossref://bucket/object/path
只在 E-MapReduce 作业配置时有效,用来指定作业运行需要的资源。例如以下作业配置示例:
我们把 oss 与 ossref 这样的前缀称为 scheme。在使用过程中,需要特别注意 URI 中 scheme 的不同。
注意事项
在支持向 OSS 写数据时,E-MapReduce 使用 OSS 的 multipart 分片上传方式。这里需要提醒的是,当作业异常中断后,OSS 中会残留作业已经生产的部分数据,需要您手动删掉。这里的行为和作业输出到 HDFS 是一致的,作业异常中断后,HDFS 也会残留数据,也需要手动删掉。但有一个区别,OSS 对使用 multipart 上传的文件,它是先放在碎片管理中,所以您不仅要删除 OSS 文件管理中的输出目录残留文件,还需要在 OSS 的碎片管理中清理一次,否则会产生数据存储费用。