From b845813e6fb64e6f38cdc30919128a67bdae8b69 Mon Sep 17 00:00:00 2001 From: wuwenchi Date: Mon, 23 Dec 2024 10:25:34 +0800 Subject: [PATCH] [opt](fs)add local file support for 2.1 (#45632) (#45702) bp: #45632 --- .../apache/doris/datasource/property/PropertyConverter.java | 3 +++ .../src/main/java/org/apache/doris/fs/FileSystemFactory.java | 1 + 2 files changed, 4 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/property/PropertyConverter.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/property/PropertyConverter.java index b8e1550eca..5a37833695 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/property/PropertyConverter.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/property/PropertyConverter.java @@ -38,6 +38,7 @@ import com.aliyun.datalake.metastore.common.DataLakeConfig; import com.amazonaws.glue.catalog.util.AWSGlueConfig; import com.google.common.base.Strings; import com.google.common.collect.Maps; +import org.apache.hadoop.fs.LocalFileSystem; import org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem; import org.apache.hadoop.fs.s3a.Constants; import org.apache.hadoop.fs.s3a.S3AFileSystem; @@ -182,6 +183,8 @@ public class PropertyConverter { public static String getHadoopFSImplByScheme(String fsScheme) { if (fsScheme.equalsIgnoreCase("obs")) { return ObsProperties.HadoopFsObsConstants.HADOOP_FS_OBS_CLASS_NAME; + } else if (fsScheme.equalsIgnoreCase("file")) { + return LocalFileSystem.class.getName(); } else if (fsScheme.equalsIgnoreCase("oss")) { return AliyunOSSFileSystem.class.getName(); } else if (fsScheme.equalsIgnoreCase("cosn") || fsScheme.equalsIgnoreCase("lakefs")) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/fs/FileSystemFactory.java b/fe/fe-core/src/main/java/org/apache/doris/fs/FileSystemFactory.java index cd7212c8e3..daa8f7e51c 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/fs/FileSystemFactory.java +++ b/fe/fe-core/src/main/java/org/apache/doris/fs/FileSystemFactory.java @@ -55,6 +55,7 @@ public class FileSystemFactory { switch (type) { case S3: return new S3FileSystem(properties); + case FILE: case DFS: return new DFSFileSystem(properties); case OFS: