Flink支持的文件系统

由于Flink中包含了很多和文件系统交互的方式,比如文件相关的连接器,以及将检查点也可以被保存在文件系统中

那么Flink中默认支持的文件系统基本如下,比如HDFS,S3,NFS等

对于这些不同的文件系统,区分的方式是通过文件路径前面提供的scheme来区分

比如file://xxxx 指的是本地文件系统, hdfs://xxxx:5000/xxxx指的是HDFS集群中的文件

Flink中,不同的文件系统都是交由FileSystem中的一个实现类来表示的,接口提供了文件的基本操作,包括读写等.

Flink为提供的文件系统有:

1.     本地文件系统

Flink内部支持了本地文件系统,还包括本地挂在的网络文件系统,这都无需额外配置

2.     HDFS

Flink支持了HDFS协议,使用方式就是以hdfs://开头

3.     S3

Flink提供了S3相关的文件系统配置,协议是s3://

4.     Swift FS

支持Apache Hadoop Swift FS的连接器,协议为swift://

其次是文件系统相关的配置项,

比如我们可以指定一个通用的前缀,利用fs.default-scheme配置项

可以指定fs.default-scheme:hdfs://nnodel:9000

这样我们使用一个/result路径的时候就会被扩充为 hdfs://nnodel:9000/result

其次是可以限制文件系统的连接数,为每个URI协议单独定义

图片

与之配套的还有控制连接请求失败之前的等待时间  fs.<scheme>.limit.timeout

空闲连接关闭的等待时间 fs.<scheme>.limit.stream-timeout

发表评论

邮箱地址不会被公开。 必填项已用*标注