Hadoop官网翻译 【FileSystem/PathCapabilities/FSDataOutputStreamBuilder】

说明

PathCapabiliy提供了以编程的方式查询FileSystem,FileContext或者其他实现类的实例在给定路径下提供的操作方法。

  • 允许callers不构建文件系统,就可以探测
  • 允许不同的文件系统公开语义的基本差异

可用功能

  • 基本的功能使用前缀 fs.capability
  • 独立的文件系统使用 fs.the filesystem scheme + .capability.
    如果调用失败的话,原因肯能是多个
    1.cpapbility未知
    2.capability不可用
    3.local class不知道是否在路径上可用
    实际上第三点不太容易达成,比如说路径,比如说权限等,都可能造成检测成功,但是实际调用失败。
fs.hasCapabilities(root,"fs.capability.append") == true

FSDataOutputStreamBuilder

FsDataOutputStreamBuilder用来在FileSystem上创建新文件或打开现有的文件进行写操作。

构造器模式

  • create
    用来创建文件
  • append
  • overwrite
  • permission
  • bufferSize
    设置可用的buffer大小
  • replication
  • blocksize
  • recurive
    是否递归创建
  • progress
  • checksumOpt
  • opt
    客户端指定可选参数
  • must
    客户端指定强制参数
  • builder

HDFSDataOutputStreamBuilder

HDFSDataOutputStreamBuilder扩展FSDataOutputStreamBuilder提供了额外的HDFS参数,用于进一步定制文件创建/追加行为。

  • favoredNodes
  • syncBlock
    强制close同步文件
  • newBlock
    创建一个新的块,而不是追加到上一个块结束
  • noLocalWrite

S3A自定义选项

  • fs.s3a.create.performance
    创建的优先级优先于一致性安全检查
  • fs.s3a.create.header
    用户自定义header

你可能感兴趣的:(大数据,Hadoop,hadoop,大数据,分布式)