对象存储服务 OBS-Hadoop对接OBS:【附】hadoop-huaweicloud相关配置

时间:2024-03-25 20:27:49

【附】hadoop-huaweicloud相关配置

配置项

默认值

是否必填

说明

fs.obs.impl

org.apache.hadoop.fs.obs.OBSFileSystem

-

fs.AbstractFileSystem.obs.impl

org.apache.hadoop.fs.obs.OBS

-

fs.obs.endpoint

华为云OBS的终端节点(Endpoint)。

fs.obs.access.key

华为云的AK(Access Key Id),需要具备访问OBS对应桶的权限。

fs.obs.secret.key

华为云的SK(Secret Access Key),需要具备访问OBS对应桶的权限。

fs.obs.session.token

华为云的securitytoken,需要具备访问OBS对应桶的权限。当使用临时AK/SK时需要。

fs.obs.security.provider

实现com.obs.services.IObsCredentialsProvider接口的类,用于获取访问OBS的凭证。

fs.obs.connection.ssl.enabled

FALSE

是否通过HTTPS访问OBS。

fs.obs.threads.keepalivetime

60

控制读写线程池参数keepAliveTime。

fs.obs.threads.max

20

控制读写线程池参数corePoolSize和maximumPoolSize

fs.obs.max.total.tasks

20

控制读写线程池参数BlockingQueue的容量,其等于fs.obs.threads.max+fs.obs.max.total.tasks

fs.obs.multipart.size

104857600

写相关配置,多段上传大小。

fs.obs.fast.upload.buffer

disk

写相关配置,所有数据在写入OBS前都会先缓存然后再上传到OBS,此参数用于设置缓存方式,取值范围:

  • disk:缓存在磁盘
  • array:缓存在JVM堆内内存
  • bytebuffer:缓存在JVM堆外内存

fs.obs.buffer.dir

${hadoop.tmp.dir}

写相关配置,当fs.obs.fast.upload.buffer为disk时的缓存目录,支持多目录并以逗号分隔。

fs.obs.bufferdir.verify.enable

FALSE

写相关配置,当fs.obs.fast.upload.buffer为disk时是否验证缓存目录是否存在以及是否具备写权限。

fs.obs.fast.upload.active.blocks

4

写相关配置,每个流操作最大可以使用的缓存个数(通过多段上传线程池最多可以提交的线程任务个数),从而限制每个流操作最大可以使用的缓存空间fs.obs.fast.upload.active.blocks*fs.obs.multipart.size。

fs.obs.fast.upload.array.first.buffer

1048576

写相关配置,当fs.obs.fast.upload.buffer为array时,此参数控制JVM堆内缓存初始化大小

fs.obs.readahead.range

1048576

写相关配置,预读片段大小。

fs.obs.multiobjectdelete.enable

TRUE

删除相关配置,删除目录时是否启动批量删除。

fs.obs.delete.threads.max

20

删除相关配置,控制线程池参数maximumPoolSize和corePoolSize

fs.obs.multiobjectdelete.maximum

1000

删除相关配置,批量删除时单次OBS批量删除请求中支持的最多可删除对象的个数,最大值为1000。

fs.obs.multiobjectdelete.threshold

3

删除相关配置,批量删除时当对象个数小于此参数值时将不启动批量删除。

fs.obs.list.threads.core

30

List相关配置,控制线程池参数corePoolSize

fs.obs.list.threads.max

60

List相关配置,控制线程池参数maximumPoolSize

fs.obs.list.workqueue.capacity

1024

List相关配置,控制线程池参数BlockingQueue的容量

fs.obs.list.parallel.factor

30

List相关配置,控制并发因子参数。

fs.obs.paging.maximum

1000

List相关配置,单次OBS List请求最多返回的对象个数,最大值为1000。

fs.obs.copy.threads.max

40

对象桶rename相关配置,对象桶rename目录时copy线程池配置参数maximumPoolSize,corePoolSize的值为此参数的一半,BlockingQueue的容量为1024。

fs.obs.copypart.size

104857600

对象桶rename相关配置,单个对象copy时当对象的大小超过了此参数值则进行多段copy,且段大小为此参数值;否则进行简单copy。

fs.obs.copypart.threads.max

5368709120

对象桶rename相关配置,单个对象copy时如果进行了多段copy,多段copy线程池配置参数maximumPoolSize,corePoolSize的值为此参数的一半,BlockingQueue的容量为1024。

fs.obs.getcanonicalservicename.enable

FALSE

控制getCanonicalServiceName()接口的返回值。

  • TRUE:obs://bucketname
  • FALSE:null

fs.obs.multipart.purge

FALSE

初始化OBSFilesystem时是否清理桶内的多段上传任务。

fs.obs.multipart.purge.age

86400

初始化OBSFilesystem时清理桶内多久之前的多段上传任务。

fs.obs.trash.enable

FALSE

是否开启垃圾回收功能。

fs.obs.trash.dir

垃圾回收目录。

fs.obs.block.size

134217728

块大小。

support.huaweicloud.com/bestpractice-obs/obs_05_1507.html